POST child body fat - ocariot/api-gateway GitHub Wiki
Description
Register a new body fat measurement and associate it to a Child.
Permissions:
-
Application users can register a Body Fat for any Child as long as it exists.
-
A Child can register a Body Fat just for herself.
-
An Educator can register a Body Fat for any Child who exists and belongs to one of their groups.
-
A Family user can register a Body Fat for any Child who exists and is associated with it.
Scope
measurements:create
URL
Parameters
child_id: string (A 24-byte hex ID)
Request body
{
"timestamp": "2019-06-20T14:40:00Z",
"value": 20.7
}
Curl example
curl -X POST "https://localhost/v1/children/5a62be07d6f33400146c9b61/bodyfats" -H "accept: application/json" -H "Authorization: Bearer YOUR_ACCESS_TOKEN" -H "Content-Type: application/json" -d "{"timestamp":"2019-06-20T14:40:00Z","value":20.2}"
Response body
-
201
Body Fat measurement saved sucessfully.{ "id": "5db71469fce8d130bf48a9db", "timestamp": "2019-06-20T14:40:00.000Z", "value": 20.7, "unit": "%", "child_id": "5a62be07d6f33400146c9b61" }
-
207
Successful request, however, can have several status codes for the case of a list of submitted body fat records.{ "success": [ { "code": 201, "item": { "id": "5db71469fce8d130bf48a9db", "timestamp": "2019-06-20T14:40:00.000Z", "value": 20.7, "unit": "%", "child_id": "5a62be07d6f33400146c9b61" } } ], "error": [ { "code": 409, "message": "Body Fat is already registered...", "item": { "timestamp": "2019-06-21T14:40:00.000Z", "value": 19.1, "unit": "%", "child_id": "5a76cf29e7b22311257d8c72" } } ] }
-
400
Validation errors-
- Example
{ "code": 400, "message": "Required fields were not provided...", "description": "timestamp, value are required!" }
- Example
-
- Example
{ "code": 400, "message": "One or more request fields are invalid...", "description": "value can't be negative!" }
- Example
-
- Example
{ "code": 400, "message": "One or more request fields are invalid...", "description": "value must be a valid number!" }
- Example
-
403
Permission Error -
409
Conflict Error