Esta página descreve os endpointsDocumentation Index
Fetch the complete documentation index at: https://docs.haldenhub.com/llms.txt
Use this file to discover all available pages before exploring further.
/api/v1/consents para integração server-to-server com API Key. Eles são distintos do fluxo público do banner (POST /api/v1/public/consent), que usa o header X-Site-Token.
O mesmo backend também aceita sessão do dashboard (cookie JWT) nestas rotas para uso interno no painel — isso não está documentado na aba API Reference (o openapi.yaml publicado é só para integradores com sk-...).
Para obter e usar uma API Key, consulte API Key.
Autenticação (integração externa)
Use exclusivamente:Authorization: Bearer sk-...— recomendado para backends e automação.
api_access). O uso pelo dashboard com JWT não incrementa esse contador (ver API Key).
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
POST | /api/v1/consents | Cria um registro de consentimento para um site_id seu. |
GET | /api/v1/consents | Lista com filtros e paginação por cursor. |
GET | /api/v1/consents/{id} | Detalhe de um consentimento. |
PUT | /api/v1/consents/{id} | Atualiza aceite e/ou preferências (alterações auditadas). |
DELETE | /api/v1/consents/{id} | Exclusão lógica (LGPD / direito ao esquecimento). |
GET | /api/v1/consents/{id}/history | Trilha de auditoria do consentimento. |
openapi.yaml versionado aqui lista apenas estas rotas com esquema Api Key. Ele não é substituído automaticamente pela spec completa do Swag: se executar make openapi-docs em cosmos, o comando reescreve docs/openapi.yaml com todas as rotas — é preciso restaurar este recorte (ou automatizar um filtro) antes de publicar na Mintlify.
Criar consentimento (exemplo)
Corpo mínimo:site_id obrigatório; demais campos opcionais conforme o seu caso.
201: objeto com id, created_at, policy_version, etc.
Listagem e filtros
GET /api/v1/consents aceita query params:
site_id,subject_id,consent_idaccepted(true/false)from,to(date-time ISO)cursor,limit(padrão 50, máximo 100)
next_cursor da resposta para a próxima página.
Não confundir com o banner no site
| Integração | Endpoint | Autenticação |
|---|---|---|
| Snippet no navegador | POST /api/v1/public/consent | X-Site-Token (token do site) |
| Backend / automação | /api/v1/consents/* | Bearer sk-... |
Erros frequentes
O corpo de erro segue o schema APIErrorResponse: camposerror (código) e message (texto).
unauthorized— API Key inválida ou revogada.quota_exceeded— cota mensual da API esgotada (429).not_found— consentimento ou site não encontrado para o utilizador da chave.invalid_request— corpo ou query inválidos (ex.: cursor malformado).
Dúvidas? suporte@consentfly.com.br
