---
title: "API de SMS OTP para códigos de verificação"
description: "Envie OTP por SMS com uma chamada REST e token bearer, suporte a Unicode e árabe, IDs de remetente registrados, status de entrega por webhook e fallback por voz."
canonical: "https://omnichannels.ai/pt/channels/sms/otp-api/"
language: "pt"
updated: "2026-10-10"
publisher: "BroadNet Technologies"
brand: "OmniChannels.ai"
---

# API de SMS OTP para códigos de verificação

Canonical: https://omnichannels.ai/pt/channels/sms/otp-api/
Language: pt
Publisher: OmniChannels.ai by BroadNet Technologies

Envie senhas de uso único do seu backend com uma única requisição HTTPS à API REST da BroadNet. Sua aplicação gera e valida o código; nós o entregamos de um ID de remetente (Sender ID) registrado por rotas diretas com as operadoras e informamos cada status ao seu webhook.

**Resposta curta:** Para enviar um OTP por SMS com a OmniChannels.ai, seu backend gera o código e chama POST /sms/sendSms em https://api.broadnet.me com um token bearer, seu ID de remetente, o número e a mensagem. A API devolve um ID de mensagem, e os status chegam ao seu webhook. Unicode e árabe são suportados, com WhatsApp ou voz como fallback.

## O que a API de SMS OTP oferece aos desenvolvedores

- **Uma chamada REST por código:** POST /sms/sendSms com um corpo JSON e um token bearer. A resposta é o ID da mensagem, que você guarda junto com a tentativa de verificação.
- **Status de entrega por webhook:** Receba SUBMITTED, SENT, DELIVERED, FAILED e REJECTED em um único formato normalizado, para saber quando oferecer reenvio ou trocar de canal.
- **Códigos em Unicode e árabe:** Defina messageType como UNICODE para árabe ou outros alfabetos. POST /sms/identify devolve a codificação e a quantidade de segmentos antes do envio.
- **IDs de remetente registrados:** Envie de um ID de remetente alfanumérico registrado para tráfego transacional nos mercados que exigem, como Emirados Árabes Unidos e Arábia Saudita.
- **Consulta de número antes do envio:** POST /sms/lookup verifica um número na rede (HLR e portabilidade), ajudando a rejeitar números inválidos antes de pagar pelo envio de um código.
- **Fallback por WhatsApp e voz:** Use como fallback um modelo de autenticação do WhatsApp ou uma chamada de voz quando o SMS não é entregue ou o código não é digitado.
- **SMPP para volumes muito altos:** Se você já opera um cliente SMPP, envie OTPs por SMPP 3.4 com TLS nas mesmas rotas e receba os relatórios de entrega na sessão.
- **SDK e servidor MCP:** Use o SDK TypeScript @broadnet/cpaas-sdk, a especificação OpenAPI 3.1 ou o servidor MCP para agentes de IA.

## O que o seu código faz e o que a API faz

| Item | Detalhes |
|---|---|
| Gerar o código | Seu backend cria um código aleatório, guarda um hash com prazo de validade e limita as tentativas por número, dispositivo e endereço IP. |
| Enviar o SMS | POST /sms/sendSms com senderId, destinationNumber (código do país mais o número, só dígitos), message e messageType. |
| Acompanhar a entrega | Guarde o ID de mensagem retornado e associe a ele os status do webhook. A falta de DELIVERED dentro do seu tempo limite pode disparar um fallback. |
| Validar o código | Seu backend compara o que o usuário digitou com o hash armazenado. A plataforma nunca verifica nem armazena seu estado de verificação. |
| Fallback | Reenvie pelo WhatsApp com um modelo de autenticação, ou por chamada de voz, que nossa equipe provisiona com você. |
| Preços | Cobrado por segmento de SMS conforme o destino, nas tarifas de tabela publicadas da BroadNet, sem taxa de setup e sem mínimo mensal. Veja os preços de SMS por país. |

## Como integrar a API de SMS OTP

