3.0 KiB
API Documentation
Values required in
bold
.
Accounts | account
field | data type | metadata |
---|---|---|
id | unsigned integer | primary key, auto-increments, generated by database |
username | string | required |
string | required | |
password | string | required |
timezone | string | |
earliest_time | string | |
latest_time | string | |
created_at | datetime | generated by database |
Add an account
POST /api/account
Request
A json object for the user to register with username
, email
, password
, timezone
, earliest_time
and latest_time
.
{
"username": "jean,
"email": "jean@example.com",
"password": "really-strong-password",
"timezone": "Europe/Brussels",
"earliest_time":"09:30 AM",
"latest_time":"10:00 PM"
}
Response
A json object for the registered user with id
, username
, email
, timezone
, earliest_time
and latest_time
.
{
"id": 1,
"username": "jean",
"email": "jean@example.com",
"timezone": "Europe/Brussels",
"earliest_time":"09:30 AM",
"latest_time":"10:00 PM"
}
Update an account
PUT /api/account/:id
Request
A json object for the user to register with id
and any of username
, email
, password
, timezone
, earliest_time
, latest_time
.
{
"id": 15,
"earliest_time":"08:30 AM",
"latest_time":"08:00 PM"
}
Response
A json object for the registered user with id
, username
, email
, timezone
, earliest_time
and latest_time
.
{
"id": 1,
"username": "jean",
"email": "jean@example.com",
"timezone": "Europe/Brussels",
"earliest_time":"09:30 AM",
"latest_time":"10:00 PM"
}
Delete an account
DELETE /api/account/:id
Request
A json object for the user to delete with id
.
{
"id": 15
}
Response
A json object for the deleted user with username
and email
.
{
"username": "jean",
"email": "jean@example.com"
}
Log in an account
POST /api/account
Request
A json object for the user to login with either email
or username
, and password
.
{
"username": "jean",
"password": "super-strong-password"
}
Response
A json object with the logged in user with username
and email
.
{
"id": 1,
"username": "jean",
"email": "jean@example.com",
"timezone": "Europe/Brussels",
"earliest_time":"09:30 AM",
"latest_time":"10:00 PM"
}