Skip to main content

Auth Service API

  • POST /admin
    • Roles: ["admin]
    • Payload:

Auth Service API


Administrador

Criar um administrador

  • POST /admin
    • Roles: ["admin"]
    • Payload:
      {
      "name": "<string>",
      "email": "<string>",
      "CPF": "<string>",
      "password": "<string>"
      }
    • Response:
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "CPF": "<string>"
      }

Buscar todos os administradores

  • GET /admin
    • Roles: ["admin"]
    • Response:
      [
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "CPF": "<string>"
      }
      ]

Buscar um administrador pelo CPF

  • GET /admin/:CPF
    • Roles: ["admin"]
    • Response:
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "CPF": "<string>"
      }

Atualizar um administrador

  • PATCH /admin/:CPF
    • Roles: ["admin"]
    • Payload:
      {
      "name": "<string?>",
      "email": "<string?>",
      "CPF": "<string?>",
      "password": "<string?>"
      }
    • Response:
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "CPF": "<string>"
      }

Remover um administrador

  • DELETE /admin/:CPF
    • Roles: ["admin"]

Médico

Criar um médico

  • POST /doctors
    • Roles: ["admin"]
    • Payload:
      {
      "email": "<string>",
      "name": "<string>",
      "telephone": "<string>",
      "birthday": "<string>",
      "CRM": "<string>",
      "specialty": "<string>",
      "password": "<string>",
      "CPF": "<string>"
      }
    • Response:
      {
      "id": <int>,
      "email": "<string>",
      "name": "<string>",
      "telephone": "<string>",
      "birthday": "<string>",
      "CRM": "<string>",
      "specialty": "<string>",
      "CPF": "<string>"
      }

Buscar todos os médicos

  • GET /doctors
    • Roles: ["admin"]
    • Response:
      [
      {
      "id": <int>,
      "email": "<string>",
      "name": "<string>",
      "telephone": "<string>",
      "birthday": "<string>",
      "CRM": "<string>",
      "specialty": "<string>",
      "CPF": "<string>"
      }
      ]

Buscar um médico pelo CRM

  • GET /doctors/:CRM
    • Roles: ["admin"]
    • Response:
      {
      "id": <int>,
      "email": "<string>",
      "name": "<string>",
      "telephone": "<string>",
      "birthday": "<string>",
      "CRM": "<string>",
      "specialty": "<string>",
      "CPF": "<string>"
      }

Atualizar um médico

  • PATCH /doctors/:CRM
    • Roles: ["admin"]
    • Payload:
      {
      "email": "<string?>",
      "name": "<string?>",
      "telephone": "<string?>",
      "birthday": "<string?>",
      "CRM": "<string?>",
      "specialty": "<string?>",
      "password": "<string?>",
      "CPF": "<string?>"
      }
    • Response:
      {
      "id": <int>,
      "email": "<string>",
      "name": "<string>",
      "telephone": "<string>",
      "birthday": "<string>",
      "CRM": "<string>",
      "specialty": "<string>",
      "CPF": "<string>"
      }

Remover um médico

  • DELETE /doctors/:CRM
    • Roles: ["admin"]

Paciente

Criar um paciente

  • POST /patients
    • Roles: ["admin", "doctor"]
    • Payload:
      {
      "name": "<string>",
      "email": "<string>",
      "birthday": "<string>",
      "CPF": "<string>",
      "telephone": "<string>",
      "password": "<string>"
      }
    • Response:
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "birthday": "<string>",
      "CPF": "<string>",
      "telephone": "<string>"
      }

Buscar todos os pacientes

  • GET /patients
    • Response:
      [
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "birthday": "<string>",
      "CPF": "<string>",
      "telephone": "<string>",
      }
      ]

Buscar um paciente pelo CPF

  • GET /patients/:CPF
    • Response:
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "birthday": "<string>",
      "CPF": "<string>",
      "telephone": "<string>",
      }

Atualizar um paciente

  • PATCH /patients/:CPF
    • Roles: ["admin", "doctor"]
    • Payload:
      {
      "name": "<string?>",
      "email": "<string?>",
      "birthday": "<string?>",
      "CPF": "<string?>",
      "telephone": "<string>",
      "password": "<string?>"
      }
    • Response:
      {
      "id": <int>,
      "name": "<string>",
      "email": "<string>",
      "birthday": "<string>",
      "CPF": "<string>",
      "telephone": "<string>",
      }

Remover um paciente

  • DELETE /patients/:CPF
    • Roles: ["admin"]

Login

Realizar login

  • GET /login
    • Payload:
      {
      "CPF": "<string>",
      "password": "<string>"
      }

Reset de Senha

Enviar token de reset de senha

  • POST /password-reset/send-token
    • Payload:
      {
      "email": "<string>",
      "userType": "doctor" | "patient"
      }
    • Response:
      {
      "message": "Token enviado com sucesso."
      }

Resetar senha

  • POST /password-reset/reset-password

    • Payload:
      {
      "email": "<string>",
      "token": "<string>",
      "newPassword": "<string>",
      "userType": "doctor" | "patient"
      }
    • Response:
      {
      "message": "Senha redefinida com sucesso."
      }
  • PATCH /admin/:id'

    • Roles: ["admin]
    • Payload:
        {
    "name": <string?>,
    "email": <string?>,
    "CPF": <string?>,
    "password": <string?>,
    }
  • GET /admin

    • Roles: ["admin"]
    • Response:
        [
    {
    "id": <int>,
    "name": <string>,
    "email": <string>,
    "CPF": <string>,
    }
    ]