Qualifizieren Sie eine Marke, bevor Sie deren Kampagne registrieren
Eine 10DLC-Kampagne beschreibt die Nachrichten, die ein registriertes Unternehmen senden möchte, wie Empfänger einwilligen und wie sie Hilfe erhalten oder Nachrichten stoppen können. Diese API erstellt den Registereintrag. Der Abschluss der Produktions-Carrier-Aktivierung ist ein separater Kontoeinrichtungsschritt. Verwenden Sie eine eigene Marke aus Markenregistrierung, laden Sie dann deren verfügbare Anwendungsfälle und für den ausgewählten Anwendungsfall die aktuellen Anforderungen.
Verwenden Sie das aktuelle Qualifizierungsergebnis, um Unteranwendungsfälle, zulässige Netzwerkkennungen, Nachrichtenbeispiele und Opt-in-/Opt-out-/Hilfe-Erklärungen auszuwählen. Anforderungen können je nach Marke und Netz unterschiedlich sein. Reichen Sie nicht die Kennungen aus dem Beispiel ein und kopieren Sie dessen Einwilligungsbeschreibung nicht für ein Unternehmen mit anderem Verfahren.
Halten Sie Test- und Produktionsumgebung getrennt
Für eine Testübung verwenden Sie Ihre eigene Testmarke und einen aktuellen Anwendungsfall, für den sie qualifiziert ist. Verwenden Sie TRIAL nur, wenn es von dieser Qualifizierung angeboten wird. Das Portal prüft, ob die ausgewählte Marke und die Kampagnenumgebung übereinstimmen. Eine direkte API-Anfrage führt die vollständige Assistentenvalidierung des Portals nicht für Sie aus, daher bewahren Sie diese Trennung in Ihrer Integration.
Die Erstellung einer Produktionskampagne ist kostenpflichtig und macht eine Nummer nicht automatisch versandbereit. Halten Sie die Kampagnenumgebung konsistent mit ihrer Marke und prüfen Sie Gebühr und geltende Bedingungen, bevor Sie eine Kampagne im Echtbetrieb erstellen.
Übermitteln Sie das Kampagnen-JSON
Bereiten Sie campaign.json mit Ihren qualifizierten Werten vor. R000000 bedeutet kein Reseller. Verwenden Sie ihn nur, wenn dies die beabsichtigte Konfiguration ist. Für die normale MultiTEL-Reseller-Konfiguration beziehen Sie die zulässige Reseller-Kennung MultiTEL LLC aus der Reseller-Sammlung Ihres Kontos oder dem Portalvorbereitungsablauf, statt die Kennung einer anderen Person fest zu codieren.
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
'https://api.multitel.net/tcr/v2/reseller?companyName=MultiTEL%20LLC&recordsPerPage=500'Das folgende JSON veranschaulicht eine Testkampagne für eine eigene Testmarke. Ersetzen Sie Marke, Anwendungsfall, Reseller und Einwilligungstext durch die Werte, die für Ihren Test tatsächlich qualifiziert sind.
{
"brandId": "B123ABC",
"channelId": "10DLC",
"usecase": "TRIAL",
"subUsecases": [],
"resellerId": "R000000",
"description": "Trial account notices requested by users of the example application.",
"messageFlow": "Test users explicitly select an unchecked consent box before requesting these trial notices.",
"sample1": "Example application: your requested account notice is available. Reply STOP to stop notices.",
"subscriberOptin": true,
"optinKeywords": "START",
"optinMessage": "You are subscribed to the example application's requested account notices.",
"subscriberOptout": true,
"optoutKeywords": "STOP",
"optoutMessage": "You will no longer receive the example application's account notices.",
"subscriberHelp": true,
"helpKeywords": "HELP",
"helpMessage": "For help with example account notices, contact support@example.invalid.",
"embeddedLink": false,
"embeddedPhone": false,
"numberPool": false,
"ageGated": false,
"directLending": false,
"termsAndConditions": true,
"autoRenewal": false,
"mnoIds": [],
"referenceId": "your-trial-reference"
}Setzen Sie termsAndConditions nur dann auf true, nachdem die berechtigte Person die geltenden Bedingungen geprüft und akzeptiert hat. Das Beispiel ist keine Einwilligung in Ihrem Namen. Verwenden Sie boolesche JSON-Werte für die Kennzeichen, keine Zeichenfolgen in Anführungszeichen.
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $IDEMPOTENCY_KEY" \
--data-binary @campaign.json \
'https://api.multitel.net/tcr/v2/campaignBuilder'Kampagnenfelder und bedingte Anforderungen
| Felder | Was anzugeben ist |
|---|---|
| brandId, channelId, usecase | Ihre eigene Marke, Kanal 10DLC und ein zulässiger aktueller Anwendungsfallcode. Verwenden Sie Codes aus der Qualifizierung, keine übersetzten Bezeichnungen. |
| subUsecases | Eine Liste zulässiger Unteranwendungsfallcodes. Beachten Sie Mindest- und Höchstanzahl der ausgewählten Qualifizierung. |
| resellerId | Eine zulässige Reseller-Kennung. Die kontoeigene Route akzeptiert eigene Reseller, ihren konfigurierten gemeinsam genutzten Reseller oder den beabsichtigten Wert ohne Reseller. Ein fremder Reseller wird abgelehnt. |
| description, messageFlow | Beschreiben Sie den tatsächlichen Zweck und wie die Einwilligung eingeholt wird. Jeder Wert soll 40–4096 Zeichen enthalten. Nennen Sie die echte Benutzeraktion, das Formular oder den Prozess. Erfinden Sie keine Einwilligung, die Ihre Anwendung nicht einholt. |
| sample1 … sample5 | Repräsentative Nachrichten, normalerweise jeweils 20–1024 Zeichen. Das Portal verlangt mindestens eine. Zulässige Netze können mehr verlangen. Geben Sie die von der aktuellen Qualifizierung verlangte Anzahl an. |
| subscriberOptin, subscriberOptout, subscriberHelp | Deklarieren Sie unterstützte Empfängerabläufe mit genau diesen Feldnamen. Wenn ein Ablauf aktiviert ist, geben Sie dessen Schlüsselwort- und Nachrichtenfelder an. Netzanforderungen können bestimmte Abläufe verpflichtend machen. |
| optinKeywords, optoutKeywords, helpKeywords | Die tatsächlich erkannten Schlüsselwörter, bis zu 255 Zeichen. Sie müssen dem Verhalten der empfangenden Anwendung entsprechen. |
| optinMessage, optoutMessage, helpMessage | Die entsprechenden Nachrichten. Die aktuell veröffentlichten Feldregeln geben 20–1024 Zeichen vor. Nennen Sie echtes Hilfe- und Abmeldeverhalten. |
| embeddedLink, embeddedPhone, embeddedLinkSample | Deklarieren Sie eingebettete Links oder Telefonnummern wahrheitsgemäß. Ein sonst qualifiziertes Netz kann sie untersagen. Ein Linkbeispiel erlaubt bis zu 255 Zeichen. |
| mnoIds | Eine optionale Liste zulässiger numerischer Netzwerkkennungen aus der Qualifizierung. Nehmen Sie nicht an, dass jedes Netz den ausgewählten Anwendungsfall unterstützt. |
| numberPool, ageGated, directLending | Zutreffende Kampagneneigenschaften als boolesche JSON-Werte. Wählen Sie sie entsprechend dem tatsächlichen Dienst. |
| privacyPolicyLink, termsAndConditionsLink | Ihre relevanten öffentlichen Richtlinien- und Bedingungs-URLs, soweit zutreffend, mit jeweils bis zu 2048 Zeichen. Sie müssen den tatsächlichen Nachrichtendienst beschreiben. |
| termsAndConditions | Ausdrückliche Annahme der geltenden Kampagnenbedingungen. Das Portal verlangt true, und sein Assistent erfasst zusätzlich die aktuellen einzelnen Bestätigungen. |
| autoRenewal | Ob die Kampagne verlängert wird. Der Standard ist true. Das Deaktivieren der Verlängerung entfernt keine Mindestbindung, die bereits mit einer Produktionskampagne verbunden ist. |
| referenceId, tag | Ihre Kampagnenreferenz, bis zu 50 Zeichen, und optionale Kennzeichnungen. referenceId ist nicht die Kopfzeile Idempotency-Key. |
Das veröffentlichte Schema enthält in beschreibenden Tabellen teilweise uneinheitliche Großschreibung. Die aktuelle Portalanfrage verwendet subscriberOptin und subscriberOptout wie oben gezeigt. Behalten Sie genau diese Schreibweise bei. Diese Anleitung behandelt den mandantenorientierten 10DLC-Arbeitsablauf. Schließen Sie nicht daraus, dass erforderliche Felder oder Aktivierungsschritte eines anderen Kanals gleich sind.
Wiederholen Sie dieselbe beabsichtigte Anfrage sicher
Verwenden Sie ein Idempotency-Key für diese beabsichtigte Erstellung. Der Schlüssel besteht aus 1–128 druckbaren ASCII-Zeichen ohne Leerzeichen und ist auf das Inhaberkonto beschränkt. Lassen Sie bei einer Wiederholung HTTP-Methode, Pfad, Abfragezeichenfolge und exakte Byte des Anfragetexts unverändert. Eine neu formatierte JSON-Datei steht in Konflikt, auch wenn ihre Werte gleichwertig sind.
Ein laufendes Duplikat kann HTTP 409 mit Retry-After zurückgeben. Abgeschlossene Anfragen können ihre gespeicherte Antwort wiedergeben. Ein zwischengespeicherter Fehler beweist nicht, dass das Register nichts erstellt hat. Speichern Sie campaignId, requestId und etwaige Korrelationskopfzeilen, prüfen Sie die vorhandene Kampagne und bereinigen Sie einen Teilfehler, bevor Sie einen neuen Schlüssel erwägen.
Eine Kampagnenkennung ist nicht die endgültige Versandeinrichtung
Die Antwort verwendet HTTP-Status und direktes JSON. Bewahren Sie bei erfolgreicher Erstellung campaignId auf und lesen Sie dessen aktuellen Zustand:
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"Der aktuelle Produktionsablauf des Portals teilt die Kampagne außerdem mit dem Nachrichten-Carrier und lädt Marke/Kampagne in das Sendekonto. Dies sind separate Vorgänge neben diesem öffentlichen Erstellungsaufruf. Eine Registerkampagne kann bestehen, auch wenn ein späterer Schritt zur Weitergabe an den Carrier oder zur Übernahme in das Sendekonto fehlschlägt.
Verwenden Sie den integrierten Produktionserstellungsablauf des Portals, wenn Sie die kombinierte Sequenz aus Registrierung, Weitergabe an den Carrier und Übernahme in das Sendekonto benötigen. Bewahren Sie für eine bereits direkt über diese API erstellte Produktionskampagne deren Kampagnenkennung auf und lassen Sie die Carrier-Einrichtung des Kontos über den Kundendienst bereinigen. Die aktuelle Kundenoberfläche zeigt keine allgemeine Fortsetzen-Schaltfläche für jede direkt erstellte Produktionskampagne. Erstellen Sie keine weitere Registrierung, um deren Aktivierung erneut zu versuchen. Bestätigen Sie, dass die Kampagne aktiv ist und die Carrier-Einrichtung abgeschlossen wurde, bevor Sie eine Sendenummer zuweisen. Die Nummer muss außerdem Ihnen gehören, aktiv und SMS-fähig sein. Die Kampagnenerstellung sendet keine Nachrichten.
Gebühren für Produktionskampagnen
| Anwendungsfall | Monatliche Gebühr |
|---|---|
| LOW_VOLUME, UCAAS_LOW | $1.67 |
| SOLE_PROPRIETOR | $2.23 |
| CHARITY | $3.34 |
| EMERGENCY | $5.56 |
| AGENTS_FRANCHISES | $33.34 |
| Weitere konfigurierte Ausweich-Anwendungsfälle | $11.12 |
Diese Endkundenbeträge wurden am 24. Oktober 2026 mit der aktuellen Portalkonfiguration abgeglichen. Bestätigen Sie vor einer Produktionseinreichung den aktuellen qualifizierten Anwendungsfall und den angezeigten Preis. Ein monthlyFee in einer Registerqualifizierungsantwort ist nicht automatisch Ihr MultiTEL-Endkundenpreis.
Das aktuelle Portal nennt eine dreimonatige Mindestbindung für nichtpolitische Produktionskampagnen. Prüfen Sie vor der Bestätigung die geltenden Bedingungen und die Verlängerungswahl. Registrierung, Nummernüberlassung, zusätzliche Prüfung und Nachrichtennutzung sind separate Kosten. Eine erfolgreiche Erstellungsantwort beweist nicht für sich, dass jeder Abrechnungs- oder Carrier-Aktivierungsschritt abgeschlossen wurde.
Behandeln Sie Validierungs- und Teilfehler
Lesen Sie den HTTP-status und das zurückgegebene JSON. Validierungsfehler können Listen von code/description-Objekten sein. Lokale Fehler können stattdessen Objekte mit message, status und, bei manchen Verarbeitungsfehlern, requestId sein.
| HTTP-Ergebnis | Nächste Maßnahme |
|---|---|
| 400 | Korrigieren Sie die betreffenden Felder oder den Idempotenzschlüssel. Lesen Sie aktuelle Qualifizierung, erforderliche Beispielanzahl und Empfängerablaufanforderungen erneut. |
| 401, 403 oder 404 | Prüfen Sie API-Anmeldeinformationen und zulässige Quell-IP, dann Marken-/Reseller-Eigentum und Berechtigungen. Verwenden Sie keine Kennungen aus einem anderen Konto. |
| 402 | Prüfen Sie Produktionsfinanzierung und Kaufberechtigung, bevor Sie dieselbe beabsichtigte Erstellung erneut versuchen. |
| 409 | Unterscheiden Sie laufende Wiedergabe von einer geänderten Anfrage mit demselben Schlüssel. Behalten Sie vorhandene Kampagnen- und Anfragedetails bei der Bereinigung. |
| 429 oder Begrenzer nicht verfügbar | Beachten Sie Retry-After, sofern vorhanden, und behalten Sie den ursprünglichen Schlüssel und die exakte Anfrage. |
| 500 oder 502 | Die Erstellung ist möglicherweise bereits erfolgt. Speichern Sie etwaige campaignId und requestId, prüfen Sie die vorhandene Kampagne und setzen Sie deren Aktivierung fort oder bereinigen Sie sie, statt ein Duplikat zu erstellen. |