Nunciatura Provista

API Documentation V1

Listar Usuários

Retorna uma lista paginada de usuários com seus relacionamentos carregados

Este endpoint é do tipo: Protected

Descrição

Retorna uma lista paginada de usuários administradores do sistema com as seguintes funcionalidades:

  • Inclui apenas usuários com role de administrador
  • Inclui apenas os dados básicos do usuário e role (sem dados do informer)
  • Ordenado por data de criação (created_at) em ordem decrescente
  • Paginação configurável (padrão: 12 usuários por página)
  • Filtros por role, group_id, questionary_status e busca por nome/email
  • Requer autenticação JWT válida

Detalhes do Endpoint

VERBO

GET

URL BASE

http://api.provista.dev.nabrasil.org.br/v1

ENDPOINT

/users

Parâmetros de Query

Campo Tipo Obrigatório Descrição
page integer Não Número da página para paginação (padrão: 1)
per_page integer Não Número de registros por página (padrão: 12)
role string Não Filtrar por role (admin, informador)
group_id uuid Não Filtrar por grupo eclesiástico (UUID)
questionary_status string Não Filtrar por status do questionário (Pendente, Em andamento, Concluído)
search string Não Buscar por nome, sobrenome, email ou nome completo

Cabeçalhos

Parâmetro Valor
Authorization Bearer <token>
Accept application/json

Respostas

Sucesso - 200

{
  "success": true,
  "data": [
    {
      "id": "a022d1ee-3003-4afe-8686-d7aeb5b051c9",
      "first_name": "João",
      "last_name": "Silva",
      "email": "joao.silva@diocese.com.br",
      "img_url": "https://via.placeholder.com/150/28a745/ffffff?text=JS",
      "initials": "JS",
      "email_verified_at": "2025-01-21T17:00:00.000000Z",
      "created_at": "2025-01-21T17:00:00.000000Z",
      "updated_at": "2025-01-21T17:00:00.000000Z",
      "role": {
        "id": 2,
        "name": "Informador",
        "slug": "informador",
        "description": "Usuário informador com acesso limitado aos questionários"
      }
    },
    {
      "id": "b033e2ff-4114-5bgg-9797-e8bfc6c162d0",
      "first_name": "Sergio",
      "last_name": "Borges",
      "email": "sluizborges@gmail.com",
      "img_url": "https://via.placeholder.com/150/28a745/ffffff?text=SB",
      "initials": "SB",
      "email_verified_at": "2025-01-21T17:00:00.000000Z",
      "created_at": "2025-01-21T17:00:00.000000Z",
      "updated_at": "2025-01-21T17:00:00.000000Z",
      "role": {
        "id": 1,
        "name": "Administrador",
        "slug": "admin",
        "description": "Usuário administrador com acesso total ao sistema"
      }
    }
  ],
  "pagination": {
    "current_page": 1,
    "per_page": 12,
    "total": 2,
    "last_page": 1,
    "from": 1,
    "to": 2,
    "has_more_pages": false
  }
}

Nota: Este endpoint retorna apenas os dados básicos do usuário e role, sem incluir informações do informer. Para obter dados completos do informer, use o endpoint específico de detalhes do usuário.

Erro - 401 (Token inválido)

{
  "success": false,
  "message": "Token não fornecido"
}

Condição: Token JWT inválido, expirado ou não fornecido

Códigos de Resposta

Código Descrição
200 Lista de usuários retornada com sucesso
401 Token inválido ou expirado