Pular para o conteúdo
Docs

Autenticação: API keys e escopos

Atualizado em

Nesta página

Toda chamada à API é autenticada por uma chave de API da empresa. A chave define o ambiente (teste ou produção) e o que ela pode fazer (escopos).

Formato da chave#

Formato
emt_<ambiente>_<prefixo>_<segredo>

emt_test_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx   ← teste (sandbox)
emt_live_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx   ← produção
  • O prefixo (8 caracteres) identifica a chave no painel e nos logs.
  • O segredo (32 caracteres) só existe com você. A Emitra guarda apenas um hash dele e não consegue mostrar a chave de novo.

Enviando a chave#

Use o header Authorization com o esquema Bearer:

HTTP
GET /api/v1/integracao/me HTTP/1.1
Host: emitra.com.br
Authorization: Bearer emt_test_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

O header X-Api-Key: <chave> também é aceito, para ferramentas que não permitem mexer no Authorization.

cURL
curl https://emitra.com.br/api/v1/integracao/me \
  -H "Authorization: Bearer $EMITRA_API_KEY"

Criando uma chave#

Só owner e admin da empresa criam chaves (permissão integracao:gerenciar).

  1. Abra Notas › Automação › Integrações › Chaves de API.
  2. Clique em Nova chave e informe:
    • Nome (ex.: "ERP Produção");
    • Ambiente: teste (emt_test_) ou produção (emt_live_);
    • Escopos (veja abaixo);
    • Expiração: obrigatória, de até 1 ano.
  3. Copie a chave e marque "Guardei a chave em um local seguro". Ela não será mostrada de novo.

Escopos#

Escopo Permite
nfse:emit Emitir NFS-e (POST /nfse)
nfse:read Consultar e listar notas, baixar XML e PDF, listar eventos
nfse:cancel Cancelar NFS-e
nfse:replace Substituir NFS-e
customers:read Consultar e listar tomadores
customers:write Criar, alterar e excluir tomadores
items:read Consultar e listar itens de serviço
items:write Criar, alterar e excluir itens de serviço
webhooks:manage Gerenciar endpoints de webhook e ver entregas

As rotas de utilidade (/me, /referencia/*) aceitam qualquer chave válida.

Os escopos são um subconjunto das permissões de quem cria a chave. Um admin não consegue criar uma chave com um escopo que ele próprio não tem.

Respostas de autenticação#

HTTP code Quando
401 UNAUTHORIZED Chave ausente, malformada, expirada, revogada ou inexistente
403 FORBIDDEN Chave válida, mas sem o escopo da rota

A mensagem de erro é genérica de propósito: ela não diz se a chave existe.

Proteja sua chave#

  • O painel mostra o último uso (data e IP) de cada chave. Revise as chaves sem uso e revogue.
  • Toda ação feita por uma chave entra na auditoria da empresa com o ator api_key e o nome da chave.

Revogando e rotacionando#

Revogar tem efeito imediato: as chamadas seguintes recebem 401. Para rotacionar sem parar a integração:

  1. Crie a chave nova com os mesmos escopos.
  2. Publique a chave nova no seu sistema.
  3. Confira no painel que a chave antiga parou de ser usada.
  4. Revogue a chave antiga.

Próximos passos#

Esta página foi útil?