1. **Obtenha seu token:** Solicite acesso; um token bearer é emitido para a sua conta, e as mensagens de teste vão para seus próprios números verificados.
2. **Registre um ID de remetente:** Escolha um ID de remetente transacional e registre-o nos países que exigem, antes de entrar em produção.
3. **Escreva a mensagem:** Coloque o código primeiro, cite sua marca, informe a validade e inclua um aviso para não compartilhar. Mantenha em um segmento.
4. **Envie e acompanhe:** Chame POST /sms/sendSms, guarde o ID da mensagem e trate os status do webhook de forma idempotente.
5. **Adicione fallback e limites:** Inclua WhatsApp ou voz como próxima etapa e limite a taxa de requisições para bloquear SMS pumping antes do lançamento.

## Quando a API de SMS OTP é a escolha certa

### Indicado quando

- Você implementa verificação de cadastro, login ou pagamento no seu próprio app e quer controle total do código.
- Você precisa de OTPs para os Emirados Árabes Unidos, a Arábia Saudita e outros mercados do Golfo e do Oriente Médio e Norte da África, em árabe e inglês.
- Você quer uma API para SMS agora e fallback por WhatsApp, RCS ou voz depois.
- Você prefere REST e webhooks, com SMPP disponível quando os volumes crescerem.

### Bom saber antes de começar

- Não há endpoint de verificação hospedado: sua aplicação gera, armazena e valida o código.
- O acesso de produção é analisado pela nossa equipe; não há cadastro instantâneo por autoatendimento.
- O registro de ID de remetente leva dias em alguns países, então comece antes da data de lançamento.
- Endpoints de OTP são alvo de fraude de SMS pumping; listas de países permitidos, limites de taxa e verificações antibot são responsabilidade do seu app.

## Perguntas sobre a API de SMS OTP

### Como envio um SMS OTP pela API?

Gere o código no seu backend e chame POST https://api.broadnet.me/sms/sendSms com o cabeçalho Authorization: Bearer e um corpo JSON com senderId, destinationNumber, message e messageType. A resposta é o ID da mensagem, e os status de entrega chegam ao seu webhook.

### A API gera e valida o código para mim?

Não. Sua aplicação gera o código, guarda um hash com prazo de validade e confere o que o usuário digita. Manter a verificação no seu próprio sistema significa que a lógica do código, os limites de tentativas e a trilha de auditoria ficam sob o seu controle.

### Posso enviar SMS OTP em árabe?

Sim. Defina messageType como UNICODE. O SMS em árabe comporta 70 caracteres por segmento, então mantenha a mensagem curta. Você pode chamar POST /sms/identify antes para obter a codificação e a quantidade de segmentos.

### Qual é o melhor formato de mensagem para SMS OTP?

Comece pelo código, cite sua marca, informe a validade e avise o usuário para nunca compartilhar o código, tudo em um segmento. Use um ID de remetente transacional e deixe ofertas de fora, para que as redes não filtrem a mensagem como marketing.

### O que fazer se o SMS OTP não for entregue?

Acompanhe os status do webhook para o ID da mensagem. Se não aparecer DELIVERED, ou se o usuário não digitar o código dentro do seu tempo limite, ofereça reenvio ou troque para WhatsApp ou chamada de voz. Não insista indefinidamente no mesmo número.

### Como protejo meu endpoint de OTP contra SMS pumping?

Permita apenas os países que você atende, limite a taxa por número, dispositivo e endereço IP, adicione verificação antibot nos formulários públicos e crie alertas para picos de solicitações a prefixos incomuns. Uma consulta de número antes do envio também ajuda a rejeitar números inválidos.

### Quanto custa um SMS OTP?

O SMS OTP é cobrado por segmento, na tarifa do destino. As tarifas de tabela indicativas da BroadNet por país estão nas páginas de preços de SMS, por exemplo a partir de US$ 0,0123 por segmento para os Emirados Árabes Unidos. Não há taxa de setup nem mínimo mensal; sua proposta confirma as tarifas.

### Existe um sandbox?

O acesso de teste envia para seus próprios números verificados na mesma API, então você testa a entrega e os status reais antes da produção. Não há um sandbox público separado nem cadastro instantâneo por autoatendimento.

Atualizado em: 2026-10-10