BroadNet
Guia rápido para desenvolvedores

Envie o seu primeiro SMS de teste cinco minutos após receber as credenciais.

Solicite acesso de teste e responderemos num prazo de um dia útil com as suas credenciais de teste. Depois, utilize o token, instale o TypeScript SDK e chame smsSendsmsPost. A sua primeira mensagem de teste chega ao seu próprio número verificado cerca de cinco minutos após você receber as credenciais de teste. Cada exemplo abaixo está pronto para copiar, e a etapa 5 aborda o que verificar antes da produção.

Do pedido à produção

Um único caminho até à sua primeira mensagem, com o tempo de cada etapa.

  1. 01

    Solicitar acesso de teste

    Respondemos em 1 dia útil

    Um engenheiro de mensagens responde com as suas credenciais de teste e agenda uma chamada de 30 minutos sobre os seus países, volumes e caso de uso.

  2. 02

    Primeira mensagem de teste

    Cerca de 5 minutos após as credenciais

    Envie uma mensagem de teste para o seu próprio número verificado utilizando o código quickstart. O relatório de entrega (DLR) é enviado para o seu webhook.

  3. 03

    Integração

    2–5 dias úteis

    Construa e teste com as suas credenciais de teste no mesmo endpoint dos exemplos de código. Um engenheiro da BroadNet trabalhará em conjunto com você via REST ou SMPP.

  4. 04

    Aprovação

    3–10 dias úteis

    A identidade do remetente, o propósito do tráfego e as regras de destino são analisados, e os Sender IDs são registados junto de cada regulador, em paralelo com a sua integração.

  5. 05

    Produção

    Dia da passagem a produção

    O acesso e as rotas de produção já estão ativos para a sua conta. A sua integração já chama o https://api.broadnet.me.

Total: 5–15 dias úteis do pedido à produção na maioria dos mercados; mais onde o registo do Sender ID junto do regulador demora mais.

DiagramaComo uma mensagem A2P chega ao telefone
  1. A sua aplicaçãoEnvia via REST API ou SMPP
  2. Plataforma BroadNetValida, encaminha e fatura cada mensagem
  3. SMSC da operadoraConexão direta com a operadora
  4. Dispositivo do assinanteA mensagem é entregue
O relatório de entrega (DLR) regressa pelo mesmo caminho até o seu webhook
Passo 1·30 sec

Obtenha o seu token de acesso.

O seu token de acesso é fornecido com as suas credenciais de teste: solicite o acesso de teste e responderemos em até um dia útil. Armazene-o na variável de ambiente BROADNET_TOKEN e envie-o num cabeçalho Authorization: Bearer em cada chamada. Todos os exemplos nesta página utilizam a URL base de produção, https://api.broadnet.me.

your BroadNet account · access token
Access token
quickstart-default
active
84f1a02e3c7d4b91a7e0•••••••••••• copy
Header
Bearer
Env var
BROADNET_TOKEN
Base URL
api.broadnet.me
$ curl -X POST https://api.broadnet.me/sms/sendSms -H "Authorization: Bearer $BROADNET_TOKEN" …
200 OK
Teste-o

Envie um SMS de teste para o seu próprio número verificado com POST /sms/sendSms. Um status 200 OK, cujo corpo é um ID de mensagem, confirma que o token funciona antes de escrever qualquer outro código.

step 1.broadnet.me
Etapa 2·45 sec

Instale o SDK.

BroadNet possui um SDK oficial para TypeScript e Node.js: npm install @broadnet/cpaas-sdk axios. Ele é gerado a partir da especificação OpenAPI BroadNet. Em qualquer outra linguagem, chame a API REST com a sua biblioteca HTTP usual ou gere um cliente a partir da especificação OpenAPI.

Install
npm install @broadnet/cpaas-sdk axios

export BROADNET_TOKEN=your_access_token
bash
node >= 18
Teste-o

Importe Configuration e SMSSMSApi de @broadnet/cpaas-sdk. Se a importação for resolvida e a verificação de tipos passar, você está pronto para enviar.

step 2.broadnet.me
Etapa 3·60 sec

Envie a sua primeira mensagem.

Crie uma API SMSSMSApi com a sua URL base e token, chame o smsSendsmsPost com senderId, destinationNumber, message e messageType e registe o resultado. O corpo da resposta é o ID da mensagem; guarde-o para consultar o status de entrega posteriormente.

POST /sms/sendSms
// npm install @broadnet/cpaas-sdk axios
import { Configuration, SMSSMSApi } from "@broadnet/cpaas-sdk";

const sms = new SMSSMSApi(
  new Configuration({
    basePath: "https://api.broadnet.me",
    accessToken: process.env.BROADNET_TOKEN!,
  }),
);

const res = await sms.smsSendsmsPost({
  sMSSmsRequest: {
    senderId: "BroadNet",
    destinationNumber: "447700900123",
    message: "Your verification code is 482913",
    messageType: "TEXT",
  },
});

console.log(res.data); // message ID
javascript
200 OK · message ID
Response · 200 OK
body · message ID
HTTP/1.1 200 OK

2603121407537573731
Teste-o

Confira o telemóvel que você tem em mãos. Se você recebeu o SMS, a parte mais difícil já passou — tudo o que vem a seguir é apenas um ajuste fino.

step 3.broadnet.me
Passo 4·90 sec

Receba o status da entrega.

A BroadNet envia o status de entrega para o URL do webhook configurado na sua conta: SUBMITTED, SENT, DELIVERED, READ nos canais que reportam leituras, ou FAILED e REJECTED. Armazene cada atualização, responda rapidamente com um código 2xx e processe-a de forma assíncrona.

