Rotas de servidor
Base: https://api.atestus.com. O ambiente vem do prefixo da chave (pk_test_ / sk_live_), não de um host separado.
As três chamadas com chave secreta
const { enrollmentToken } = await atestus.issueEnrollmentToken(usuario);
const { intentHandle } = await atestus.createIntent({
action: "pedido.aprovar",
endUserRef: usuario,
payload: { pedido: "A-1042", valorCentavos: 14990, moeda: "BRL" },
});
const veredito = await atestus.verify({ intentHandle, payload });
if (veredito.allowed) { /* execute */ }Você reapresenta o mesmo payload no passo 3 e no passo 5, montado pela mesma função. Hash divergente vira payload_mismatch. A intent responde uma vez; a segunda chamada recebe intent_expired.
Rotas /v1
| Método | Caminho | Escopo |
|---|---|---|
| POST | /v1/device/nonce | pk_ |
| POST | /v1/device/register | pk_ |
| POST | /v1/device/confirm | pk_ |
| POST | /v1/enrollments | sk_ |
| POST | /v1/intents | sk_ |
| POST | /v1/verify | sk_ |
| POST | /v1/webauthn/… | pk_ |