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

WhatsApp e APIs·· 15 visualizações· 3 min de leitura

A resposta curta: com uma chave sandbox_, a API de verificação faz tudo menos enviar: confere os dados, cria o código e devolve-o no campo code da resposta. Nenhum SMS sai e nenhum crédito é gasto. Assim pode testar a conferência, os erros, a expiração e os reenvios do seu sistema sem um telemóvel na mão. Quando tudo funcionar, troque a chave por uma prod_: o endereço e os pedidos são os mesmos.

Antes de começar

1 Active o SMS na página SMS do Meu MozOut, se ainda não o fez. A API de verificação precisa do serviço de SMS activo.
2 Crie uma chave Sandbox na página API do Meu MozOut, com sms:write (enviar e conferir) e, se quiser ver estados e regras, sms:read. A chave só aparece uma vez.
3 Faça o primeiro envio e veja o código na resposta.

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

A resposta traz "simulated": true, "mode": "sandbox" e o code, e o cabeçalho X-API-Simulated: true. Agora confira:

curl https://api.mozout.co.mz/v1/sms/otp/otp_3f9a1c.../verify \
-H "Authorization: Bearer sandbox_..." \
-H "Content-Type: application/json" \
-d '{"code": "482913"}'

Os testes que vale a pena fazer

Teste Como O que deve ver
Código certo Mande o code que veio na resposta valid: true, estado verified
Código errado Mande outros algarismos valid: false e attempts_left a descer
Tentativas esgotadas Erre até ao fim, com max_attempts baixo Estado failed; o código certo já não vale
Código expirado Envie com expires_in a 1 e espere um minuto valid: false, estado expired
Reenvio POST /v1/sms/otp/{id}/resend Um code novo na resposta; o antigo deixa de valer
Código substituído Peça dois códigos seguidos para o mesmo número O primeiro fica cancelled
Duplo clique Repita o envio com a mesma Idempotency-Key A mesma resposta, sem código novo
Nunca mostre o code ao navegador, nem na Sandbox. Leia-o nos registos do servidor ou no seu programa de testes. Um código que viaja até à página «só para testar» acaba esquecido em Produção, e aí qualquer pessoa confirma qualquer número. Em Produção, o campo code simplesmente não vem.

Passar para Produção sem surpresas

Crie uma chave prod_ com as mesmas permissões e troque-a no servidor. Para garantir que um programa nunca corre com a chave errada, envie o cabeçalho X-API-Mode com sandbox ou production: se não coincidir com o modo da chave, o pedido é recusado com invalid_request e o motivo mode_mismatch. Envie e confira cada código com a mesma chave.

Prefere experimentar sem escrever código? Cada operação da documentação da API tem o botão Playground: escolhe a operação, cola a chave Sandbox e vê a resposta no navegador. A chave fica só na memória da página.

Quer experimentar a verificação por SMS sem gastar créditos? Crie a sua chave Sandbox.

Ver a página da API

VEJA TAMBÉM

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

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

Estados de um código de verificação: pending, verified, expired, failed e cancelled

Ler as respostas da API de verificação: valid false, 409, 422 e 429

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

Uma chave de API ou um token ficou exposto: o que fazer, pela ordem certa

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.