A vida de uma mensagem
Depois do envio, cada destinatário fica em fila (queued) e é cobrado, e então é entregue a uma rota de operadora (sent). Depois a operadora informa se o telefone recebeu (delivered) ou não (failed).
Quando os relatórios chegam
A maioria dos relatórios chega entre alguns segundos e alguns minutos. Algumas operadoras informam com atraso ou nunca informam; uma mensagem sem relatório permanece em sent.
Reembolsos
Uma mensagem que falha é reembolsada automaticamente no seu saldo. Você pode ver cada reembolso no histórico do saldo, com o id da mensagem.
Recebendo webhooks
Adicione um endereço https na página Chave de API. Quando uma mensagem é entregue ou falha, enviamos um POST com um corpo JSON contendo o id da mensagem, o número, o status, o preço e o seu ref. Responda com qualquer status 2xx; caso contrário, tentamos novamente até 8 vezes ao longo de cerca de duas horas.
Verificando a assinatura
Todo webhook traz X-PortSMS-Signature: t=<time>,v1=<hex>. Calcule o HMAC-SHA256 do texto t.body com seu segredo de assinatura e compare com v1. Recuse requisições com mais de cinco minutos para que uma requisição antiga não possa ser reenviada.