API de verificação por SMS: geramos, enviamos e conferimos o código, e o seu sistema guarda só o id

WhatsApp e APIs·· 28 visualizações· 4 min de leitura

A resposta curta: com a nossa API de verificação, o seu sistema não precisa de gerar, guardar nem comparar códigos. Faz um pedido POST /v1/sms/otp com o número do cliente; nós geramos um código aleatório, enviamo-lo por SMS na hora e guardamos só o hash. Quando o cliente escrever o código, o seu sistema faz POST /v1/sms/otp/{id}/verify e recebe valid: sim ou não. Do seu lado fica apenas o id do código, que começa por otp_.

Os dois pedidos que bastam

1 O cliente pede o código. Ao criar conta, ao entrar ou ao pagar, o seu sistema envia o número. Todos os outros campos são opcionais.
2 Nós geramos e enviamos. O código sai por SMS de imediato, à frente dos outros envios da sua conta. A resposta traz o id, o estado pending, o número tapado e a hora a que o código expira.
3 O cliente escreve o código no seu site ou na sua aplicação. Nunca responde ao SMS: os remetentes com nome não recebem respostas.
4 Nós conferimos. O seu sistema manda o código escrito e recebe valid, o estado e as tentativas que restam.

curl https://api.mozout.com/v1/sms/otp \
-H "Authorization: Bearer sandbox_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: signup-7f3a9c" \
-d '{"number": "841234567"}'

As operações, uma a uma

Operação Para que serve Permissão
POST /v1/sms/otp Gerar e enviar um código sms:write
POST /v1/sms/otp/{id}/verify Conferir o código que o cliente escreveu sms:write
POST /v1/sms/otp/{id}/resend Enviar um código novo com o mesmo id sms:write
POST /v1/sms/otp/{id}/cancel Fazer um código pendente deixar de valer sms:write
GET /v1/sms/otp/{id} Ver o estado (nunca o código) sms:read
GET /v1/sms/otp-settings Ver as regras de envio da conta sms:read
PUT /v1/sms/otp-settings Mudar essas regras sms:write

O que já vem feito, e o que continua a ser seu

Já vem feito pela API Continua no seu sistema
Código aleatório, de 4 a 8 algarismos (6 por omissão) Ligar o id ao cliente e ao que ele está a fazer (a sessão, a operação)
Validade de 1 a 60 minutos (5 por omissão) Decidir o que acontece quando valid vem a true
Tentativas contadas, de 1 a 10 (5 por omissão) Travar o seu formulário contra robôs (veja a fraude pelo formulário do código)
Só o hash guardado e conferência em tempo constante Um ecrã do código claro e honesto
Um código novo para o mesmo número anula o anterior Guardar a chave da API no servidor, nunca na página nem na aplicação móvel
Comece na Sandbox. Com uma chave sandbox_, nenhum SMS sai e nada se paga, e a resposta do envio traz o próprio código, para testar a conferência. Veja testar a verificação na Sandbox.
Antes do primeiro pedido, o SMS tem de estar activo na sua conta e com créditos. Sem isso, a API responde 403 com sms_reseller_required. Active o serviço e compre créditos na página SMS do My MozOut. Cada código gasta os créditos do seu SMS, normalmente um; a conferência não gasta nada.

Quer confirmar números e entradas sem gerar nem guardar códigos? Veja como funciona o SMS de Verificação.

Ver o SMS de Verificação

VEJA TAMBÉM

Códigos próprios ou a nossa API de verificação: como enviar códigos por SMS a partir do seu sistema

Testar a verificação por SMS na Sandbox: o código vem na resposta

Tamanho, validade e tentativas do código: como escolher length, expires_in e max_attempts

Pôr a verificação por SMS no seu site: exemplos em PHP, Node.js e Python

Enviar SMS pela API: chave, permissões, Sandbox e o primeiro pedido

Enviar códigos de uso único (OTP) por SMS com segurança: validade, tentativas e registos

PRODUTO RECOMENDADO

Hospedagem de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 396,00 MT/mês (plano de 3 anos, com cupão)

Ver planos
Esta resposta foi útil? A sua resposta ajuda-nos a melhorar este artigo.