Agendamentos

Crie, consulte e atualize agendamentos de saúde via OAuth2 client_credentials.

Visão Geral

Endpoints da API Externa para o fluxo de agendamentos de saúde. A aplicação destino é inferida do claim aplicacao_id do token. Tentativas cross-tenant retornam 404 (não confirmam existência em outro tenant).

Base URL: /api/external/v2/agendamentos

Autenticação: OAuth2 Bearer Token — escopos agendamentos:read (GET) e agendamentos:write (POST/PATCH)

Listar Agendamentos

GET /api/external/v2/agendamentos

Escopo: agendamentos:read

ParâmetroTipoObrigatórioDescrição
statusstringOpcionalFiltro por status (ver tabela abaixo)
pageintOpcionalPágina (default 0)
sizeintOpcionalItens por página (default 20, máx 100)
curl https://api.avizuai.com.br/api/external/v2/agendamentos?status=ENVIADO&page=0&size=20 \ -H "Authorization: Bearer eyJhbGciOi..."

Resposta (200): formato paginado { content, total, page, size, totalPages }.

Buscar por ID

GET /api/external/v2/agendamentos/{id}

Escopo: agendamentos:read. Retorna 404 se o agendamento não existir ou pertencer a outra aplicação.

Criar Agendamento

POST /api/external/v2/agendamentos

Escopo: agendamentos:write. O agendamento é criado em status IMPORTADO e a aplicação é inferida do token.

CampoTipoObrigatórioDescrição
pacienteTelefonestringObrigatórioNúmero com DDI
procedimentostringObrigatórioNome do procedimento
pacienteNomestringOpcionalNome do paciente
pacienteCpfstringOpcionalCPF do paciente
prestadorstringOpcionalPrestador/unidade
numeroPedidostringOpcionalNúmero do pedido no sistema legado
dataLimiteRetiradastringOpcionalData limite de retirada
localRetiradastringOpcionalLocal de retirada
observacoesstringOpcionalObservações livres
medicoSolicitantestringOpcionalMédico solicitante
curl -X POST https://api.avizuai.com.br/api/external/v2/agendamentos \ -H "Authorization: Bearer eyJhbGciOi..." \ -H "Content-Type: application/json" \ -d '{ "pacienteNome": "João Silva", "pacienteTelefone": "+5511999998888", "procedimento": "Colonoscopia", "prestador": "Hospital Municipal", "numeroPedido": "PED-2026-0042" }'
Retorna 201 Created com o agendamento. pacienteTelefone e procedimento são obrigatórios — sem eles, 400.

Atualizar Status

PATCH /api/external/v2/agendamentos/{id}

Escopo: agendamentos:write. Via API externa, são suportadas as transições para CONFIRMADO e CANCELADO. Outros status retornam 422.

CampoTipoObrigatórioDescrição
statusstringObrigatórioCONFIRMADO ou CANCELADO
observacaostringOpcionalMotivo/observação (usado no cancelamento)
curl -X PATCH https://api.avizuai.com.br/api/external/v2/agendamentos/42 \ -H "Authorization: Bearer eyJhbGciOi..." \ -H "Content-Type: application/json" \ -d '{"status":"CONFIRMADO"}'

Status do Agendamento

StatusDescrição
IMPORTADORecém-criado, ainda não validado
VALIDADOValidado e pronto para comunicação
ENVIADONotificação de agendamento enviada
AVISO_ENVIADOAviso/lembrete enviado
CONFIRMADOConfirmado pelo paciente
NAO_RESPONDEUSem resposta do paciente
CANCELADOCancelado
ERROFalha no processamento
SEM_TEMPLATESem template de mensagem configurado para o procedimento (não pôde ser comunicado)
REALIZADOExecução confirmada (atendimento realizado) — estado terminal
FALTOUPaciente não compareceu — estado terminal
Via esta API externa (OAuth2), o PATCH aceita apenas CONFIRMADO e CANCELADO. Os estados ENVIADO, AVISO_ENVIADO, NAO_RESPONDEU, ERRO e SEM_TEMPLATE são geridos pelo fluxo interno de comunicação. Já REALIZADO e FALTOU são definidos pelo prestador na API do Prestador (endpoint de execução).

Próximos Passos