Ir para o conteúdo principal

Escolher os escopos adequados para sua integração

Os escopos restringem o que uma chave API pode fazer. Uma chave carrega um ou mais escopos; uma chamada a um endpoint cujo escopo não está presente retorna 403 INSUFFICIENT_SCOPE. Aplique o princípio do menor privilégio: conceda a cada chave apenas os escopos necessários para sua integração.

Escopos disponíveis

A V1 da API pública expõe quatro escopos:

EscopoPropósitoUso típico
dns:readLeitura de dados DNSWatcher DNS, scripts de CI, ferramentas de troubleshooting
mail:readDiagnósticos de autenticação de emailAuditoria SPF/DKIM/DMARC, monitoramento de deliverability
mail:writeOperações custosas de scoring de emailDeliverability score em pipeline
web:readAnálise de página e URLDetecção de phishing, verificação de links

Nenhum escopo implica outro. mail:write não herda de mail:read.

Mapeamento completo de endpoints

dns:read

EndpointCréditosDescrição
POST /public/v1/resolve1Resolução DNS padrão
POST /public/v1/resolve/propagation3Teste de propagação multi-resolver
POST /public/v1/dnssec/check3Verificação da cadeia DNSSEC
POST /public/v1/ip/whois2WHOIS de um IP
POST /public/v1/ip/nslookup1DNS reverso (PTR)
POST /public/v1/ip/netmask1Calculadora de máscara IPv4
POST /public/v1/rdap/lookup2RDAP/WHOIS de domínio
POST /public/v1/domain/dns-check5Auditoria de servidores DNS

mail:read

EndpointCréditosDescrição
POST /public/v1/spf/lookup1Lookup e parsing SPF
POST /public/v1/spf/validate1Validação SPF (sem lookup DNS)
POST /public/v1/dkim/lookup1Lookup DKIM por seletor
POST /public/v1/dkim/validate1Validação DKIM (sem lookup DNS)
POST /public/v1/dmarc/lookup1Lookup e parsing DMARC
POST /public/v1/dmarc/validate1Validação DMARC (sem lookup DNS)
POST /public/v1/bimi/lookup2Lookup BIMI com recuperação do logo
POST /public/v1/bimi/validate2Validação BIMI (sem lookup DNS)
POST /public/v1/bimi/logo/lookup2Download e validação do logotipo BIMI
POST /public/v1/mta-sts/lookup2Lookup da policy MTA-STS
POST /public/v1/tls-rpt/lookup2Lookup TLS-RPT
POST /public/v1/dane/lookup2Lookup DANE/TLSA para SMTP
POST /public/v1/blacklist/ip5Blacklist check multi-RBL
POST /public/v1/smtp/check6Teste SMTP (HELO, STARTTLS, AUTH)
POST /public/v1/mail/header-audit2Análise de header bruto de email
POST /public/v1/mail/header-analyze2Análise de cabeçalhos de email
POST /public/v1/mail/domain-check10Auditoria completa de domínio de email
POST /public/v1/dmarcbis/check2Análise DMARCbis Tree Walk
POST /public/v1/dmarc/report/analyze5Análise de relatório DMARC agregado
POST /public/v1/certificats/bimi/parse1Parsing de certificado BIMI/VMC
POST /public/v1/certificats/bimi/lookup2Download e parsing de certificado BIMI
GET /public/v1/spf/hosted1Lista dos perfis SPF hospedados da chave
GET /public/v1/spf/hosted/{id}1Detalhe de um perfil SPF hospedado
GET /public/v1/spf/hosted/{id}/history2Histórico de resolução de um perfil (paginado)
GET /public/v1/spf/hosted/{id}/stats2Estatísticas de um perfil (24 horas, 7 dias, 30 dias)

mail:write

EndpointCréditosDescrição
POST /public/v1/deliverability/score30Score agregado de DMARC, BIMI e reputação
POST /public/v1/dmarc/generate1Gerador de registro DMARC
POST /public/v1/dmarcbis/migrate1Migração de DMARC para DMARCbis
POST /public/v1/spf/hosted/{id}/resolve5Re-resolução forçada de um perfil SPF hospedado

O escopo mail:write isola os endpoints de escrita. Uma chave dedicada é recomendada se sua integração usar o score de entregabilidade, para reduzir o impacto em caso de vazamento.

web:read

EndpointCréditosDescrição
POST /public/v1/url/check3Análise da cadeia de redirecionamentos
POST /public/v1/page/crawl-check10Crawl de página com extração de meta
POST /public/v1/phishing/check8Detecção heurística de phishing
POST /public/v1/http/headers-check2Cabeçalhos HTTP, cadeia de redirecionamentos, TLS
POST /public/v1/http/hsts-check3Análise HSTS e elegibilidade para preload
POST /public/v1/certificates/ssl/check2Certificado TLS de um servidor web e sua cadeia
POST /public/v1/certificates/csr/parse2Análise de conformidade de um CSR

Transição de escopo em /certificates/csr/parse. Este endpoint pertencia à família mail:read e custava 1 crédito. Como um CSR não tem nada especificamente de mail, seu escopo-alvo passa a ser web:read e seu custo é de 2 créditos. Para não quebrar nenhuma chave já emitida, mail:read continua sendo aceito durante um período de transição, mas será retirado: crie suas novas chaves com web:read e adicione web:read às chaves existentes que chamam este endpoint.

Nota: os 15 endpoints da família text/* (encoding base64, conversão JSON/YAML, hash, slug, regex, password, etc.) também estão vinculados ao escopo dns:read para simplificar a atribuição. Eles não efetuam nenhuma resolução DNS. Consulte a referência OpenAPI para a lista completa.

Estratégias de atribuição

Chave única com todos os escopos (frágil, não recomendado): útil para prototipar, perigoso em produção.

Uma chave por serviço (recomendado): cada microsserviço ou script tem sua própria chave com apenas os escopos necessários.

Uma chave por ambiente: dev, staging e produção têm cada um suas próprias chaves, distinguidas pelo prefixo.

Chave com escopo único para mail:write: separar o deliverability score do restante evita que um loop involuntário consuma toda a cota.

Adicionar ou remover um escopo

Os escopos são fixados na criação. Para modificá-los em uma chave existente:

  1. Crie uma nova chave com os escopos desejados.
  2. Implante-a no seu gerenciador de segredos.
  3. Revogue a chave antiga.

Ferramentas CaptainDNS relacionadas

Próximo passo: o modelo de créditos e depois o rate limiting.