Segurança
Autenticação
Gere e envie o token Basic Auth para autenticar suas requisições privadas.
Basic Auth
Os endpoints privados da Elix utilizam autenticação HTTP Basic. O token é formado pela sua API Key e Secret Key, separadas por dois-pontos e codificadas em Base64.
SUA_API_KEY:SUA_SECRET_KEYSUA_API_KEY:SUA_SECRET_KEYBase64 é uma codificação, não uma forma de criptografia. A segurança depende de HTTPS e do armazenamento correto da Secret Key.
Como gerar o token Basic
A maioria dos clientes HTTP monta a autenticação automaticamente. Se precisar gerar o valor manualmente, use uma das opções abaixo.
Terminal (Linux/macOS)
echo -n "SUA_API_KEY:SUA_SECRET_KEY" | base64
# Envie o resultado no header:Authorization: Basic SEU_TOKEN_BASE64echo -n "SUA_API_KEY:SUA_SECRET_KEY" | base64
# Envie o resultado no header:Authorization: Basic SEU_TOKEN_BASE64Python
import base64
api_key = "SUA_API_KEY"secret_key = "SUA_SECRET_KEY"credentials = f"{api_key}:{secret_key}"basic_token = base64.b64encode(credentials.encode()).decode()
print(basic_token)import base64
api_key = "SUA_API_KEY"secret_key = "SUA_SECRET_KEY"credentials = f"{api_key}:{secret_key}"basic_token = base64.b64encode(credentials.encode()).decode()
print(basic_token)TypeScript / Node.js
const apiKey = process.env.ELIX_API_KEY;const secretKey = process.env.ELIX_SECRET_KEY;const credentials = `${apiKey}:${secretKey}`;const basicToken = Buffer.from(credentials).toString("base64");
console.log(basicToken);const apiKey = process.env.ELIX_API_KEY;const secretKey = process.env.ELIX_SECRET_KEY;const credentials = `${apiKey}:${secretKey}`;const basicToken = Buffer.from(credentials).toString("base64");
console.log(basicToken);Requisições
Envie a credencial no header Authorization, no formato Basic <token>. No cURL, a opção -u executa a concatenação e a codificação automaticamente.
curl -X POST "https://api.elixbank.com.br/api/v1/baas/charge" \ -u "SUA_API_KEY:SUA_SECRET_KEY" \ -H "Content-Type: application/json" \ -d '{ "amount": 100.00, "description": "Cobrança de teste", "payer": { "name": "João da Silva", "document": "12345678900" } }'curl -X POST "https://api.elixbank.com.br/api/v1/baas/charge" \ -u "SUA_API_KEY:SUA_SECRET_KEY" \ -H "Content-Type: application/json" \ -d '{ "amount": 100.00, "description": "Cobrança de teste", "payer": { "name": "João da Silva", "document": "12345678900" } }'Respostas de autenticação
200Credencial validada e requisição processada.
401Credencial ausente, revogada ou montada incorretamente.
403Credencial válida, mas sem escopo para o recurso.