Backend API for the DevCamper application to manage bootcamps, courses, reviwes, users and authentification
Bootcamps CRUD functionality
Fetch all bootcamps from datbase. Includes pagination, filtering,
etc.
Get single bootcamp by ID
Add new bootcamp to database. Must be authenticated and must be
publisher or admin.
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Update single bootcamp in databbase
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Delete bootcamp from database
Get bootcamps within a radius of a specific zipcode
Route to upload bootcamp photo
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
| Key | Value | Description |
|---|---|---|
| file |
Creare, read, update and delete courses
Get all courses in database
Get the specific courses for a bootcamp
Get single course by its ID
Create a course for a specific bootcamp
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Update course in database
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Remove course from database
Routes for user authentication including register, login, reset password and etc.
Add user to databse with encrypted password
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Generate password token and send email
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Reset user password using token
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Update logged in user name and email
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Update logged in user password, send in the body currentPassword and
newPassword
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Clear token cookie
CRUD functionality for users only available to admins
Get all users (admin)
Get single user by id (admin)
Add user to database (admin)
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Update user in database (admin)
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Delete user from database (admin)
Manage course reviews
Get all reviews from database and populate with bootcamp name and
description
Fetch the reviews for a specific bootcamp
Fetch a review from database by id and populate Bootcamp name and
description
Insert review for a specific bootcamp
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Update user review
| Key | Value | Description |
|---|---|---|
| Content-Type | application/json |
JSON Type |
Delete review from database