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.
Un seul parcours jusqu’à votre premier message, avec le délai de chaque étape.
- 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.
- 02
Premier message de test
Environ 5 minutes après réception des identifiantsEnvoyez 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.
- 03
Intégration
2–5 jours ouvrésDé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.
- 04
Approbation
3–10 jours ouvrésL'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.
- 05
Production
Jour de basculeL'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.
- Votre applicationEnvoi via REST API ou SMPP
- Plateforme BroadNetValide, route et facture chaque message
- SMSC de l’opérateurConnexion directe opérateur
- Terminal de l'abonnéLe message est livré
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.
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.
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.
npm install @broadnet/cpaas-sdk axios
export BROADNET_TOKEN=your_access_tokenImportez 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.
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.
// 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 IDHTTP/1.1 200 OK
2603121407537573731Vé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.
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.
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);
});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.
Ouvert par le destinataire, sur des canaux qui signalent les lectures, tels que WhatsApp.
Message non distribué. Veuillez vérifier le format du numéro et votre identifiant d'expéditeur avant de renvoyer le message.
Envoyez un message à votre téléphone, puis consultez le journal de votre serveur pour la mise à jour du statut DELIVERED.
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.
- 01Dé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.
- 02Relancez 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.
- 03Figer 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.
- 04Gé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.
- 05Dé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.
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.
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.
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
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.