Voltar ao início

Chaves de API com escopo

Última atualização: Agosto de 2026

Até agora, uma chave de API do Klyk dava acesso a tudo que a sua conta pode fazer — ler, criar e apagar link, mexer em webhook. Uma única chave, para toda integração. Se ela vazasse — num repositório público, num log, no navegador de outra pessoa — o estrago era a conta inteira, não importa pra que você a estivesse usando.

Agora dá para criar uma chave só com o pedaço de acesso que uma integração específica precisa. Sua chave de sempre continua exatamente como está, com acesso total — nada muda se você não fizer nada.

DemonstraçãoUma chave, só com o pedaço de acesso que ela usa1/4
  1. 1Dá nome à chave, e marca só o que ela precisa

    Uma integração que só cria link recebe só links:write — nada de links:delete nem webhooks:write, que ela nunca vai usar.

    • O nome é o da integração, não um apelido genérico — é assim que dá para reconhecer qual revogar depois.
    • Escopo a mais não ajuda em nada no dia a dia. Só aumenta o que uma chave vazada alcança.
  2. 2A chave aparece uma vez só

    Igual à chave legada: copie agora, porque o Klyk guarda o hash dela, não a chave — não tem como mostrar de novo depois.

    • Fechou a tela sem copiar? A chave não volta. É gerar outra e trocar na integração.
    • A partir daqui ela aparece na lista só pelo prefixo, para você reconhecer qual é qual sem que ela fique exposta.
  3. 3Dentro do escopo, funciona normal

    POST /v1/links passa, porque a chave tem links:write. Do lado de quem integra, não muda nada — é a mesma chamada de sempre.

    • O link criado aparece no painel na mesma hora, junto com os criados por qualquer outra chave da conta.
  4. 4Fora do escopo, a chamada nem chega a tentar

    A mesma chave tentando DELETE /v1/links/:id recebe 403 — ela não tem links:delete. E o Klyk guarda a tentativa.

    • Esse registro serve pra duas coisas: achar uma integração com o escopo errado, e achar uma chave vazada testando até onde ela alcança.
    • Repare que é o MESMO 403 de uma chave sem plano de API — o motivo muda, a recusa não.

Os seis escopos

Cada chave nova escolhe uma combinação destes seis:

EscopoLibera
links:readListar e ler links
links:writeCriar e editar links
links:deleteApagar links
analytics:readLer analytics de um link
webhooks:readListar inscrições de webhook
webhooks:writeCriar e apagar inscrições de webhook

Uma chave que só marca links:write não consegue apagar link nenhum, mesmo que peça — a rota responde 403. Uma chave só de webhooks:read não enxerga um link sequer.

Onde criar

Em Configurações → API → Chaves com escopo. Dá nome à chave — o nome da integração, não um apelido genérico, porque é assim que você vai reconhecer qual chave revogar depois se precisar — marca os escopos, e a chave aparece uma vez só, igual à legada: copie na hora, porque ela não volta a aparecer.

Quanto menos, melhor

Dê à integração só o que ela usa de verdade. Um Zap que só cria link não precisa de links:delete; uma extensão de navegador que mostra estatística não precisa de links:write. Escopo a mais não ajuda em nada no dia a dia — só aumenta o que uma chave vazada alcança.

Quando uma chave é usada fora do escopo

A chamada é recusada com 403, e o Klyk registra a tentativa. Isso serve pra duas coisas: perceber uma integração mal configurada (marcou o escopo errado ao criar a chave), e perceber uma chave em mãos erradas testando até onde ela alcança.