You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Change management in government is hard. If, in transitioning between systems, we were to invent a new API, it would represent a huge disruption for many of our partners.
For that reason, we want to minimize, or even eliminate, the change costs for our partners. We'll do that by re-implementing the existing API.
How did we discover this problem?
This problem is inherent in the switch between systems. Users expect our API to exist at a given endpoint, take a certain set of parameters, and produce results in a given shape. We cannot/should not violate that.
Job Story(s)
Calling the api endpoint should return data formatted in the same JSON structure of the current results API.
Note - For purposes of this sub story data is mocked until integrated with database in subsequent work.
What are we planning to do about it?
The goal of the API reimplementation is to faithfully reimplement the Results API.
The goal of this step is to introduce an API service into the stack that would be adequate to the task of being ready for LATO assessment.
This is a read-only API, and is no more or less dangerous than any other HTTP server. (Which is to say...)
We're using standard libraries, and it talks to read-only database files (not a live server). Therefore, we have some confidence that this is a good/secure implementation pathway for API implementation.
Things to consider/address for purposes of security:
The content you are editing has changed. Please copy your edits and refresh the page.
Sub-Task for Implement Results API #33
Problem
Change management in government is hard. If, in transitioning between systems, we were to invent a new API, it would represent a huge disruption for many of our partners.
For that reason, we want to minimize, or even eliminate, the change costs for our partners. We'll do that by re-implementing the existing API.
How did we discover this problem?
This problem is inherent in the switch between systems. Users expect our API to exist at a given endpoint, take a certain set of parameters, and produce results in a given shape. We cannot/should not violate that.
Job Story(s)
Calling the api endpoint should return data formatted in the same JSON structure of the current results API.
Note - For purposes of this sub story data is mocked until integrated with database in subsequent work.
What are we planning to do about it?
The goal of the API reimplementation is to faithfully reimplement the Results API.
The goal of this step is to introduce an API service into the stack that would be adequate to the task of being ready for LATO assessment.
That's it.
What are we not planning to do about it?
Future work include
How will we measure success?
Ready for Pull Request Review When:
Security Considerations
Required per CM-4.
This is a read-only API, and is no more or less dangerous than any other HTTP server. (Which is to say...)
We're using standard libraries, and it talks to read-only database files (not a live server). Therefore, we have some confidence that this is a good/secure implementation pathway for API implementation.
Things to consider/address for purposes of security:
Consider/address
Billion laughs: https://en.wikipedia.org/wiki/Billion_laughs_attack
OWASP Top 10 API risks: https://owasp.org/API-Security/editions/2023/en/0x11-t10/
Various validation libraries
Not intended to be exhaustive
Inspirational articles:
references/resources
The text was updated successfully, but these errors were encountered: