Primeiros passos
Autenticação
Aprenda a autenticar requisições e gerenciar chaves.
1 — Crie uma chave
Vá em Painel → Integrações → API e clique em Criar Chave API.
Você verá o client_id (formato dx_id_*) e o client_secret (formato dx_sk_*) — o secret aparece uma única vez. Salve em local seguro.
2 — Gere o token base64
A devexpay usa o esquema HTTP Basic over Bearer: concatene client_id:client_secret, codifique em base64, e envie no header.
bash
# Bash
TOKEN=$(echo -n "dx_id_xxxxxxx:dx_sk_yyyyyyyy" | base64)
# Node.js
const token = Buffer.from("dx_id_xxxxxxx:dx_sk_yyyyyyyy").toString("base64");
# Python
import base64
token = base64.b64encode(b"dx_id_xxxxxxx:dx_sk_yyyyyyyy").decode()3 — Use em todas as requisições
bash
curl https://devexpay-v3.vercel.app/api/v1/products \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json"Escopos de acesso
Cada chave declara escopos no momento da criação. Endpoints exigem combinações específicas:
| Escopo | Permite |
|---|---|
| read | Endpoints GET (listar / obter recursos) |
| write | Endpoints POST/PUT/DELETE (criar / atualizar / excluir) |
| products | Acesso aos endpoints /products/* |
| offers | Acesso aos endpoints /offers/* |
| orders | Acesso aos endpoints /orders/* (vendas + reembolso) |
| webhooks | Acesso aos endpoints /webhooks/* |
Cada endpoint exige uma combinação de escopos. Por exemplo, POST /offers requer write + offers.
Revogação de chaves
Em qualquer momento, revogue a chave em Painel → Integrações → API. Aplicações que a usem retornarão imediatamente 401 revoked.
Erros de autenticação
| Código | Quando ocorre |
|---|---|
| missing_auth | Header Authorization ausente |
| invalid_token | Token não é base64 válido ou não tem ':' separador |
| invalid_client | client_id não existe |
| invalid_secret | client_secret não confere |
| revoked | Chave foi revogada pelo dono |
| insufficient_scope | Chave não tem o escopo exigido por esse endpoint |