DevMaGa API

Backend API for the DevMaga application to manage bootcamps, courses, reviews, users and authentication. This API has been made following a Udemy Course.

Bootcamps 7

Some of the actions you can perform are: get all bootcamps, single bootcamp, create a new bootcamp, update an existing bootcamp or delete an existing bootcamp.

Description

Get details of all bootcamps.

Description

Get details of a single bootcamp.

Description

Get details of bootcamps within a radius and a postal code.

Description

Create a new bootcamp. You must be authorized.

Headers
Key Value Description
Content-Type application/json
Body
{ "name": "CodeMasters Bootcamp", "description": "CodeMasters Botocamp Description", "website": "www.codemastersboot.com", "phone": "666-666-666", "email": "codemasters@mail.com", "address": "45 Avenue Prest", "careers": [], "housing": false, "jobAssistance": true, "jobGuarantee": true, "acceptGi": true, "averageCost": 1000 }
Description

Update an existing bootcamp. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "name" : "Testing Bootcamp", "housing" : false }
Description

Delete an existing bootcamp. You must be authorized.

Description

Upload a photo for an existing bootcamp. You must be authorized.

Body
Key Value Description
file

Courses 6

Some of the actions you can perform are: get all courses, get all courses from a bootcamp, single course, create a new bootcamp course, update an existing bootcamp course or delete an existing bootcamp course.

Description

Get all courses.

Description

Get a single course.

Description

Get all courses from a bootcamp.

Description

Create a new course in a specified bootcamp. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "title": "UI/UX 211", "description": "In this course you will learn to create beautiful interfaces. It is a mix of design and development to create modern user experiences on both web and mobile", "weeks": 12, "tuition": 17000, "minimumSkill": "intermediate", "scholarhipsAvailable": true }
Description

Update an existing bootcamp course. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "minimumSkill" : "beginner", "scholarshipAvailable" : true }
Description

Delete an existing bootcamp course. You must be authorized.

Reviews 6

Some of the actions you can perform are: get all reviews, get all reviews from a bootcamp, single review, create a new review, update an existing review or delete an existing review.

Description

Get all reviews.

Description

Get a single review.

Description

Get all reviews from a bootcamp.

Description

Create a new review for a bootcamp. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "title" : "Cool Bootcamp", "text": "I learned a lot data", "rating" : 9 }
Description

Update an existing review. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "title": "Changed title 1" }
Description

Delete an existing review. You must be authorized.

Authentication 8

Some of the actions you can perform are: register an user, login and logout, get actual user logged in, reset password, update user details and update password.

Description

Register a new user.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "name": "Mary Smith", "email": "mary@gmail.com", "role": "user", "password": "123456" }
Description

Get the actual user logged in.

Headers
Key Value Description
Content-Type application/json

JSON Type

Description

Login.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "email": {"gt" : ""}, "password": "123456" }
Description

Logout. You must be authorized.

Description

Update user details. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "email" : "john@gmail.com" }
Description

Update password. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "currentPassword" : "123456", "newPassword" : "1234567" }
Description

Receives a link to reset password.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "email" : "sasha@gmail.com" }
Description

Reset password.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "password" : "1234567" }

Users 5

Some of the actions you can perform are: get all users, get a single user, create a new user, update an existing user and delete an existing user.

Description

Get all users. You must be authorized.

Description

Get a single user. You must be authorized.

Description

Create a new user. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "name" : "Miguel Angel 1", "email" : "mangel@gmail.com", "role" : "user", "password" : "123456" }
Description

Update an existing user. You must be authorized.

Headers
Key Value Description
Content-Type application/json

JSON Type

Body
{ "name" : "Mangel" }
Description

Delete an existing user. You must be authorized.