POST /webhooks/broadnet
import express from "express";

const app = express();

app.post("/webhooks/broadnet", express.json(), async (req, res) => {
  // Store the status update first, then acknowledge with a 2xx.
  // Statuses: SUBMITTED, SENT, DELIVERED, READ, FAILED, REJECTED.
  await db.statusUpdates.insert({ receivedAt: new Date(), body: req.body });
  res.sendStatus(200);
});
javascript
delivery status · JSON
DELIVERED

Confirmado no aparelho. As atualizações anteriores, SUBMITTED e SENT, chegam conforme a mensagem se move pela rede.

após a entrega
READ

Aberto pelo destinatário, em canais que relatam leituras, como WhatsApp.

ao ler
FAILED / REJECTED

Mensagem não entregue. Verifique o formato do número e o seu ID de remetente antes de enviar novamente.

status final
Teste-o

Envie uma mensagem para o seu telemóvel e, em seguida, verifique o registo do servidor para a atualização do status DELIVERED.

step 4.broadnet.me
Etapa 5·não faz parte dos cinco minutos

Antes da produção.

A produção é liberada após a aprovação: identidade do remetente, finalidade do tráfego e IDs de remetente, de 3 a 10 dias úteis, em paralelo com a sua integração. Uma vez aprovado, o mesmo código enviará o tráfego de produção. Antes disso, mantenha o token fora do controlo de versão, configure os webhooks de status de entrega e defina a sua política de reenvio.

  • 01
    Transfira segredos para o seu ambiente.

    Mantenha BROADNET_TOKEN numa variável de ambiente ou no seu gestor de segredos, nunca no controlo de versão ou no código do lado do cliente. Substitua-o imediatamente se houver alguma fuga.

  • 02
    Tente novamente com segurança e acompanhe o seu saldo

    Tente novamente erros de rede e respostas 5xx com recuo exponencial. Cada envio aceito devolve um ID de mensagem; portanto, armazene-o e verifique o status de entrega em vez de reenviar às cegas. Os envios em lote informam os seus créditos restantes em cada resposta.

  • 03
    Fixe a versão SDK

    Defina a versão exata @broadnet/cpaas-sdk no package.json e atualize-o cuidadosamente. Os caminhos API não possuem prefixo de versão, portanto, acompanhe as alterações no changelog e na especificação OpenAPI.

  • 04
    Tratar erros por código de status

    Os erros devolvem um código de status HTTP e um corpo de resposta ExceptionResponse com status, erro, mensagem, errorCode e requestUri. Corrige erros 400 e 401; tenta novamente erros 5xx com um intervalo de espera (backoff).

  • 05
    Defina a sua política de novas tentativas.

    Padrão: recuo exponencial em casos de erros 5xx e de rede, nunca em casos de erros 4xx. Após um tempo limite, verifique o status de entrega antes de reenviar, pois a primeira solicitação pode já ter sido aceita.

Teste-o

Execute o checklist abaixo no seu código. Quando todas as caixas estiverem marcadas, a sua integração estará pronta para a produção assim que a aprovação for concluída.

step 5.broadnet.me
Projetado para produção desde o primeiro dia.

Os mesmos caminhos de código processam mais de 300 milhões de mensagens por dia.

O seu tráfego de teste não é uma simulação. Cada requisição, chave e webhook que você configurou nas etapas acima passa pela mesma estrutura de encaminhamento, faturação e conformidade que processa o nosso tráfego corporativo — auditada anualmente sob as certificações abaixo.

ISO 27001
Segurança da informação
ISO 9001
Gestão da qualidade
ISO 22301
Continuidade dos negócios
RGPD
Alinhado · Residência de dados na UE
HIPAA
Alinhado · BAA sob encomenda
SOC 2
Tipo II · auditoria anual
Residência de dados na UE e nos Emirados Árabes UnidosSLA de disponibilidade da API de 99,99%Uma única URL base para teste e produçãoWebhooks de status de entrega
Perguntas frequentes dos compradores

Perguntas sobre o início rápido

POST https://api.broadnet.me/sms/sendSms, com um cabeçalho Authorization: Bearer e um corpo JSON com senderId, destinationNumber, message e messageType (TEXT ou UNICODE). A resposta é o ID da mensagem. A API HTTP antiga em /websmpp continua disponível para integrações da era SMPP.

Peça acesso de teste em /signup. Um engenheiro da BroadNet responde no prazo de um dia útil com as suas credenciais de teste: o token de acesso que envia num cabeçalho Authorization: Bearer e o endereço para onde enviar o tráfego de teste. A sua primeira mensagem de teste pode sair cerca de cinco minutos depois de as receber.

Um único SDK oficial: @broadnet/cpaas-sdk para TypeScript e Node.js, no npm. Em qualquer outra linguagem, chame diretamente a REST API por HTTPS ou gere um cliente a partir da especificação OpenAPI (/developers/openapi.yaml).

A sua pergunta não está aqui? Consulte a nossa equipa de engenharia

Acesso de teste · resposta no prazo de um dia útil

Cinco degraus para baixo.
Só falta uma chave.

Teste nos seus próprios números verificados, implemente a integração e, em seguida, passe para o tráfego real através do mesmo console. O mesmo SDK, os mesmos endpoints e os mesmos SLAs que processam mais de 300 milhões de mensagens por dia.

$ curl -X POST https://api.broadnet.me/sms/sendSms -H "Authorization: Bearer $BROADNET_TOKEN" -d '{ "senderId": "…", "destinationNumber": "…", "message": "…", "messageType": "TEXT" }'