SMS-API für JavaScript und Node.js: Von nativem JSON bis zum Versand über mehrere Kanäle
Mit der SMS-API für JavaScript und Node.js von Esendex benötigen Sie lediglich einen fetch()-Aufruf und ein JSON-Objekt, um Ihre erste Nachricht zu versenden. Das standardmäßig von Ihrem Code erzeugte Format entspricht genau dem, das die API erwartet. Sie müssen weder ein npm-Paket installieren noch Datenformate konvertieren. fetch() ist seit Node.js 18 nativ integriert. Derselbe API-Aufruf unterstützt mehrere Kommunikationskanäle: SMS und RCS sowie künftig auch WhatsApp, E-Mail und Sprachanrufe. Alle Nachrichten werden über einen einzigen API-Endpunkt versendet.

Die JavaScript-SMS-API in Kürze
- Funktioniert mit der nativen fetch()-Funktion (Node.js 18+, kein npm-Paket)
- JSON als Ein- und Ausgabeformat, ohne Konvertierung
- Ein einziger Endpunkt für mehrere Kanäle:SMS und RCS (WhatsApp, E-Mail und Sprachanrufe folgen in Kürze).
- Die Integration in durchschnittlich weniger als 3 Stunden erledigt.
- Integrierte Vorlagen, Webhooks, Zeitplanung und URL-Kürzung.
- Nach ISO 27001 und Cyber Essentials zertifizierte Infrastruktur.
SMS in JavaScript über die Esendex-API versenden
Die Übermittlung erfolgt über einen POST-Aufruf an /v2/messages mit fetch(). Sie erstellen die Nachricht als JavaScript-Objekt, und die API empfängt sie im JSON-Format.
Ausführungsbereites Skript
const response = await fetch("https://api.esendex.fr/v2/messages", {
method: "POST",
headers: {
"X-Api-Key": "YOUR_KEY_HERE",
"Content-Type": "application/json"
},
body: JSON.stringify({
accountReference: "xxxxxxxxxx",
channel: "SMS",
from: "MonEntr", // Shortened to 11 chars or fewer
body: "Bonjour, votre commande #1234 a été expédiée.", // Direct string
recipients: [{ msisdn: "+33612345678" }]
})
});
console.log(`HTTP ${response.status}`);
Testen Sie Esendex kostenlos
7-tägige kostenlose Testphase.
Erfahren Sie mehr über unsere API
Entdecken Sie unsere speziell für Entwickler konzipierte API.
Dieses Skript funktioniert ab Node.js 18 (als .mjs-Datei oder mit „type“: „module“ in Ihrer package.json).
- Sie erstellen Ihre Nachricht als gewöhnliches JavaScript-Objekt.
- JSON.stringify() wandelt das Objekt in einen JSON-String um.
- fetch() sendet die Nachricht per POST-Anfrage zusammen mit Ihrem API-Schlüssel.
Empfängerformat und Nachrichteninhalt
Das Feld from enthält die Absenderkennung, die auf dem Mobiltelefon der Empfängerin oder des Empfängers angezeigt wird. Hier können Sie Ihren Unternehmensnamen oder eine dedizierte Rufnummer angeben.
Das Feld channel: Wechseln Sie zwischen SMS und RCS, indem Sie lediglich den Kommunikationskanal ändern.
Die Telefonnummern im Feld recipients müssen dem internationalen E.164-Format entsprechen. Das bedeutet, dass Sie die führende 0 durch die jeweilige Ländervorwahl ersetzen müssen. Bei einer deutschen Mobilfunknummer wird beispielsweise aus 01701234567 die Nummer +491701234567.
Statuscodes und Überwachung der Nachrichtenzustellung
Die API gibt den HTTP-Statuscode 202 zurück, wenn die Nachricht zur Verarbeitung angenommen wurde.
Mit response.json() wird die eindeutige Nachrichten-ID aus der API-Antwort ausgelesen.
Speichern Sie diese serverseitig, um den Zustellstatus jeder Nachricht über Webhooks nachverfolgen zu können.
Im Fehlerfall enthält die JSON-Antwort genauere Informationen zur Ursache. Der HTTP-Statuscode 400 weist auf ein fehlendes oder ungültiges Feld hin, während 401 einen ungültigen API-Schlüssel signalisiert.
Eine JavaScript-SMS-API ohne npm install
Mit einer Node.js-SMS-API wie der von Esendex hängt der Versand nicht von einem externen Modul ab.
Ihr JavaScript-Objekt lässt sich direkt in JSON umwandeln
JSON steht für JavaScript Object Notation. Der Request-Body Ihrer Anfrage basiert auf einem gewöhnlichen JavaScript-Objekt. Mit JSON.stringify() wird dieses für den Versand in einen JSON-String umgewandelt. Das in Ihrem Code verwendete Datenformat entspricht somit genau dem Format, das die API erwartet.
Node.js 18 integriert fetch() in seine Laufzeitumgebung
Vor Node.js 18 war für den Versand einer HTTPS-Anfrage von einem Node.js-Server ein npm-Paket wie axios, node-fetch oder got nötig.
Seit Version 18 ist fetch() direkt in Node.js integriert. Ihr Skript für den Nachrichtenversand funktioniert somit ohne zusätzliche Abhängigkeiten in der package.json.
Dank async/await bleibt der Code linear
Das Schlüsselwort await pausiert die Ausführung der umgebenden asynchronen Funktion, bis die von fetch() zurückgegebene Promise erfüllt ist. Erst danach wird die nächste Codezeile ausgeführt. So bleibt Ihr Skript übersichtlich und lässt sich Schritt für Schritt nachvollziehen – ohne verschachtelte Rückruffunktionen oder komplizierte Abläufe.
Von SMS zu RCS wechseln, ohne das Skript neu zu schreiben
Die Esendex-API unterstützt fünf Kanäle über denselben Endpunkt. In Ihrem JavaScript-Code können Sie zwischen den Kanälen wechseln, indem Sie lediglich eine Eigenschaft ändern.
Ändern Sie nur den Channel-Parameter – sonst nichts
Ihr JavaScript-Objekt enthält die Eigenschaft channel mit dem Wert „SMS“. Um eine Nachricht über RCS oder WhatsApp zu versenden, ändern Sie lediglich diesen Wert. Die Funktion fetch(), die URL und der HTTP-Header X-Api-Key bleiben unverändert.
Dieselbe Logik für alle Ihre Nachrichten
Sie bündeln den Nachrichtenversand in einer einzigen Funktion. Diese übernimmt den Kommunikationskanal als Parameter und erstellt das Objekt für den fetch()-Aufruf. SMS und RCS werden über denselben API-Aufruf versendet.
99,99 % Uptime und 20 Jahre Erfahrung mit Messaging-Netzwerken
Wenn ein fetch()-Aufruf aufgrund eines Infrastrukturproblems fehlschlägt, wird die Nachricht nicht zugestellt. Die API von Esendex basiert auf einer Netzwerkinfrastruktur, über die seit mehr als 20 Jahren geschäftliche Nachrichten versendet werden. Die angegebene Verfügbarkeit liegt bei 99,99 %. Jede Anfrage wird über das SMS-Gateway von Esendex weitergeleitet, bevor sie das Mobilfunknetz erreicht.
Entdecken Sie die Esendex-API
In Ihrer Programmiersprache
Nach Anwendungsfall
Mit der SMS-API für JavaScript und Node.js von Esendex benötigen Sie keine zusätzlichen npm-Pakete und können mehrere Kommunikationskanäle über denselben API-Aufruf nutzen. Erstellen Sie Ihr kostenloses Testkonto und versenden Sie Ihre erste Nachricht innerhalb weniger Minuten.
Häufig gestellte Fragen: Alles, was Sie über die JavaScript-SMS-API wissen müssen
Wie nutze ich eine Node.js-SMS-API ohne ein npm-Paket?
Sie senden mit der ab Node.js 18 integrierten Funktion fetch() eine POST-Anfrage an den Endpunkt /v2/messages der Esendex-API. Der Request-Body enthält Ihre Nachricht im JSON-Format. Der API-Schlüssel wird im HTTP-Header X-Api-Key übermittelt.
Muss ich Axios installieren, um die Esendex-API nutzen zu können?
Nein. Seit Node.js 18 ist eine native Unterstützung für fetch() verfügbar. Sie benötigen weder Axios noch node-fetch noch irgendeinen anderen HTTPS-Client von Drittanbietern.
Funktioniert die Esendex-API mit TypeScript?
Ja. Die API unterstützt Standard-HTTPS. Der Body enthält die Nachricht im JSON-Format, und der API-Schlüssel wird in den Header „X-Api-Key“ eingetragen.
Kann ich die API aus einer Serverless-Funktion heraus aufrufen (z. B. Vercel oder AWS Lambda)?
Ja. Die Funktion fetch() wird in modernen Serverless-Runtimes nativ unterstützt. Die Esendex-API ist stateless, was bedeutet, dass jede Anfrage in sich geschlossen ist und dasselbe Format wie ein Standard-Node.js-Skript verwendet.
Wie behandle ich Fehler beim Nachrichtenversand mit async/await?
Umschließen Sie Ihren fetch()-Aufruf mit einem try/catch-Block. Tritt bei der Verarbeitung durch die API ein Fehler auf, hat response.ok den Wert false. Weitere Details zum Fehler können Sie über response.json() abrufen. Die Response-Payload gibt dabei an, welches Feld den Fehler verursacht hat.
Wie viel kostet der Versand einer SMS über die API?
Bei Esendex richten sich die Preise nach dem Nachrichtenvolumen und den von Ihnen gewählten Kanälen. Wir erstellen gerne ein individuelles Angebot, das genau auf Ihre Bedürfnisse zugeschnitten ist.
Lassen Sie uns gemeinsam mit dem Versand starten.
Entdecken Sie das volle Potenzial unserer Mobile-Messaging-Plattform.