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 ou uso autenticado pelo dashboard. Eles são distintos do fluxo público do banner (POST /api/v1/public/consent), que usa o header X-Site-Token.
Para obter e usar uma API Key, consulte API Key.
Autenticação
Envie uma das opções:- API Key:
Authorization: Bearer sk-...(recomendado para backends). - Sessão do dashboard: cookie JWT emitido pelo login (mesmas rotas).
Authorization: Bearer sk-...) consomem a cota mensal do plano; o uso pelo painel com JWT não incrementa o contador (veja 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 gerado a partir do Swag no repositório cosmos (make openapi-docs), tags Consents e API Key.
Criar consentimento (exemplo)
Corpo mínimo:site_id obrigatório; demais campos opcionais conforme seu caso.
201: objeto ConsentDTO 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 | POST /api/v1/consents | JWT ou Bearer sk-... |
Erros frequentes
Os corpos de erro seguem o schemaError (error + message). Em especial:
unauthorized— API Key inválida ou revogada.quota_exceeded— cota mensal da API esgotada (429).not_found— consentimento ou site não encontrado para o usuário autenticado.invalid_request— corpo ou query inválidos (ex.: cursor malformado).
Dúvidas? suporte@haldenhub.com.br
