BroadNet
Guide rapide pour les développeurs

Envoyez votre premier SMS de test cinq minutes après avoir reçu vos identifiants.

Demandez un accès de test et nous vous répondrons sous un jour ouvré avec vos identifiants de test. Prenez ensuite le token, installez le TypeScript SDK et appelez smsSendsmsPost. Votre premier message de test atteint votre propre numéro vérifié environ cinq minutes après l'obtention de vos identifiants de test. Chaque exemple ci-dessous est prêt à être copié, et l'étape 5 détaille les points à vérifier avant la production.

De la demande à la production

Un seul parcours jusqu’à votre premier message, avec le délai de chaque étape.

  1. 01

    Demander un accès de test

    Réponse sous 1 jour ouvré

    Un ingénieur messagerie vous répond avec vos identifiants de test et planifie un appel de 30 minutes sur vos pays, volumes et cas d'usage.

  2. 02

    Premier message de test

    Environ 5 minutes après réception des identifiants

    Envoyez un message de test vers votre propre numéro vérifié avec le code quickstart. L'accusé de réception (DLR) est renvoyé vers votre webhook.

  3. 03

    Intégration

    2–5 jours ouvrés

    Développez et testez avec vos identifiants de test sur le même point de terminaison que les exemples de code. Un ingénieur BroadNet vous accompagne sur REST ou SMPP.

  4. 04

    Approbation

    3–10 jours ouvrés

    L'identité de l'expéditeur, l'objet du trafic et les règles de destination sont examinés, et les Sender IDs sont enregistrés auprès de chaque régulateur, en parallèle de votre intégration.

  5. 05

    Production

    Jour de bascule

    L'accès à la production et les routes sont activés pour votre compte. Votre intégration appelle déjà https://api.broadnet.me.

Au total : 5 à 15 jours ouvrés de la demande à la production pour la plupart des marchés ; davantage là où le délai d’enregistrement du Sender ID imposé par le régulateur est plus long.

SchémaComment un message A2P parvient au téléphone
  1. Votre applicationEnvoi via REST API ou SMPP
  2. Plateforme BroadNetValide, route et facture chaque message
  3. SMSC de l’opérateurConnexion directe opérateur
  4. Terminal de l'abonnéLe message est livré
L'accusé de réception (DLR) remonte le même chemin vers votre webhook
Étape 1·30 sec

Obtenez votre jeton d'accès.

Votre jeton d'accès est fourni avec vos identifiants de test : demandez un accès de test et nous vous répondrons sous un jour ouvré. Enregistrez-le dans la variable d'environnement BROADNET_TOKEN et transmettez-le dans l'en-tête Authorization: Bearer lors de chaque appel. Tous les exemples de cette page utilisent l'URL de base de production, 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
Testez-le

Envoyez un SMS de test à votre propre numéro vérifié avec POST /sms/sendSms. Un code 200 OK dont le corps contient un ID de message confirme que le jeton fonctionne avant que vous ne rédigiez le reste de votre code.

step 1.broadnet.me
Étape 2·45 sec

Installez le SDK.

BroadNet propose un SDK officiel pour TypeScript et Node.js : npm install @broadnet/cpaas-sdk axios. Il est généré à partir de la spécification OpenAPI BroadNet. Pour tout autre langage, vous pouvez appeler l'API REST avec votre bibliothèque HTTP habituelle ou générer un client à partir de la spécification OpenAPI.

Install
npm install @broadnet/cpaas-sdk axios

export BROADNET_TOKEN=your_access_token
bash
node >= 18
Testez-le

Importez Configuration et SMSSMSApi depuis @broadnet/cpaas-sdk. Si l'import se résout et que la vérification des types passe, vous êtes prêt à envoyer.

step 2.broadnet.me
Étape 3·60 sec

Envoyez votre premier message.

Créez une instance de SMSSMSApi avec votre URL de base et votre jeton, appelez la smsSendsmsPost avec senderId, destinationNumber, message et messageType, puis enregistrez le résultat. Le corps de la réponse contient l'identifiant du message; conservez-le pour le suivi de la livraison.

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
Testez-le

Vérifiez votre téléphone. Si vous avez reçu le SMS, le plus dur est fait : il ne reste plus qu’à peaufiner les détails techniques.

step 3.broadnet.me
Étape 4·90 sec

Recevoir le statut de la livraison.

BroadNet envoie le statut de livraison à l'URL du webhook configurée sur votre compte : SUBMITTED, SENT, DELIVERED, READ sur les canaux qui signalent les lectures, ou FAILED et REJECTED. Enregistrez chaque mise à jour, répondez rapidement avec un code 2xx et traitez-la de manière asynchrone.

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

Confirmé sur le téléphone. Les mises à jour précédentes, SUBMITTED et SENT, arrivent au fur et à mesure que le message circule sur le réseau.

après la livraison
READ

Ouvert par le destinataire, sur des canaux qui signalent les lectures, tels que WhatsApp.

