| ... | ... | @@ -21,16 +21,18 @@ Envios para o back podem ser de três tipos, não se limitando a usar somente um | 
|  |  |  | 
|  |  | ## Sumário | 
|  |  |  | 
|  |  | - [Login](#login) | 
|  |  | - [Autenticação](#auth) | 
|  |  | - [Students](#students) | 
|  |  | - [Teachers](#teachers) | 
|  |  | - [Degrees](#degrees) | 
|  |  | - [Genders](#genders) | 
|  |  | - [Projects](#projects) | 
|  |  | - [Opportunities](#opportunities) | 
|  |  | - [Courses](#courses) | 
|  |  | - [Experiences](#experiences) | 
|  |  |  | 
|  |  | --- | 
|  |  | <a name="login"></a> | 
|  |  | <a name="auth"></a> | 
|  |  | ### POST /login/ | 
|  |  |  | 
|  |  | #### Params: | 
| ... | ... | @@ -49,7 +51,17 @@ Nenhuma query string esperada | 
|  |  | ``` | 
|  |  |  | 
|  |  | #### Responses: | 
|  |  | - 204: NO_CONTENT | 
|  |  |  | 
|  |  | - 200: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 200, | 
|  |  | msg: "Success", | 
|  |  | user: { | 
|  |  | id: 1 | 
|  |  | } | 
|  |  | } | 
|  |  | ``` | 
|  |  |  | 
|  |  | - 400: | 
|  |  | ``` | 
| ... | ... | @@ -91,6 +103,37 @@ Nenhuma query string esperada | 
|  |  | } | 
|  |  | ``` | 
|  |  | --- | 
|  |  |  | 
|  |  | ### POST /logoff/ | 
|  |  |  | 
|  |  | #### Params: | 
|  |  | Nenhum parâmetro esperado | 
|  |  |  | 
|  |  | #### Query string: | 
|  |  | Nenhuma query string esperada | 
|  |  |  | 
|  |  | #### Payload: | 
|  |  | Nenhum payload esperado | 
|  |  |  | 
|  |  | #### Responses: | 
|  |  |  | 
|  |  | - 204: NO_CONTENT | 
|  |  |  | 
|  |  | - 500 | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 500, | 
|  |  | msg: "Internal error occurred", | 
|  |  | errors: [ | 
|  |  | { | 
|  |  | value: Any, | 
|  |  | msg: "str" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  | --- | 
|  |  |  | 
|  |  | <a name="students"></a> | 
|  |  | ### GET /students/ | 
|  |  |  | 
| ... | ... | @@ -755,6 +798,95 @@ Nenhum payload esperado | 
|  |  |  | 
|  |  | --- | 
|  |  |  | 
|  |  | ### POST /projects/ | 
|  |  |  | 
|  |  | ### Params | 
|  |  |  | 
|  |  | Nenhum parâmetro esperado | 
|  |  |  | 
|  |  | ### Query string | 
|  |  |  | 
|  |  | Nenhuma query string esperada | 
|  |  |  | 
|  |  | ### Payload | 
|  |  |  | 
|  |  | { | 
|  |  | name: "titulo", | 
|  |  | teacherId: 1, | 
|  |  | description: "descricao", | 
|  |  | opportunities: [ | 
|  |  | { | 
|  |  | name: "nome vaga", | 
|  |  | description: "desc vaga" | 
|  |  | }, | 
|  |  | { | 
|  |  | name: "nome 2", | 
|  |  | description: "desc 2" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  |  | 
|  |  | ``` | 
|  |  | ### Responses | 
|  |  |  | 
|  |  | - 201: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 201, | 
|  |  | msg: "Success", | 
|  |  | project: { | 
|  |  | id: 1, | 
|  |  | name: "Projeto Javascript", | 
|  |  | description: "Descrição do projeto Projeto Javascript", | 
|  |  | open: true, | 
|  |  | teacherUserId: 1, | 
|  |  | opportunities: [ | 
|  |  | { | 
|  |  | id: 1, | 
|  |  | name: "nome vaga", | 
|  |  | description: "desc vaga", | 
|  |  | open: true | 
|  |  | }, | 
|  |  | { | 
|  |  | id: 2, | 
|  |  | name: "nome 2", | 
|  |  | description: "desc 2", | 
|  |  | open: true | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | } | 
|  |  | ``` | 
|  |  |  | 
|  |  | - 422: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 422, | 
|  |  | msg: "Bad request", | 
|  |  | errors: [ | 
|  |  | { | 
|  |  | value: "string", | 
|  |  | msg: "Invalid value" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  | - 500: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 500, | 
|  |  | msg: "Internal error occurred", | 
|  |  | errors: [ | 
|  |  | { | 
|  |  | value: Any, | 
|  |  | msg: "str" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  |  | 
|  |  | --- | 
|  |  |  | 
|  |  | ### GET /projects/{id}/ | 
|  |  |  | 
|  |  | ### Params | 
| ... | ... | @@ -1144,35 +1276,132 @@ Nenhum payload esperado | 
|  |  | ``` | 
|  |  |  | 
|  |  | --- | 
|  |  | <a name="courses"></a> | 
|  |  |  | 
|  |  |  | 
|  |  | ### POST /projects/ | 
|  |  | ### GET /courses/ | 
|  |  |  | 
|  |  | ### Params | 
|  |  | Nenhum parâmetro esperado | 
|  |  |  | 
|  |  | Cadastra um projeto (e suas experiencias) | 
|  |  | ### Query string | 
|  |  |  | 
|  |  | Nenhuma query string esperada | 
|  |  |  | 
|  |  | ### Payload | 
|  |  |  | 
|  |  | Nenhum payload esperado | 
|  |  |  | 
|  |  | ### Responses | 
|  |  |  | 
|  |  | - 200: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 200, | 
|  |  | msg: "Success", | 
|  |  | courses: [ | 
|  |  | { | 
|  |  | id: 1, | 
|  |  | name: "Engenharia de Software" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  |  | 
|  |  | - 500: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 500, | 
|  |  | msg: "Internal error occurred", | 
|  |  | errors: [ | 
|  |  | { | 
|  |  | value: Any, | 
|  |  | msg: "str" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  | --- | 
|  |  | <a name="experiences"></a> | 
|  |  |  | 
|  |  | ### GET /experiences/ | 
|  |  |  | 
|  |  | ### Params | 
|  |  | Nenhum parâmetro esperado | 
|  |  |  | 
|  |  | ### Query string | 
|  |  | - userId: id do usuário que se deseja recuperar as experiências | 
|  |  |  | 
|  |  | ### Payload | 
|  |  | Nenhum payload esperado | 
|  |  |  | 
|  |  | ### Responses | 
|  |  |  | 
|  |  | - 200: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 200, | 
|  |  | msg: "Success", | 
|  |  | experiences: [ | 
|  |  | { | 
|  |  | id: 1, | 
|  |  | title: "Matador de ratos", | 
|  |  | description: "Trabalhei dentro do laboratório da PUCRS como matador de ratos" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  |  | 
|  |  | - 500: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 500, | 
|  |  | msg: "Internal error occurred", | 
|  |  | errors: [ | 
|  |  | { | 
|  |  | value: Any, | 
|  |  | msg: "str" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  | --- | 
|  |  | ### GET /experiences/{id} | 
|  |  |  | 
|  |  | ### Params | 
|  |  | - id: Id da experiencia que se deseja buscar | 
|  |  |  | 
|  |  | ### Query string | 
|  |  | Nenhuma query string esperada | 
|  |  |  | 
|  |  | ### Payload | 
|  |  | Nenhum payload esperado | 
|  |  |  | 
|  |  | { | 
|  |  | "name": "titulo", | 
|  |  | "teacherId": 1, | 
|  |  | "description": "descricao", | 
|  |  | "opportunities": [ | 
|  |  | { | 
|  |  | "name": "nome vaga", | 
|  |  | "description": "desc vaga" | 
|  |  | }, | 
|  |  | { | 
|  |  | "name": "nome 2", | 
|  |  | "description": "desc 2" | 
|  |  | ### Responses | 
|  |  |  | 
|  |  | - 200: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 200, | 
|  |  | msg: "Success", | 
|  |  | experience: { | 
|  |  | id: 1, | 
|  |  | title: "Matador de ratos", | 
|  |  | description: "Trabalhei dentro do laboratório da PUCRS como matador de ratos" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | } | 
|  |  | ``` | 
|  |  |  | 
|  |  | ``` | 
|  |  | ### Responses | 
|  |  | - 500: | 
|  |  | ``` | 
|  |  | { | 
|  |  | status: 500, | 
|  |  | msg: "Internal error occurred", | 
|  |  | errors: [ | 
|  |  | { | 
|  |  | value: Any, | 
|  |  | msg: "str" | 
|  |  | } | 
|  |  | ] | 
|  |  | } | 
|  |  | ``` | 
|  |  | --- | 
|  |  | \ No newline at end of file |