...
Private WebUI Service
Endpoint:
POST /organization/case
(https://pathcheck.atlassian.net/wiki/spaces/SA/pages/73924822/SPL + API + Specification + v1 +For+MVP1#confirmed%3A--POST-%2Forganization%2Fcase(For MVP1) )Write to Private DB
Access Code Creation
Contact tracer creates an access code which can be used by the SafePlaces mobile app to upload points of concern. At the time of writing there is no UI design for initiating access code creation manually, so for now the web UI will create and display an access code automatically after creating the case. The token code is generated according to SPL Token Exchange, and only exists for 1 hour. The contact tracer communicates this code to the user verbally over the phone.
Private WebUI Service
Endpoint:
POST /access-code
(
(SPL API Specification v1 (For MVP1))Status colour Red title NEEDS SPEC Write to Ingest/Upload DB
...
Ingest/Upload Service
Endpoint:
GET POST /access-code/valid
(https://pathcheck.atlassian.net/wiki/spaces/SA/pages/73924822/SPL+API+Specification+v1+For+MVP1#GET-%2Faccess-code%2Fvalid%2F%7BaccessCode%7D )Read from Ingest/Upload DB
...
User data (points of concern) are posted to the endpoint along with the accessCode
. Validation on the accessCode
occurs once more and then we persist the provided data, as well as persisting the access code used for upload. The upload response contains a unique uploadId
that can be subsequently be used to delete the uploaded data. The access code is invalidated upon success.
...
The SafePlaces frontend application will be polling GET /points
(
Status | ||||
---|---|---|---|---|
|
POST /case/points/ingest
(SPL API Specification v1 (For MVP1) ), providing both the accessCode
and the caseId
. Repeated calls may be made until a terminal status is reached:If the access code is invalid, an appropriate error status code is returned and the upload is aborted.
If the user declined the ToS, an appropriate error status code is returned
...
and the upload is aborted.
If upload has completed successfully, the endpoint returns the points of concern that were uploaded from the SafePaths app
...
for the given access token.
On the backend, the points will have been saved to the Private DB, and interaction with the Ingest/Upload DB is complete for this case.
Private WebUI Service
Read from Ingest/Upload DB
The frontend application then makes a call to POST /cases/points
(
Status | ||||
---|---|---|---|---|
|
caseId
. Private WebUI Service
Write to Private DB
Displaying Points for the Case
...