Nunciatura Provista

API Documentation V1

Intro - Conteúdo por Grupo

Retorna vídeo, parágrafo, informações e telefone por grupo, com dados do informador

Este endpoint é do tipo: Protected

Descrição

Fornece conteúdo introdutório por grupo e inclui o resumo do informador, processo e lista de questionários do processo/grupo selecionado.

Importante: Quando o informador está em múltiplos processos com o mesmo nome de grupo (ex: dois "Grupo 2" em processos diferentes), é necessário informar process_id ou group_id para identificar qual processo/grupo específico deve ser usado. Os questionários retornados serão filtrados pelo processo/grupo selecionado. O campo processes_groups não é retornado quando há filtro, pois o usuário já escolheu o processo/grupo desejado ao clicar no endpoint /cover.

Detalhes do Endpoint

VERBO

GET

URL BASE

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

ENDPOINT

/intro?group_name={string}&process_id={uuid}&group_id={uuid}

Cabeçalhos

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

Query Params

Parâmetro Tipo Obrigatório Descrição
group_name string Sim Nome do grupo: "Grupo 1" … "Grupo 6"
process_id uuid Não ID do processo específico (necessário quando informador está em múltiplos processos com mesmo grupo)
group_id uuid Não ID do grupo específico (alternativa ao process_id para identificar o grupo exato)

Resposta - 200

{
  "success": true,
  "message": "Conteúdo introdutório carregado com sucesso.",
  "errors": [],
  "data": {
    "intro": {
      "group_name": "Grupo 1",
      "video_url": "https://st1fnunciaturapublic.blob.core.windows.net/temp/nuncio.mp4",
      "video_cover_url": null,
      "paragraph": "texto por grupo",
      "info": "Em caso de dúvidas, entre em contato com a Nunciatura Apostólica, de segunda a sexta-feira, das 8h30 às 16h30.",
      "phone": "(61) 98105-8033"
    },
    "informador": {
      "group": { "id": "uuid", "name": "Grupo 1" },
      "process": { "id": "uuid", "name": "Processo", "protocol": "PROV-2025-001" },
      "questionnaires": [
        { "id": "uuid-g1q1", "title": "Indicação de informadores", "indicator": "g1q1", "can_be_shared": true },
        { "id": "uuid-g1q2", "title": "Perfil da Diocese", "indicator": "g1q2", "can_be_shared": true },
        { "id": "uuid-g1q3", "title": "Terna de candidatos", "indicator": "g1q3", "can_be_shared": false }
      ],
      "processes_groups": null
    }
  }
}

Erros

Erro - 401 (Token inválido)

{
  "success": false,
  "message": "Usuário não encontrado",
  "errors": []
}

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

Erro - 422 (Validação)

{
  "success": false,
  "message": "Erro de validação",
  "errors": { "group_name": ["O parâmetro group_name é obrigatório."] }
}

Condição: `group_name` ausente ou valor fora da lista permitida ("Grupo 1" … "Grupo 6")

Erro - 403 (Acesso negado)

{
  "success": false,
  "message": "O informador não está associado ao processo ou grupo informado.",
  "errors": []
}

Condição: O informador autenticado não está associado ao process_id ou group_id informado

Erro - 404 (Não encontrado)

{
  "success": false,
  "message": "Introdução não encontrada para o grupo informado.",
  "errors": []
}

Condição: Não existe registro de intro para o `group_name` informado

Códigos de Resposta

Código Descrição
200 Conteúdo introdutório retornado com sucesso
401 Token inválido ou expirado
422 Erro de validação do parâmetro group_name
403 Informador não associado ao processo/grupo informado
404 Introdução não encontrada para o grupo informado