Nachrichten-ID (früher SMS-ID)
Jede über BulkGate gesendete Nachricht erhält ihre eigene Nachrichten ID. Sie ist der einzige Wert, mit dem wir eine bestimmte Nachricht zurückverfolgen können – im Portal, in der API-Antwort und beim Zustellanbieter. Früher hieß sie SMS-ID; es ist derselbe Wert, er wurde nur unterwegs umbenannt, weil wir schon lange nicht mehr nur SMS versenden.
Was die Nachrichten-ID ist
Die Nachrichten ID ist eine Textkennung einer Nachricht an einen Empfänger.
- BulkGate vergibt sie automatisch in dem Moment, in dem die Nachricht angenommen wird. Sie können sie weder selbst wählen noch nachträglich ändern.
- Sie gilt für eine Nachricht an eine Nummer. Wenn Sie eine Kampagne an tausend Nummern senden, entstehen tausend verschiedene Werte der
Nachrichten ID, nicht ein gemeinsamer. - Ihr Aufbau unterscheidet sich je nach Schnittstelle, über die Sie senden. Behandeln Sie sie als undurchsichtige Zeichenkette – leiten Sie daraus weder das Datum noch den Kanal oder sonst etwas ab und versuchen Sie nie, selbst eine zu erzeugen.
Wenn Sie Nachrichten mit einem eigenen Wert kennzeichnen möchten – einer Bestellnummer, einer Kunden-ID –, ist dafür der Tag (TAG) gedacht, nicht die Nachrichten ID. Den Unterschied beschreibt der Abschnitt Worin sie sich von den anderen Kennungen unterscheidet.
Warum sie früher SMS-ID hieß
Der Name SMS-ID stammt aus der Zeit, als BulkGate nur SMS versendet hat. Heute laufen Viber, WhatsApp und RCS auf demselben Weg, deshalb heißt die Kennung Nachrichten ID – im Portal und in den neueren Schnittstellen.
Die älteren APIs haben ihr Feld jedoch nicht umbenannt, um bestehende Integrationen nicht zu beschädigen:
| Wo | Wie das Feld heißt |
|---|---|
| Portal | Nachrichten ID |
Simple API, Advanced API Version 1.0 |
sms_id |
Advanced API Version 2.0, Integration API, Einmalpasswörter |
message_id |
| Zustellbestätigung (Webhook) | smsID |
In allen Fällen ist es derselbe Wert. Wenn Sie also sms_id aus einer Antwort der Simple API nehmen und im Verlauf unter Nachrichten ID danach suchen, finden Sie genau diese Nachricht.
Wo Sie die ID im Portal finden
- Klicken Sie im Menü auf
Berichte - Klicken Sie auf
Geschichte - Klicken Sie auf die Zeile der Nachricht – das Detail klappt auf
- Die
Nachrichten IDsteht rechts im Detail; ein Klick markiert den ganzen Wert, sodass Sie ihn kopieren können
Es funktioniert auch umgekehrt: Wenn Sie die Nachrichten ID bereits haben und die Nachricht finden möchten, öffnen Sie über der Tabelle den Filter und fügen Sie den Wert in das Feld Nachrichten ID ein. Derselbe Wert ist auch im Export des Verlaufs als CSV enthalten.
Was der Verlauf anzeigt und wie Sie ihn filtern, beschreibt die Seite Verlauf.
Der Nachrichtentext wird im Verlauf nicht unbegrenzt aufbewahrt – ältere Einträge zeigen stattdessen Diese Nachricht ist abgelaufen. Die Nachrichten ID und die übrigen Angaben bleiben erhalten.
Wo Sie die ID in der API-Antwort finden
Die Schnittstellen geben die Nachrichten ID direkt in der Antwort auf die Sendeanfrage zurück – das ist der einzige Moment, in dem Sie sie programmatisch erhalten. Speichern Sie sie daher in diesem Schritt.
| Schnittstelle | Wie das Feld heißt |
|---|---|
| Simple API | sms_id |
| Advanced API `1.0` | sms_id |
| Advanced API `2.0` | message_id |
| Integration API | message_id |
| Einmalpasswörter | message_id |
Daneben gibt jede von ihnen auch ein Array part_id zurück – beschrieben im Abschnitt Was part_id ist.
Beim Massenversand enthält die Antwort ein Array response mit einem eigenen Eintrag für jeden Empfänger. Die Nachrichten ID endet dann mit der laufenden Nummer der Nachricht innerhalb des Stapels:
Was part_id ist
Eine lange SMS wird nicht in einem Stück an das Netz des Betreibers übergeben – sie wird in mehrere einzelne Nachrichten aufgeteilt, die das Telefon des Empfängers wieder zusammensetzt. Jeder dieser Teile hat eine eigene ID, und part_id ist die Liste dieser IDs. Wann und warum eine Nachricht aufgeteilt wird, beschreibt die Seite Nachrichtenverkettung.
Für das Array gelten drei Regeln:
- Das letzte Element entspricht immer der
Nachrichten ID– es trägt kein Suffix. - Die vorangehenden Teile haben das Suffix
_1,_2usw., in der Reihenfolge, in der die Nachricht zusammengesetzt wird. - Eine nicht aufgeteilte Nachricht hat in
part_idein einziges Element, identisch mit derNachrichten ID. Das gilt für jede einteilige SMS sowie für alle Viber-, WhatsApp- und RCS-Nachrichten – diese werden nie in Teile aufgeteilt.
Die Antwort für eine in drei Teile aufgeteilte SMS sieht also so aus:
Jeder Teil wird als eigene SMS berechnet. Die Anzahl der Elemente in part_id ist daher auch die Anzahl der Nachrichten, die Sie bezahlen – im obigen Beispiel drei, obwohl Sie eine gesendet haben.
Für die Zuordnung von Antworten und Zustellbestätigungen genügt die Nachrichten ID. Die part_id ist nützlich, wenn Sie schon beim Senden wissen möchten, in wie viele Teile die Nachricht zerfallen ist, ohne darauf zu warten, dass sie im Verlauf erscheint.
Wo Sie die ID im Webhook finden
Die Zustellbestätigung kommt an die von Ihnen eingestellte Adresse, und die Nachrichten ID steht in ihrem Parameter smsID. Damit ordnen Sie die Bestätigung der gesendeten Nachricht zu.
- Einzeln kommt die Anfrage per
GETmit den Werten im Query-String – siehe Zustellbestätigung. - Gesammelt kommt eine einzige
POST-Anfrage mit einem Array von Einträgen im FormatJSON– siehe Gesammelte Zustellbestätigung.
Wo die Adresse für Zustellbestätigungen eingestellt wird, beschreibt die Seite Webhooks.
Eine Nachricht kann mehrere Bestätigungen mit derselben smsID auslösen – der Status 2 bedeutet, dass die Nachricht beim Betreiber in der Warteschlange steht und das Ergebnis später eintrifft. Rechnen Sie damit, denselben Wert mehrmals zu sehen.
Eingehende Nachrichten und Antworten, die Sie an status mit dem Wert 10 erkennen, haben keinen Parameter smsID. Sie sind keine Bestätigung für eine von Ihnen gesendete Nachricht, sondern eine neue Nachricht des Empfängers.
Wofür die Nachrichten-ID verwendet wird
- Meldung eines Zustellproblems. Ohne die
Nachrichten IDkönnen wir eine bestimmte Nachricht beim Zustellanbieter nicht zurückverfolgen. Das gesamte Vorgehen beschreibt die Seite Die Nachricht wurde nicht zugestellt – einer Meldung können Sie bis zu drei verschiedene Werte derNachrichten IDbeifügen. - Zuordnung im eigenen System. Speichern Sie die
Nachrichten IDaus der API-Antwort zusammen mit der Bestellung oder dem Kunden und ordnen Sie eingehende Zustellbestätigungen über den ParametersmsIDzu. - Suche einer Nachricht im Verlauf. Die
Nachrichten IDist der einzige Filter, der genau zu einer Nachricht führt; über die Nummer oder die Kampagne finden Sie mehrere.
Worin sie sich von den anderen Kennungen unterscheidet
Das Nachrichtendetail im Verlauf zeigt neben der Nachrichten ID weitere Kennungen. Sie lassen sich leicht verwechseln, beantworten aber jeweils eine andere Frage:
| Kennung | Was sie kennzeichnet | Wer sie festlegt |
|---|---|---|
Nachrichten ID |
Eine Nachricht an einen Empfänger | BulkGate |
Kampagnen-ID |
Eine ganze Kampagne, also alle zusammen gesendeten Nachrichten | BulkGate |
Tag (TAG) |
Alles, was Sie selbst kennzeichnen – eine Bestellung, einen Kunden, einen Skriptlauf | Sie |
Application ID |
Die Anwendung, aus der die Nachricht gesendet wurde | BulkGate |
Den Tag (TAG) legen Sie als einzige dieser Kennungen selbst fest. Wenn Sie ihn beim Senden ausfüllen, können Sie den Verlauf später danach filtern, ohne eine Nachrichten ID zu kennen – praktisch, wenn Sie alle Nachrichten zu einer Bestellung finden müssen.
Vielen Dank für Ihr Feedback.