Pular para conteúdo

Referência Técnica

Visão Geral

Esta seção contém a documentação técnica completa da API Complyr, incluindo endpoints REST, estados de consentimento, códigos de erro, tipos de políticas e finalidades de processamento.

Sumário

Endpoints da API

Documentação completa de todos os endpoints REST disponíveis na API Complyr, incluindo autenticação, gerenciamento de consentimento, políticas, workspaces e escaneamento.

Principais tópicos: - Autenticação e tokens JWT - Gerenciamento de consentimento - Templates de consentimento - Políticas de privacidade - Workspaces e membros - Escaneamento de websites - Cookies e categorização - Auditoria e logs

Estados de Consentimento

Referência completa dos estados possíveis de um consentimento no Complyr e suas transições.

Estados disponíveis: - NONE - Sem consentimento - GRANTED - Concedido totalmente - PARTIAL - Parcialmente concedido - DENIED - Negado - REVOKED - Revogado - EXPIRED - Expirado

Códigos de Erro

Lista completa de códigos de erro da API Complyr com causas e soluções.

Categorias: - Erros de autenticação (AUTH_) - Erros de validação (VALIDATION_) - Erros de workspace (WORKSPACE_) - Erros de consentimento (CONSENT_) - Erros de política (POLICY_) - Erros de scan (SCAN_)

Tipos de Política

Documentação dos tipos de política suportados pelo Complyr e seus requisitos LGPD.

Tipos disponíveis: - privacy_policy - Política de Privacidade - cookie_policy - Política de Cookies - terms_of_service - Termos de Uso - data_processing - Acordo de Processamento de Dados

Tipos de Finalidade

Referência das finalidades de processamento de dados disponíveis no sistema de consentimento.

Finalidades padrão: - essential - Essenciais - analytics - Analíticos - marketing - Marketing - personalization - Personalização - third_party - Terceiros

Versionamento da API

Versão Atual

v1.0.0 (estável)

URL Base

Produção: https://api.complyr.com.br
Desenvolvimento: http://localhost:5000

Formato de Resposta

Todas as respostas da API seguem o formato JSON:

// Resposta de sucesso
{
  "data": T,           // Dados da resposta
  "message"?: string   // Mensagem opcional
}

// Resposta de erro
{
  "statusCode": number,
  "message": string | string[],
  "error": string,
  "timestamp": string
}

Rate Limiting

A API implementa rate limiting para proteção contra abuso:

Endpoint Limite Janela
/auth/login 5 requisições 1 minuto
/auth/register 3 requisições 1 hora
/auth/request-password-reset 3 requisições 1 hora
/auth/reset-password 5 requisições 1 hora
/scan 5 requisições 5 minutos
/consents 20 requisições 1 minuto
/consents/workspace/:id 30 requisições 1 minuto
Outros endpoints 100 requisições 1 minuto

Headers de resposta para rate limiting: - X-RateLimit-Limit: Limite máximo de requisições - X-RateLimit-Remaining: Requisições restantes na janela atual - X-RateLimit-Reset: Timestamp Unix quando o limite será resetado

Autenticação

A API utiliza tokens JWT (JSON Web Tokens) para autenticação:

Authorization: Bearer {token}

O token é obtido através do endpoint /auth/login e deve ser incluído em todas as requisições protegidas.

Paginação

Endpoints que retornam listas suportam paginação:

Parâmetros de query: - page (number): Número da página (padrão: 1) - limit (number): Itens por página (padrão: 10, máximo: 100)

Formato de resposta:

{
  "items": T[],
  "total": number,
  "page": number,
  "totalPages": number
}

Headers de Segurança

A API inclui os seguintes headers de segurança (via Helmet.js):

  • Content-Security-Policy: Proteção contra XSS
  • X-Content-Type-Options: nosniff: Previne MIME type sniffing
  • X-Frame-Options: SAMEORIGIN: Proteção contra clickjacking
  • Strict-Transport-Security: Força HTTPS (produção)
  • X-DNS-Prefetch-Control: off: Desativa DNS prefetching
  • Referrer-Policy: Controla informações de referrer

Ambiente de Desenvolvimento

Para desenvolvimento local:

# Backend (API Gateway na porta 5000)
cd backend
npm run start:dev

# Frontend (porta 3000)
cd frontend
npm run dev

Suporte e Documentação Adicional

Changelog

v1.0.0 (2025-01-15)

  • Release inicial da API
  • Endpoints de autenticação e gerenciamento de usuários
  • Sistema de consentimento granular
  • Gerenciamento de políticas com versionamento
  • Escaneamento de websites
  • Sistema de auditoria
  • Rate limiting e segurança

Próximos Passos

  1. Explore a documentação de endpoints para conhecer todas as operações disponíveis
  2. Entenda os estados de consentimento para implementar fluxos corretos
  3. Consulte os códigos de erro para tratamento adequado de exceções
  4. Revise os tipos de política e finalidades para conformidade LGPD

Suporte Técnico

Para dúvidas técnicas ou reportar problemas: - Email: dev@complyr.com.br - GitHub Issues: github.com/complyr/complyr - Documentação: docs.complyr.com.br