Autenticação (Server-to-Server)

A autenticação é feita somente por cabeçalhos usando um par Client ID (público do aplicativo) + API Key (secreta da sua empresa). Não há JWT nesta modalidade.

Cabeçalhos de Autenticação

Envie ambos os cabeçalhos em todas as requisições:

X-Client-Id

ID público do aplicativo SplitPay

X-API-Key

Chave secreta da sua Company (gere/rotacione no painel)

Exemplo de Requisição

bash

curl -X POST https://app.splitgames.com.br/<sua-rota> \
  -H "Content-Type: application/json" \
  -H "X-Client-Id: e1c98954cc404cbcb2868af9b40c7a33" \
  -H "X-API-Key: c2f1839a...e15d" \
  -d '{
    "...": "payload"
  }'

Boas Práticas

  • Nunca exponha a X-API-Key no frontend
  • Armazene a chave em cofres/variáveis de ambiente
  • Use sempre HTTPS
  • Rotacione sua chave periodicamente e revogue em caso de suspeita de vazamento

Códigos Comuns de Autenticação

401

Unauthorized

Cabeçalhos ausentes ou inválidos (X-Client-Id ou X-API-Key)

{
  "type": "about:blank",
  "title": "Unauthorized",
  "status": 401,
  "detail": "API Key ausente ou inválida",
  "traceId": "00-...-00"
}
403

Forbidden

Credenciais válidas, porém sem permissão para acessar o recurso/empresa

{
  "type": "about:blank",
  "title": "Forbidden",
  "status": 403,
  "detail": "Acesso negado para esta company",
  "traceId": "00-...-00"
}