← Início rápido
Verify Call

Início rápido do Verify Call

A Novauth faz o telefone do utilizador tocar uma vez. Os últimos 4–6 dígitos do número recebido são o código de verificação — sem digitar nada no Android, um simples olhar no iOS.

Quer testar sem chamadas reais? Use o Modo sandbox — nenhuma chamada real efetuada, códigos OTP previsíveis e sem faturação.

Fluxo
1
O seu servidorPOST /call/flash com o número de telefone do utilizador
2
NovauthEncaminha uma chamada via operadora de voz até ao utilizador
3
Telefone do utilizadorToca uma vez — o ID de chamada mostra o número de verificação
4
A sua aplicação móvelLê o ID de chamada automaticamente (Android) ou o utilizador vê-o (iOS)
5
O seu servidorPOST /call/flash/webhook para confirmar Success ou Failed

1Iniciar uma flash call

Envie um pedido POST com o número de telefone do utilizador. A Novauth encaminha imediatamente uma chamada através da operadora de voz.

POST/api/v1/connect-hub/call/flash
bash
curl -X POST https://api.novauth.com/api/v1/connect-hub/call/flash \
  -H "x-api-key: YOUR_API_KEY" \
  -H "x-account-id: YOUR_ACCOUNT_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "callee": "+14155552671",
    "max_ring_time": 20
  }'
200 OK — Resposta
json
{
  "uuid":   "01JQHM3P7KXNV8W2QF5DG6TYAB",   // save this — used for status reporting
  "caller": "12025550188",                      // number that will ring the user (no + prefix)
  "callee": "14155552671"                       // your user's number (no + prefix)
}

2A aplicação móvel lê o ID de chamada

Este passo é tratado inteiramente no dispositivo do cliente — não é necessária nenhuma chamada ao servidor.

Android: use o PhoneStateListener ou a permissão READ_CALL_LOG para ler automaticamente o ID de chamada recebido — totalmente sem fricção. iOS: o utilizador vê brevemente o número recebido no ecrã e toca em Ignorar — ainda assim mais rápido do que digitar um código de 6 dígitos.

Os últimos 4–6 dígitos do campo caller do Passo 1 funcionam como OTP. Compare-os com o que a aplicação móvel lê e depois comunique o resultado no Passo 3.

3Comunicar o resultado da verificação

Depois de a sua aplicação móvel determinar se os IDs de chamada corresponderam, o seu backend comunica o resultado à Novauth. Isto fecha o registo da chamada e ativa a analítica.

POST/api/v1/connect-hub/call/flash/webhook
bash
# After your mobile app reads the caller ID, report the result:
curl -X POST https://api.novauth.com/api/v1/connect-hub/call/flash/webhook \
  -H "x-api-key: YOUR_API_KEY" \
  -H "x-account-id: YOUR_ACCOUNT_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "uuid": "01JQHM...",
    "status": "Success"
  }'

# status options:
#   "Success"     — user verified (caller ID matched)
#   "Failed"      — call failed or user rejected
#   "Incomplete"  — call started but not resolved
#   "WrongNumber" — user reports wrong number received

4Obter o registo detalhado de chamada (opcional)

Consulte o CDR completo para depuração, auditoria ou análise de fraude. Devolve marcas temporais, duração e disposição.

O CDR só fica disponível depois de a chamada ter terminado por completo. Se o consultar imediatamente após o início, a resposta será null — aguarde alguns segundos ou consulte depois de receber o callback do webhook.

GET/api/v1/connect-hub/call/flash/{uuid}/cdr
bash
# Get full call detail record
curl https://api.novauth.com/api/v1/connect-hub/call/flash/01JQHM.../cdr \
  -H "x-api-key: YOUR_API_KEY" \
  -H "x-account-id: YOUR_ACCOUNT_ID"

Referência da API

POST/call/flashIniciar uma flash call
POST/call/flash/webhookComunicar o resultado da verificação
GET/call/flash/{uuid}/cdrObter registo detalhado de chamada
POST/call/flash/cdrListar todos os CDRs (paginado)
DELETE/call/flash/{uuid}Desligar / cancelar uma chamada a tocar

Cancelar uma chamada a tocar

bash
# Cancel a ringing call before it's answered
curl -X DELETE https://api.novauth.com/api/v1/connect-hub/call/flash/01JQHM... \
  -H "x-api-key: YOUR_API_KEY" \
  -H "x-account-id: YOUR_ACCOUNT_ID"

Valores de estado do webhook

SuccessID de chamada verificado — o utilizador está autenticado
FailedA chamada falhou, caiu ou o utilizador rejeitou-a
IncompleteA chamada começou, mas o resultado não foi determinado
WrongNumberO utilizador comunica que o número recebido era inesperado