diff --git a/README.md b/README.md index f2b6eef..ac4f8d8 100644 --- a/README.md +++ b/README.md @@ -125,6 +125,150 @@ Obs: Os demais Branchs (ex: [develop](https://github.com/GuilhermePalma/Makeup_A ### Endpoints do Usuario +
+ ☰ POST: Registrando um Usuario + + - Insere um Usuario no Banco de Dados e Gera um Token + + - Request (**POST**) + - URL ```localhost:porta/api/user/Register``` + - Header + ``` + "Content-Type": "application/json" + ``` + - Body → Instancia de um Usuario + ``` + { + "Name": "Name Test", + "Email": "emailtest@gmeil.com", + "Password": "accountforteste", + "Nickname": "user_test", + "Idioms": "Portugues", + "Theme_is_night": false + } + ``` + + - Response 200 (application/json) + - Body → Token Gerado (JWT) + ``` + { + "token.for.user" + } + ``` + - Possiveis Retorno de Erro: + - Response 404 + - Body → Mensagem de Erro da API (Validação, Dados Inexistentes, Erro na Conexão, etc) + - Ex: Usuario com Idioma não Disponivel + ``` + { + "Idioma não Cadastrado" + } + ``` + +
+ +
+ ☰ GET: Informações do Usuario + + - Obtem o Usuario (sem a Senha) a partir do seu ID e Token (JWT) + + - Request (**GET**) + - URL ```localhost:porta/api/user/Information``` + - Header (Token Abaixo não é Valido, sendo somente um Exemplo) + - Substituir o campo ```this.token.user``` pelo Token (JWT) do Usuario + ``` + "Content-Type": "application/json" + "Authorization": "Bearer this.token.user" + ``` + - Parametros GET + ``` + { + "Id": "4", + } + ``` + + - Response 200 (application/json) + - Body → Usuario + ``` + { + "Id": "4", + "Name": "Name Test", + "Email": "emailtest@gmeil.com", + "Password": null, + "Nickname": "user_test", + "Idioms": "Portugues", + "Theme_is_night": false + } + ``` + - Possiveis Retorno de Erro: + - Response 201 + - Body → Erro em alguma etapa da Autenticação do Token (JWT) + - Ex: Token (JWT) não Informado + ``` + { + "Token não Encontrado" + } + ``` + + - Response 404 + - Body → Mensagem de Erro da API (Validação, Dados Inexistentes, Erro na Conexão, etc) + - Ex: Usuario não Cadastrado + ``` + { + "Usuario não Encontrado no Banco de Dados" + } + ``` + +
+ +
+ ☰ POST: Login do Usuario + + - A partir do Email, Senha e JWT (JSON Web Token) verifica se o Usuario está cadastrado + + - Request (**POST**) + - URL ```localhost:porta/api/user/Login``` + - Header (Token Abaixo não é Valido, sendo somente um Exemplo) + - Substituir o campo ```this.token.user``` pelo Token (JWT) do Usuario + ``` + "Content-Type": "application/json" + "Authorization": "Bearer this.token.user" + ``` + - Body + ``` + { + "Email": "emailtest@gmeil.com", + "Password": "accountforteste" + } + ``` + + - Response 200 (application/json) + - Body → true (Usuario Validado) + ``` + { + true + } + ``` + - Possiveis Retorno de Erro: + - Response 201 + - Body → Erro em alguma etapa da Autenticação do Token (JWT) + - Ex: Não Incluir o "Bearer" no "Authorization" + ``` + { + "Esquema de Autenticação Invalido" + } + ``` + - Response 404 + - Body → Mensagem de Erro da API (Validação, Dados Inexistentes, Erro na Conexão, etc) + - Ex: Email não preenchido + ``` + { + "Campo Email Obrigatorio." + } + ``` + +
+
☰ POST: Geração do JWT (JSON Web Token) @@ -169,178 +313,220 @@ Obs: Os demais Branchs (ex: [develop](https://github.com/GuilhermePalma/Makeup_A
- ☰ POST: Login do Usuario + ☰ PUT: Atualiza Registros de um Usuario - - A partir do Email, Senha e JWT (JSON Web Token) verifica se o Usuario está cadastrado + - Atualiza os seguintes dados de um Usuario no Banco de Dados. + - ```Nome``` + - ```Senha``` + - ```Idioma``` + - ```Tema``` - - Request (**POST**) - - URL ```localhost:porta/api/user/Login``` + - Request (**PUT**) + - URL ```localhost:porta/api/user/Update``` - Header (Token Abaixo não é Valido, sendo somente um Exemplo) - Substituir o campo ```this.token.user``` pelo Token (JWT) do Usuario ``` - "Content-Type": "application/json" - "Authorization": "Bearer this.token.user" + "Content-Type": "application/json" + "Authorization": "Bearer this.token.user" ``` - - Body + - Body → ```Nickname```, ```ID``` e ```Email``` são Fixos, somente altera as Propriedades acima ``` { + "Id": "4", + "Nickname": "user_test", + "Name": "Novo Nome Usuario", "Email": "emailtest@gmeil.com", - "Password": "accountforteste" + "Password": "newaccountforteste", + "Idioms": "Ingles", + "Theme_is_night": true } ``` - Response 200 (application/json) - - Body → true (Usuario Validado) + - Body → Caso seja alterado, retorna True ``` - { - true - } + { + true + } ``` - Possiveis Retorno de Erro: - Response 201 - Body → Erro em alguma etapa da Autenticação do Token (JWT) - - Ex: Não Incluir o "Bearer" no "Authorization" + - Ex: Token (JWT) com dados Invalidos ``` { - "Esquema de Autenticação Invalido" + "Autenticação do Token Invalido" } ``` - Response 404 - Body → Mensagem de Erro da API (Validação, Dados Inexistentes, Erro na Conexão, etc) - - Ex: Email não preenchido + - Ex: Erro na Conexão com o Banco de Dados ``` { - "Campo Email Obrigatorio." + "Não foi possivel iniciar a Conexão com o Banco de Dados" } ```
+
- ☰ GET: Informações do Usuario + ☰ PUT: Atualiza o Email do Usuario - - Obtem o Usuario (sem a Senha) a partir do seu ID e Token (JWT) + - Atualiza apenas o ```Email``` (Nome de Usuario) de um Usuario + > ```Email``` é um dado **Unico**, não podendo haver repetições - - Request (**GET**) - - URL ```localhost:porta/api/user/Information``` + - Request (**PUT**) + - URL ```localhost:porta/api/user/UpdateEmail``` - Header (Token Abaixo não é Valido, sendo somente um Exemplo) - Substituir o campo ```this.token.user``` pelo Token (JWT) do Usuario ``` - "Content-Type": "application/json" - "Authorization": "Bearer this.token.user" + "Content-Type": "application/json" + "Authorization": "Bearer this.token.user" ``` - - Parametros GET + - Body → ```ID``` e ```Password``` são Fixos, somente altera o ```Nickname``` ``` { "Id": "4", + "Password": "accountforteste", + "Email": "newemailtest@gmeil.com" } ``` - Response 200 (application/json) - - Body → Usuario + - Body → Caso seja alterado, retorna um Token (JWT) ``` { - "Id": "4", - "Name": "Name Test", - "Email": "emailtest@gmeil.com", - "Password": null, - "Nickname": "user_test", - "Idioms": "Portugues", - "Theme_is_night": false + "new.token.user" } ``` - Possiveis Retorno de Erro: - Response 201 - Body → Erro em alguma etapa da Autenticação do Token (JWT) - - Ex: Token (JWT) não Informado + - Ex: Não Utilizar o "Bearer" na Frente do Token ``` { - "Token não Encontrado" + "Esquema de Autenticação Invalido" } ``` - - Response 404 - Body → Mensagem de Erro da API (Validação, Dados Inexistentes, Erro na Conexão, etc) - - Ex: Usuario não Cadastrado + - Ex: Email já Cadastrado no Banco de Dados ``` { - "Usuario não Encontrado no Banco de Dados" + "Email já cadastrado no Banco de Dados. Não é possivel ter Emails iguais." } ```
- ☰ POST: Registrando um Usuario + ☰ PUT: Atualiza o Nome de Usuario (Nickname) - - Insere um Usuario no Banco de Dados e Gera um Token + - Atualiza apenas o ```Nickname``` (Nome de Usuario) de um Usuario + > ```Nickname``` (Nome de Usuario) é um dado **Unico**, não podendo haver repetições - - Request (**POST**) - - URL ```localhost:porta/api/user/Register``` - - Header + - Request (**PUT**) + - URL ```localhost:porta/api/user/UpdateNickname``` + - Header (Token Abaixo não é Valido, sendo somente um Exemplo) + - Substituir o campo ```this.token.user``` pelo Token (JWT) do Usuario ``` - "Content-Type": "application/json" + "Content-Type": "application/json" + "Authorization": "Bearer this.token.user" ``` - - Body → Instancia de um Usuario + - Body → ```ID```, ```Email``` e ```Password``` são Fixos, somente altera o ```Nickname``` ``` { - "Name": "Name Test", + "Id": "4", "Email": "emailtest@gmeil.com", "Password": "accountforteste", - "Nickname": "user_test", - "Idioms": "Portugues", - "Theme_is_night": false + "Nickname": "new_nickname_test" } ``` - Response 200 (application/json) - - Body → Token Gerado (JWT) + - Body → Caso seja alterado, retorna um Token (JWT) ``` { - "token.for.user" + "new.token.user" } ``` - Possiveis Retorno de Erro: + - Response 201 + - Body → Erro em alguma etapa da Autenticação do Token (JWT) + - Ex: Token (JWT) não Informado + ``` + { + "Token não Encontrado" + } + ``` - Response 404 - Body → Mensagem de Erro da API (Validação, Dados Inexistentes, Erro na Conexão, etc) - - Ex: Usuario com Idioma não Disponivel + - Ex: Nickname já Cadastrado no Banco de Dados ``` { - "Idioma não Cadastrado" + "Nickname (Nome de Usuario) já existente no Banco de Dados. Nickname não podem ser iguais" } ```
+
+ ☰ DELETE: Exclusão de um Usuario -#### Documentação dos 7 Metodos Restantes em Desenvolvimento :zzz: - + +#### Documentação das Favoritadas em Desenvolvimento :zzz: +