Ir para o conteúdo
OmniChannels.ai

APIs e SMPP

Como integrar envio de SMS no meu app com uma API?

Atualizado em

Resposta curta

Para integrar envio de SMS em um app, chame a API de SMS do fornecedor pelo seu backend, com token de acesso, número do destinatário em formato internacional, ID de remetente (Sender ID) aprovado e o texto. Guarde o ID de mensagem retornado, receba os status de entrega em um webhook e trate erros, novas tentativas e limites de taxa antes do go-live.

Etapas da integração

  1. Obtenha credenciais de teste e cadastre os números de teste que vão receber as mensagens.
  2. Guarde o token da API em um gerenciador de segredos ou variável de ambiente no servidor, nunca em app mobile ou código de navegador.
  3. Armazene os números no formato E.164 e converta-os para o formato que a API espera.
  4. Escolha a codificação: texto GSM-7 ou Unicode para árabe, emoji e outras escritas.
  5. Envie a mensagem e salve o ID retornado junto com o seu próprio registro.
  6. Configure um webhook para receber os status de entrega.
  7. Implemente novas tentativas com backoff para respostas 429 e 5xx e registre IDs de remetente em cada país que exigir.

Erros a evitar

  • Chamar a API pelo app cliente, o que expõe o token para qualquer pessoa.
  • Enviar números com sinal de mais, espaços ou zero nacional à esquerda quando a API espera só dígitos.
  • Deixar uma única aspa curva ou emoji mudar a mensagem inteira para Unicode, o que reduz os caracteres por segmento.
  • Repetir o envio às cegas após um timeout. Se a API não tiver chave de idempotência, registre cada envio antes e consulte o status antes de reenviar.
  • Ignorar respostas 429 em vez de aguardar o tempo do header Retry-After.

Exemplo: uma requisição de SMS

Na OmniChannels.ai, você envia um SMS com POST https://api.broadnet.me/sms/sendSms, um header Authorization: Bearer e um corpo JSON. Uma chamada bem-sucedida retorna 200 com o ID da mensagem em texto simples. O acesso de teste é liberado após uma breve solicitação e envia para os seus próprios números verificados; não há cadastro instantâneo em autoatendimento.

CampoExemploObservação
senderIdOmniDemoSeu ID de remetente aprovado
destinationNumber447700900123Código do país mais o número, só dígitos
messageYour code is 482913O texto
messageTypeTEXTTEXT para GSM-7, UNICODE para árabe e emoji

Fontes oficiais