Get all users
Get a list of all users saved in the database
URL: /api/users/
Method: GET
Token required: YES
Success Response:
- Status Code:
200 OK
Example Content
[
{
"id": "5c1529fd5069560a28ffe082",
"username": "tester11",
"email": "tester11@gmail.com",
"subscribed": false
},
{
"id": "5c152aab31f556495097b93c",
"username": "tester13",
"email": "tester13@gmail.com",
"subscribed": false
},
{
"id": "5c153ac8ef78d128fa68dc4c",
"username": "MegaMans",
"email": "megazord28@gmail.com",
"subscribed": false
}
]
Create a new user
Creates a new user in the database.
**Note**: Not for use by the frontend client. This route is for maintenance and testing purposes only. Use `/api/register` to create new users on frontend
URL: /api/users/
Method: POST
Token required: YES
Required Data Params:
- username -
string
- password -
string
- email -
string
Success Response:
- Status Code:
201 Created
Example Content
{
"id": "5c1529fd5069560a28ffe082",
"username": "tester11",
"email": "tester11@gmail.com",
"subscribed": false
}
Get a single user
Get a single user from the database
URL: /api/users/:id
Method: GET
Token required: YES
Required URL Params:
- id -
ObjectId
Success Response:
- Status Code:
200 OK
Example Content
{
"id": "5c1529fd5069560a28ffe082",
"username": "tester11",
"email": "tester11@gmail.com",
"subscribed": false
}
Update a single user
Returns an updated user from the database
Note: Certain properties are not allowed to be modifed.
- username
- password
- trips
URL: /api/users/:id
Method: PUT
Token required: YES
Required URL Params:
- id -
ObjectId
Success Response:
- Status Code:
200 OK
Example Content
{
"id": "5c1529fd5069560a28ffe082",
"username": "tester11",
"email": "tester11@gmail.com",
"subscribed": false
}
Delete a single user
Returns the deleted user and a confirmation message
URL: /api/users/:id
Method: DELETE
Token required: YES
Required URL Params:
- id -
ObjectId
Success Response:
- Status Code:
202 Accepted
Example Content
{
"user": {
"id": "5c26edfec0bca3dc01855221",
"username": "lkjsadfklj",
"email": "lkj",
"subscribed": false
},
"msg": "User was deleted"
}
Get a user's trips
Returns an array of all Trips associated with user
URL: /api/users/:id/trips
Method: GET
Token required: YES
Required URL Params:
- id -
ObjectId
Success Response:
- Status Code:
200 OK
Example Content
[
{
"id": "5c36d200f9372c0371496eed",
"userId": "5c1529fd5069560a28ffe082",
"name": "TestTrip",
"lat": 234.245,
"lon": 123.34,
"start": "2019-01-10T05:02:12.031Z",
"end": "2019-01-10T05:02:12.031Z",
"isArchived": false,
"inProgress": false,
"waypoints": [
"5c36d200f9372c0371496eed",
"5c36d200f9372c0371496eed",
"5c36d200f9372c0371496eed",
"5c36d200f9372c0371496eed"
]
},
{
"id": "5c36dae34b41701a9cefc9b6",
"userId": "5c1529fd5069560a28ffe082",
"name": "TestTrip2",
"lat": 234.245,
"lon": 123.34,
"start": "2019-01-10T05:02:12.031Z",
"end": "2019-01-10T05:02:12.031Z",
"isArchived": false,
"inProgress": false,
"waypoints": [
"5c36dbd015b9491b9cbdae08",
"5c36dce215b9491b9cbdae09",
"5c36ddc415b9491b9cbdae0d",
"5c36de6515b9491b9cbdae0e"
]
}
]