Comece aqui

Início rápido

Este fluxo usa uma aplicação de teste. Você pode implementar a autenticação completa sem entregar mensagens ou consumir créditos.

Nesta página

1. Crie uma aplicação de teste

No painel, crie uma aplicação em modo test. Guarde a chave ak_test_… em AUT2FA_API_KEY no servidor.

Os exemplos de terminal usam Bash. Substitua o valor abaixo pela chave da sua aplicação:

Bash
export AUT2FA_API_KEY='ak_test_SUA_CHAVE'

Use a URL base https://api.aut2fa.com e o cabeçalho Authorization: Bearer SUA_CHAVE.

2. Solicite o código

Use um telefone válido em formato internacional, iniciado por +. O exemplo omite code e cria o código de teste 000000.

curl https://api.aut2fa.com/v1/send \
  -H "Authorization: Bearer $AUT2FA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to":"+5531999999999","locale":"pt-BR"}'

Nos clientes nativos, guarde a chave única e o corpo serializado antes da chamada. Cada novo pedido gera outra chave; uma retentativa reutiliza a chave e o corpo originais. O cURL mínimo omite o cabeçalho opcional: para retentar com segurança, consulte idempotência.

Resposta 202 Accepted:

JSON
{
  "id": "snd_01m4prwckhd0kyjgv5vw8a5wjr",
  "status": "queued",
  "verification": "pending",
  "mode": "test",
  "channel": null,
  "from": null,
  "expires_at": "2026-10-11T15:10:00Z",
  "created_at": "2026-10-11T15:00:00Z",
  "sent_at": null,
  "delivered_at": null,
  "read_at": null,
  "verified_at": null,
  "failed_at": null,
  "failure_reason": null
}

Guarde id e expires_at na sessão de autenticação do servidor, vinculados à pessoa e à operação que iniciou o pedido. A API não devolve o código.

3. Verifique o código

Use o id recebido na etapa anterior como SEND_ID e envie o código informado pela pessoa como string. Neste teste, ele é 000000.

cURL
curl "https://api.aut2fa.com/v1/send/$SEND_ID/verify" \
  -H "Authorization: Bearer $AUT2FA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"code":"000000"}'

Resposta 200 OK ao acertar:

JSON
{
  "valid": true,
  "verification": "verified",
  "attempts_left": 0
}

Conclua a autenticação apenas se valid === true. Um HTTP 200 também pode conter código incorreto, expirado, bloqueado ou já utilizado. O código é aceito uma única vez.

Após o sucesso, attempts_left é 0; isso indica que a verificação encerrou. Veja todos os resultados em verificar código.

4. Prepare o modo live

Crie uma aplicação live e configure a chave ak_live_… no seu servidor. O modo é definido pela aplicação da chave; não existe parâmetro mode no corpo do envio.

Abrir painel da aut2fa

Buscar na documentação

Digite uma palavra para procurar nos guias e na API.

Use as setas para percorrer os resultados. Enter abre a página. Esc fecha a busca.