à la lecture
FAILED / REJECTED

Message non distribué. Veuillez vérifier le format du numéro et votre identifiant d'expéditeur avant de renvoyer le message.

état final
Testez-le

Envoyez un message à votre téléphone, puis consultez le journal de votre serveur pour la mise à jour du statut DELIVERED.

step 4.broadnet.me
Étape 5·ne fait pas partie des cinq minutes

Avant la production.

La production s'ouvre une fois l'approbation obtenue : identité de l'expéditeur, finalité du trafic et identifiants d'expéditeur, sous 3 à 10 jours ouvrés, en parallèle de votre intégration. Une fois l'approbation obtenue, le même code envoie le trafic de production. D'ici là, gardez le jeton hors du contrôle de version, configurez les webhooks de statut de livraison et définissez votre politique de nouvelles tentatives.

  • 01
    Déplacez les secrets vers votre environnement

    Conservez BROADNET_TOKEN dans une variable d'environnement ou votre gestionnaire de secrets, jamais dans un système de contrôle de version ni dans le code côté client. Remplacez-le immédiatement en cas de fuite.

  • 02
    Relancez en toute sécurité et surveillez votre solde

    En cas d'erreur réseau ou de réponse 5xx, une réémission exponentielle est appliquée. Chaque envoi accepté génère un identifiant de message; conservez-le et vérifiez l'état de la livraison au lieu de renvoyer le message sans discernement. Les envois groupés indiquent votre crédit restant dans chaque réponse.

  • 03
    Figer la version du SDK

    Spécifiez une version précise @broadnet/cpaas-sdk dans package.json et effectuez les mises à jour avec précaution. Les chemins API ne comportent pas de préfixe de version; veuillez donc suivre les modifications indiquées dans le journal des modifications et la spécification OpenAPI.

  • 04
    Gérer les erreurs par code d'état

    Les erreurs renvoient un code d'état HTTP et un corps de réponse ExceptionResponse contenant l'état, l'erreur, le message, errorCode et requestUri. Corrigez les erreurs 400 et 401; gérez les erreurs 5xx en effectuant une nouvelle tentative avec un délai d'attente.

  • 05
    Définissez votre politique de nouvelle tentative

    Par défaut : délai d’attente exponentiel pour les erreurs 5xx et les erreurs réseau, jamais pour les erreurs 4xx. Après un délai d’attente, vérifiez l’état de la livraison avant de renvoyer le message, car la première requête a peut-être déjà été acceptée.

Testez-le

Appliquez la liste de contrôle ci-dessous à votre code. Lorsque toutes les cases sont cochées, votre intégration est prête pour la production dès que l'approbation est finalisée.

step 5.broadnet.me
Conçu pour la production dès le premier jour

Les mêmes chemins de code traitent plus de 300 millions de messages par jour.

Votre trafic de test n'est pas une simulation. Chaque requête, clé et webhook configuré lors des étapes précédentes passe par la même infrastructure de routage, de facturation et de conformité que notre trafic entreprise — auditée annuellement selon les certifications ci-dessous.

ISO 27001
sécurité de l'information
ISO 9001
Gestion de la qualité
ISO 22301
continuité des activités
RGPD
Alignement · Résidence des données de l'UE
HIPAA
Aligné · BAA sur demande
SOC 2
Type II · audit annuel
Résidence des données UE + Émirats arabes unisSLA de disponibilité de l'API de 99,99 %Une seule URL de base pour les environnements de test et de productionWebhooks de statut de livraison
Questions que se posent les acheteurs

Questions sur le démarrage rapide

POST https://api.broadnet.me/sms/sendSms, avec un en-tête Authorization: Bearer et un corps JSON contenant senderId, destinationNumber, message et messageType (TEXT ou UNICODE). La réponse est l'identifiant du message. L'ancienne API HTTP sous /websmpp reste disponible pour les intégrations de l'ère SMPP.

Demandez un accès de test sur /signup. Un ingénieur BroadNet vous répond sous un jour ouvré avec vos identifiants de test : le jeton d'accès à envoyer dans un en-tête Authorization: Bearer, et l'adresse à laquelle envoyer le trafic de test. Votre premier message de test peut partir environ cinq minutes après leur réception.

Un seul SDK officiel : @broadnet/cpaas-sdk pour TypeScript et Node.js, sur npm. Dans tout autre langage, appelez directement la REST API en HTTPS, ou générez un client à partir de la spécification OpenAPI (/developers/openapi.yaml).

Question non posée ici ? Demandez à notre équipe d'ingénieurs

Accès de test · réponse sous un jour ouvré

Cinq marches plus bas.
Il ne me reste plus qu'une clé.

Testez sur vos propres numéros vérifiés, déployez l'intégration, puis passez au trafic réel depuis la même console. Même SDK, mêmes points de terminaison (endpoints) et mêmes SLA que ceux qui supportent plus de 300 millions de messages par jour.

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