You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

URL for test server: https://on-test.diaper.cf:5001

URL for prod server: https://on-prod.diaper.cf:5001

User Creation APIs

 

URL/api/users
DescriptionCreate a new user
MethodPUT
Url Param---
Request Body Data
{
email: xxx,
firstName: xxx,
lastName: xxx
}
Response
Response BodyCode

{

message: "Password set email has been sent."

}

200

{

message: "Malformatted JSON"

}

400

{

message: "There was a problem sending the password set email. Please try again later."

}

500

{

message: "User already exists!"

}

500
Cookie---

 

User Authentication APIs

URL/api/version
DescriptionShow API Version
MethodGET
Url Param--
Request Body Data

--

Response

{version: "xxx"} - 200

Cookie

--

 

 

URL/api/auth
DescriptionUser login
MethodPOST
Url Param--
Request Body Data
{
email: xxx,
password: xxx,
firstName: xxx,
lastName: xxx
}
Response
Response BodyCode

{

loginResponseType: “loginResponseTypeSuccess”,

message: "User successfully authenticated.",

accessToken: xxx,

email: xxx,

firstName: xxx,

lastName: xxx

}

201

{

loginResponseType: "loginResponseTypeInvalidPassword",

message: "Failed login",

displayMessage: "Incorrect email or password."

}

401

{

message: "There was a problem sending the password set email. Please try again later"

}

500

{

loginResponseType: "loginResponseTypePasswordNotSet",

message: "User password has not been set.",

displayMessage: "Please check your email for a link to set your account password."

}

 
Cookie

---

 

 

URL/api/users/<email>/resetpassword
DescriptionReset password with given new password
MethodPOST
Url Paramemail: 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
Response BodyCode

{

message: "Successfully updated password"

}

200

{

message: "Invalid email address provided"

}

400

{

message: "Unauthorized: you do not have access to reset this user's password"

}

401
Cookie---

 

 

URL/api/users/<email>/requestpasswordreset
DescriptionSend password reset email
MethodPOST
Url Paramemail: email for the user to reset password
Request Body Data---
Response
Response BodyCode

{

message: "Password reset email has been sent."

}

200

{

message: "Invalid email address provided"

}

400

{

message: "There was a problem sending the password reset email. Please try again later"

}

500
Cookie---

 

 

URL/api/logout
DescriptionLog out user by deleting the user's access token
MethodDELETE
Url Param---
Request Body Data---
Response
Response BodyCode

{

message: "Successfully logged out"

}

200
Cookie---


Sample APIs

URL/api/samples/
DescriptionFetching multiple Samples at the same time or Inserting a Sample.     [Poop Sample Response]
HeaderAPI_KEY, Authorization
MethodPUT | GET
Url Param

--

Request Body Data

PUT
{ sampleData: xxx, image: xxx}

Note: SampleData should send as form-data text, and the image should be form-data file.

Response

PUT

  • { message: “Sample data recorded!” } - 200: Success
  • { message: "Bad request: no image or sample data" } - 400
  • { message: "Bad request: no sample data"} - 401
  • { message: "Bad request: no barcode ID"} - 402
  • { message: "Bad request: no survey data"} - 403

    GET
    { sampleList: [ { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx },
                              { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx },
                              {}…..{} ] }
    200: Success
    Note[Limit]: Up to 15 samples can be retrieved at max.

 

 

URL/api/samples/
DescriptionFetching multiple Samples at the same time or Inserting a Sample.     [Poop Sample Response]
HeaderAPI_KEY, Authorization
MethodPUT | GET
Url Param

--

Request Body Data

PUT
{ sampleData: xxx, image: xxx}

Note: SampleData should send as form-data text, and the image should be form-data file.

Response

PUT

  • { message: “Sample data recorded!” } - 200: Success
  • { message: "Bad request: no image or sample data" } - 400
  • { message: "Bad request: no sample data"} - 401
  • { message: "Bad request: no barcode ID"} - 402
  • { message: "Bad request: no survey data"} - 403

GET
{ sampleList: [ { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx },
                          { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx },
                          {}…..{} ] }
200: Success
Note[Limit]: Up to 15 samples can be retrieved at max.

 

 

URL/api/samples/
DescriptionFetching multiple Samples at the same time or Inserting a Sample.     [Poop Sample Response]
HeaderAPI_KEY, Authorization
MethodPUT | GET
Url Param

--

Request Body Data

PUT
{ sampleData: xxx, image: xxx}

Note: SampleData should send as form-data text, and the image should be form-data file.

Response

PUT

  • { message: “Sample data recorded!” } - 200: Success
  • { message: "Bad request: no image or sample data" } - 404
  • { message: "Bad request: no sample data"} - 404
  • { message: "Bad request: no barcode ID"} - 404
  • { message: "Bad request: no survey data"} - 404

GET
{ sampleList: [ { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx },
                          { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx },
                          {}…..{} ] }
200: Success
Note[Limit]: Up to 15 samples can be retrieved at max.

 

 

URL/api/sample/<sample_id>
DescriptionFetching the image of a Specific Sample Response
HeaderAPI_KEY, Authorization
MethodGET
Url Param

sample_id=[string]

Request Body Data

PUT
{ sampleData: xxx, image: xxx}

Note: SampleData should send as form-data text, and the image should be form-data file.

Response

{ sample: { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx } }
200: Success

{ message: ”This user does not have access to this sample data” }
403: Unauthorized

{ message: ”No such sample exists” }
404: Resource Not Found

{ message: ”This user does not have access to this sample data” }
403: Unauthorized

{ message: ”No such sample exists” }
404: Resource Not Found

 

 

URL/api/sample/<barcode_id>
DescriptionFetching a Specific Sample Response
HeaderAPI_KEY, Authorization
MethodGET
Url Param

barcode_id=[string]

Request Body Data

--

Response

{ sample: { id: xxx, dateTime: xxx, hasPict: xxx, hasSurvey: xxx, hasContainer: xxx } }
200: Success

{ message: ”This user does not have access to this sample data” }
403: Unauthorized

{ message: ”No such sample exists” }
404: Resource Not Found

 

 

URL/api/sample/<barcode_id>/image
DescriptionFetching the image of a Specific Sample Response
HeaderAPI_KEY, Authorization
MethodGET
Url Param

barcode_id=[string]

Request Body Data

--

Response

{ message: ”This user does not have access to this sample data” }
403: Unauthorized

{ message: ”No such sample exists” }
404: Resource Not Found

 

 

URL/api/sample/count_this_week
DescriptionReturn the total number the user uploaded this week
HeaderAPI_KEY, Authorization
MethodGET
Url Param 
Request Body Data

--

Response

{ "sampleCount": int } - 200

 

 

URL/api/sample/count_total
DescriptionReturn the total number the user uploaded
HeaderAPI_KEY, Authorization
MethodGET
Url Param--
Request Body Data

--

Response

{ "sampleCount": int } - 200

 


  • No labels