Logo SOAR

Listagem de Usuários

Descrição

Retorna uma lista paginada de usuários cadastrados no sistema, com informações básicas como nome, e-mail, papel (role) e data de criação. Opcionalmente, permite filtrar usuários por role_name (ex: role_name=Practitioner para listar apenas Practitioners). Retorna 12 registros por página por padrão. Os dados são filtrados automaticamente baseado no role do usuário autenticado.

Verbo

GET

URL Base

https://api.soargi.com

Endpoint

/users?page=1&limit=12&role_name=Practitioner

Cabeçalhos

Parâmetro Valor
Authorization Bearer Token

Parâmetros de Consulta

Parâmetro Tipo Obrigatório Descrição
page integer Não Número da página. Padrão: 1.
limit integer Não Quantidade de registros por página. Padrão: 12.
role_name string Não Filtro por nome da role (ex: Admin, Guest, Individual, Institutional, Master Practitioner, Partner, Practitioner, Super Admin).

Respostas

Sucesso - 200

{
  "success": true,
  "message": "Users retrieved successfully.",
  "page": 1,
  "limit": 12,
  "total": 2,
  "data": [
    {
      "user_id": "1",
      "first_name": "John",
      "middle_name": "",
      "last_name": "Doe",
      "email": "john.doe@example.com",
      "phone_number": "11999999999",
      "language": "en-US",
      "country": "USA",
      "state": "CA",
      "city": "San Francisco",
      "address": "123 Market St",
      "postal_code": "94103",
      "sms_notification": "1",
      "avatarUrl": null,
      "practitioner_name": "Antonio Andrade",
      "created_at": "2025-04-23 18:19:22",
      "updated_at": "2025-04-23 18:19:22",
      "role": {
        "role_id": "3",
        "role_name": "Individual"
      }
    },
    {
      "user_id": "2",
      "first_name": "Maria",
      "middle_name": "Clara",
      "last_name": "Fernandes",
      "email": "maria.fernandes@example.com",
      "phone_number": "61988888888",
      "language": "pt-br",
      "country": "Brasil",
      "state": "SP",
      "city": "São Paulo",
      "address": "Rua das Flores, 456",
      "postal_code": "01310-000",
      "sms_notification": "0",
      "avatarUrl": null,
      "practitioner_name": "",
      "created_at": "2025-04-23 10:45:00",
      "updated_at": "2025-04-23 10:45:00",
      "role": {
        "role_id": "3",
        "role_name": "Individual"
      }
    }
  ]
}

Erro - 401 (Token inválido)

{
  "status": 401,
  "error": "Invalid or expired token."
}

Erro - 403 (Sem permissão)

{
  "status": 403,
  "error": "You are not allowed to view users."
}

Erro - 404 (Nenhum usuário encontrado)

{
  "success": false,
  "message": "No users found."
}

Códigos de Resposta

  • 200 - Lista de usuários retornada com sucesso
  • 401 - Token inválido ou expirado
  • 403 - Sem permissão para visualizar usuários
  • 404 - Nenhum usuário encontrado

Controle de Acesso por Role

  • Individual: Bloqueado (não pode visualizar outros usuários)
  • Practitioner/Master Practitioner/Institutional: Ve apenas seus próprios dados e usuários vinculados (parent_id)
  • Admin/Super Admin: Ve todos os usuários do sistema

Observações

  • É necessário estar autenticado para acessar este endpoint.
  • Os dados são filtrados automaticamente baseado no role do usuário.
  • Usuários do tipo Individual não têm permissão para acessar este endpoint.
  • A paginação padrão retorna 12 registros por página.
  • O campo available_assessments mostra a quantidade de avaliações pendentes do usuário.
  • O filtro role_name pode ser combinado com a paginação.
  • Os usuários são ordenados por data de criação (mais recentes primeiro).