...
| URL | /api/users | ||||||||||
| Description | Create a new user | ||||||||||
| Method | PUT | ||||||||||
| Content-type | application/json | ||||||||||
| Url Param | --- | ||||||||||
| Request Body Data | { email: xxx, firstName: xxx, lastName: xxx, surveyData: xxx } | ||||||||||
| Response |
| ||||||||||
| Cookie | --- |
...
| URL | /api/auth | ||||||||||
| Description | User login | ||||||||||
| Method | POST | ||||||||||
| Content-type | application/json | ||||||||||
| Url Param | -- | ||||||||||
| Request Body Data | { email: xxx, password: xxx, firstName: xxx, lastName: xxx } | ||||||||||
| Response |
| ||||||||||
| Cookie | --- |
...
| URL | /api/users/<email>/resetpassword | ||||||||
| Description | Reset password with given new password | ||||||||
| Method | POST | ||||||||
| Url Param | email: email for the user to reset password | ||||||||
| Request Body Data | { password: xxx } Note: password field takes the new password to be reset, not the old password. | ||||||||
| Response |
| ||||||||
| Cookie | --- |
...
| URL | /api/samples/ |
| Description | GET: Fetching all samples created from a user PUT: Inserting a new sample Fetching multiple Samples at the same time or Inserting a Sample.[Poop Sample Response] |
| Header | API_KEY, Authorization |
| Content-type | multipart/form-data |
| Method | PUT | GET |
| Url Param | -- |
| Request Body Data | GET --- PUT sampleData: { sampleBarcodeID: xxx, milkBarcodeID:xxx, surveyData: {...} }, image: xxx } Note: SampleData should send as form-data text, and the image should be form-data file. |
| Response | PUT
|
| Header | API_KEY, Authorization |
| Method | GET |
| Url Param | sample_id=[string] |
| Request Body Data | PUT Note: SampleData should send as form-data text, and the image should be form-data file. |
| { message: ”No such sample exists” } 404: Resource Not FoundURL | /api/sample/<barcode_id> |
| Description | Fetching a Specific Sample Responsespecific sample with barcode id |
| Header | API_KEY, Authorization |
| Method | GET |
| Url Param | barcode_id=[string]<barcode_id> : ID for the sample to update (string) |
| Request Body Data | -- |
| Response | { sample: { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx } } { message: ”sample id is invalid” }
|
...
| URL | /api/sample/<barcode_id>/image |
| Description | Fetching the image of a Specific Sample Responsespecific sample |
| Header | API_KEY, Authorization |
| Method | GET |
| Url Param | barcode_id=[string]<barcode_id> : ID for the sample to update (string) |
| Request Body Data | -- |
| Response | image/png 200:Succeed { message: ”This user does not have access to this sample data” } |
...
| URL | /api/sample/count_this_week |
| Description | Return the total number the user uploaded this week |
| Header | API_KEY, Authorization |
| Method | GET |
| Url Param | |
| Request Body Data | -- |
| Response | { "sampleCount": int } - 200 |
| URL | /api/sample/ |
| <barcode_id>/updatesurvey | |
| Description | Update survey for the given sample id |
| Content-Type | multipart/form-data |
| Header | API_KEY, Authorization |
| Method |
| PUT |
| Url Param |
<barcode_id> : ID for the sample to update (string) | |
| Request Body Data | surveyData: list of new survey data |
| Response | {message: "Bad request: no survey data to update"} - 404 {message: "sample id is invalid"} - 400 {message: "successfully updated survey data"} - 200 |
| URL | /api/sample/count_total |
| Description | Return the total number of samples the user uploaded |
| Header | API_KEY, Authorization |
| Method | GET |
| Url Param | -- |
| Request Body Data | -- |
| Response | { "sampleCount": int } - 200 |
...