Autenticação
A API da Aeses usa chaves secretas para autenticar requisições. Toda requisição precisa incluir sua chave no header x-api-key. Não existe fluxo OAuth — a Aeses é uma API server-to-server, feita para ser chamada a partir do seu backend.
Enviando a chave
curl https://api.aeses.io/v1/balances \
-H "x-api-key: sk_live_..."Todas as requisições precisam ser feitas via HTTPS. Requisições em HTTP puro falham na terminação TLS antes mesmo de chegar à API. Requisições sem o header x-api-key, ou com chave malformada, retornam 401 authentication_error.
Formatos de chave
| Prefixo | Ambiente | Uso |
| ----------- | ---------- | -------------------------------------------------------------------------------- |
| sk_test_… | Modo teste | Redes públicas de testnet. Nunca movimenta fundos reais. Use em desenvolvimento. |
| sk_live_… | Modo live | Redes de produção. Autoriza movimentação de valor real. |
Uma chave sk_live_ não consegue ler dados de sk_test_, e vice-versa. Os dois ambientes são totalmente isolados — veja Ambientes para detalhes.
Criar e rotacionar chaves
Gerencie suas chaves em Painel → Developers → API keys. Você pode:
- Criar quantas chaves quiser por ambiente. Nomeie cada uma pelo sistema que a usa (ex.:
checkout-prod,reconciliation-worker). - Rotacionar criando uma chave nova, fazendo o deploy em todos os lugares e revogando a antiga. A Aeses não força um cutover rígido — revogue quando o rollout estiver completo.
- Revogar instantaneamente. Uma chave revogada retorna
401 authentication_errorem toda requisição posterior.
Se uma chave secreta vazar em um log, repositório ou screenshot, revogue-a no painel na hora e substitua. Não há caminho de recuperação que não passe pela revogação.
Armazenando chaves com segurança
- Leia a chave de uma variável de ambiente ou de um secrets manager (AWS Secrets Manager, HashiCorp Vault, GCP Secret Manager). Não hardcode.
- Nunca embarque uma chave secreta em código de cliente browser, mobile ou desktop. Se um cliente precisa iniciar um pagamento, gere um objeto charge de curta duração no servidor e passe o charge ID para o cliente.
- Evite logar a chave inteira. Se precisar logar para debug, registre só os últimos quatro caracteres.
Erros
| Status | Código | Causa |
| ------ | -------------------------- | ------------------------------------------------------------ |
| 401 | authentication_error | Chave ausente, malformada, revogada ou expirada. |
| 401 | key_environment_mismatch | Uma chave sk_test_ foi usada contra um recurso só de live. |
| 403 | forbidden | A chave é válida mas não tem permissão para este recurso. |
Veja Erros para o modelo completo de erros.