Kūrėjams

POST/tcr/v2/campaignBuilder

Registruokite 10DLC kampaniją

Pateikite kvalifikuotą kampaniją ir atskirkite registraciją registre nuo operatoriaus aktyvavimo ir pasirengimo siųsti.

Šiame puslapyje
  1. Kvalifikuokite prekės ženklą prieš registruodami jo kampaniją
  2. Laikykite bandomąją ir gamybinę aplinkas atskirai
  3. Pateikite kampanijos JSON
  4. Kampanijos laukai ir sąlyginiai reikalavimai
  5. Saugiai pakartokite tą pačią numatytą užklausą
  6. Kampanijos ID nėra galutinė siuntimo sąranka
  7. Gamybinių kampanijų mokesčiai
  8. Tvarkykite patvirtinimo ir dalinius gedimus

Kvalifikuokite prekės ženklą prieš registruodami jo kampaniją

10DLC kampanija aprašo pranešimus, kuriuos registruotas verslas ketina siųsti, kaip gavėjai sutinka ir kaip jie gali gauti pagalbą arba atsisakyti pranešimų. Ši API sukuria registro įrašą; gamybinio operatoriaus aktyvavimo užbaigimas yra atskiras paskyros sąrankos veiksmas. Naudokite jums priklausantį prekės ženklą, sukurtą per prekės ženklo registraciją, tada įkelkite jo galimus naudojimo atvejus ir pasirinkto naudojimo atvejo dabartinius reikalavimus.

Naudokite dabartinį kvalifikavimo rezultatą, kad pasirinktumėte papildomus naudojimo atvejus, tinkamus tinklo identifikatorius, pranešimų pavyzdžius ir sutikimo, atsisakymo bei pagalbos deklaracijas. Reikalavimai gali skirtis pagal prekės ženklą ir tinklą. Nepateikite pavyzdyje pateiktų identifikatorių ir nekopijuokite jo sutikimo aprašymo verslui, kurio procesas kitoks.

Laikykite bandomąją ir gamybinę aplinkas atskirai

Bandomajam pratimui naudokite savo bandomąjį prekės ženklą ir dabartinį naudojimo atvejį, kuriam jis kvalifikuojamas. Naudokite TRIAL tik tada, kai tą siūlo tas kvalifikavimas. Portalas patikrina, ar pasirinkto prekės ženklo ir kampanijos aplinkos sutampa. Tiesioginė API užklausa neatlieka už jus viso portalo vedlio patvirtinimo, todėl išlaikykite šį atskyrimą savo integracijoje.

Gamybinės kampanijos sukūrimas yra mokamas ir automatiškai nepadaro numerio paruošto siųsti. Laikykite kampanijos aplinką suderintą su jos prekės ženklu ir prieš kurdami veikiančią kampaniją peržiūrėkite mokestį bei taikomas sąlygas.

Pateikite kampanijos JSON

Paruoškite campaign.json su savo kvalifikuotomis reikšmėmis. R000000 reiškia, kad perpardavėjo nėra; naudokite jį tik tada, kai tokia yra numatyta konfigūracija. Įprastai MultiTEL perpardavėjo konfigūracijai gaukite leidžiamą MultiTEL LLC perpardavėjo identifikatorių iš savo paskyros perpardavėjų rinkinio arba portalo parengimo srauto, o ne įrašykite kito asmens identifikatorių tiesiogiai.

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  'https://api.multitel.net/tcr/v2/reseller?companyName=MultiTEL%20LLC&recordsPerPage=500'

Toliau pateiktas JSON iliustruoja bandomąją kampaniją jums priklausančiam bandomajam prekės ženklui. Pakeiskite prekės ženklą, naudojimo atvejį, perpardavėją ir sutikimo tekstą reikšmėmis, kurios iš tikrųjų kvalifikuojamos jūsų testui.

{
  "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"
}

Nustatykite termsAndConditions į true tik po to, kai įgaliotas asmuo peržiūrėjo ir priėmė taikomas sąlygas. Pavyzdys nėra sutikimas jūsų vardu. Vėliavėlėms naudokite JSON logines reikšmes, o ne kabutėse pateiktas eilutes.

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'

Kampanijos laukai ir sąlyginiai reikalavimai

10DLC kampanijos užklausa
LaukaiKą pateikti
brandId, channelId, usecaseJums priklausantis prekės ženklas, kanalas 10DLC ir tinkamas dabartinis naudojimo atvejo kodas. Naudokite kodus iš kvalifikavimo, o ne išverstas etiketes.
subUsecasesTinkamų papildomų naudojimo atvejų kodų masyvas. Laikykitės pasirinkto kvalifikavimo minimalaus ir maksimalaus skaičiaus.
resellerIdLeidžiamas perpardavėjo identifikatorius. Paskyrai priklausantis maršrutas priima priklausančius perpardavėjus, jo sukonfigūruotą bendrą perpardavėją arba tyčinę reikšmę be perpardavėjo. Nesusijęs perpardavėjas atmetamas.
description, messageFlowAprašykite tikrąjį tikslą ir tai, kaip renkamas sutikimas. Kiekviename turėtų būti 40–4096 simboliai. Nurodykite tikrąjį naudotojo veiksmą, formą ar procesą; neišgalvokite sutikimo, kurio jūsų programa nerenka.
sample1 … sample5Tipiniai pranešimai, paprastai po 20–1024 simbolius. Portalas reikalauja bent vieno; tinkami tinklai gali reikalauti daugiau. Pateikite skaičių, kurio reikalauja dabartinis kvalifikavimas.
subscriberOptin, subscriberOptout, subscriberHelpDeklaruokite palaikomus gavėjų srautus naudodami šiuos tikslius laukų pavadinimus. Kai srautas įjungtas, pateikite jo raktažodžių ir pranešimų laukus. Tinklo reikalavimai gali padaryti tam tikrus srautus privalomus.
optinKeywords, optoutKeywords, helpKeywordsTikrieji atpažįstami raktažodžiai, iki 255 simbolių. Jie turi atitikti priimančiosios programos veikimą.
optinMessage, optoutMessage, helpMessageAtitinkami pranešimai. Dabartinės paskelbtos laukų taisyklės nurodo 20–1024 simbolius. Nurodykite tikrąjį palaikymo ir atsisakymo veikimą.
embeddedLink, embeddedPhone, embeddedLinkSampleTeisingai deklaruokite įterptąsias nuorodas ar telefono numerius. Net ir kitus kvalifikavimo reikalavimus atitinkantis tinklas gali jų neleisti. Nuorodos pavyzdyje leidžiama iki 255 simbolių.
mnoIdsNeprivalomas tinkamų skaitinių tinklo identifikatorių masyvas iš kvalifikavimo. Nemanykite, kad kiekvienas tinklas palaiko pasirinktą naudojimo atvejį.
numberPool, ageGated, directLendingTaikomos kampanijos charakteristikos kaip JSON loginės reikšmės. Pasirinkite jas pagal tikrąją paslaugą.
privacyPolicyLink, termsAndConditionsLinkJūsų aktualios viešosios politikos ir sąlygų URL nuorodos, kai taikoma, iki 2048 simbolių kiekviena. Jos turi apibūdinti tikrąją pranešimų paslaugą.
termsAndConditionsAiškus taikomų kampanijos sąlygų priėmimas. Portalas reikalauja true, o jo vedlys taip pat surenka dabartinius individualius patvirtinimus.
autoRenewalAr kampanija atnaujinama. Numatytasis yra true. Atnaujinimo išjungimas nepašalina minimalaus įsipareigojimo, jau susijusio su gamybine kampanija.
referenceId, tagJūsų kampanijos nuoroda, iki 50 simbolių, ir neprivalomos žymos. referenceId nėra Idempotency-Key antraštė.

Paskelbtoje schemoje aprašomosiose lentelėse yra nenuoseklaus didžiųjų raidžių vartojimo. Dabartinė portalo užklausa naudoja subscriberOptin ir subscriberOptout, kaip parodyta aukščiau. Išlaikykite tiksliai šį raidžių registrą. Šis vadovas apima nuomininkui skirtą 10DLC darbo eigą; nemanykite, kad kito kanalo privalomi laukai ar aktyvavimo veiksmai yra tokie patys.

Saugiai pakartokite tą pačią numatytą užklausą

Naudokite vieną Idempotency-Key šiam numatytam sukūrimui. Raktą sudaro 1–128 spausdinami ASCII simboliai be tarpų, ir jis susietas su savininko paskyra. Pakartodami nekeiskite HTTP metodo, kelio, užklausos eilutės ir tikslių turinio baitų. Performuotas JSON failas konfliktuoja, net jei jo reikšmės lygiavertės.

Vykdomas dublikatas gali grąžinti HTTP 409 su Retry-After; užbaigtos užklausos gali pakartoti savo išsaugotą atsakymą. Išsaugota klaida neįrodo, kad registras nieko nesukūrė. Išsaugokite campaignId, requestId ir visas koreliacijos antraštes, patikrinkite esamą kampaniją ir patikrinkite tikrąją būseną ir pašalinkite dėl dalinės nesėkmės atsiradusius neatitikimus prieš svarstydami naują raktą.

Kampanijos ID nėra galutinė siuntimo sąranka

Atsakyme naudojama HTTP būsena ir tiesioginis JSON. Sėkmingai sukūrę, išsaugokite campaignId ir perskaitykite jo dabartinę būseną:

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  "https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"

Dabartinė portalo gamybinė darbo eiga taip pat bendrina kampaniją su pranešimų operatoriumi ir įkelia prekės ženklą/kampaniją į siuntimo paskyrą. Tai atskiros operacijos nuo šio viešo sukūrimo iškvietimo. Registro kampanija gali egzistuoti, net jei vėlesnis bendrinimo ar operatoriaus įkėlimo veiksmas nepavyksta.

Naudokite integruotą portalo gamybinio sukūrimo darbo eigą, kai reikia sujungtos registravimo, bendrinimo ir operatoriaus įkėlimo sekos. Gamybinei kampanijai, jau tiesiogiai sukurtai per šią API, išsaugokite jos kampanijos ID ir paprašykite suderinti paskyros operatoriaus sąranką per palaikymą. Dabartinė klientų sąsaja neatskleidžia bendro tęsimo mygtuko kiekvienai tiesiogiai sukurtai gamybinei kampanijai. Nekurkite kitos registracijos, kad pakartotumėte jos aktyvavimą. Patvirtinkite, kad kampanija aktyvi ir operatoriaus sąranka užbaigta, prieš siuntimo numerio priskyrimą. Numeris taip pat turi priklausyti jums, būti aktyvus ir palaikyti SMS. Kampanijos sukūrimas nesiunčia pranešimų.

Gamybinių kampanijų mokesčiai

Dabartiniai sukonfigūruoti mėnesiniai kampanijų mokesčiai
Naudojimo atvejisMėnesinis mokestis
LOW_VOLUME, UCAAS_LOW$1.67
SOLE_PROPRIETOR$2.23
CHARITY$3.34
EMERGENCY$5.56
AGENTS_FRANCHISES$33.34
Kiti sukonfigūruoti atsarginiai naudojimo atvejai$11.12

Šios mažmeninės sumos buvo patikrintos pagal dabartinę portalo konfigūraciją spalio 24 d., 2026 m. Prieš gamybinį pateikimą patvirtinkite dabartinį kvalifikuotą naudojimo atvejį ir rodomą kainą. monthlyFee registro kvalifikavimo atsakyme nėra automatiškai jūsų MultiTEL mažmeninė kaina.

Dabartinis portalas nurodo trijų mėnesių minimalų įsipareigojimą nepolitinėms gamybinėms kampanijoms. Prieš patvirtindami peržiūrėkite taikomas sąlygas ir atnaujinimo pasirinkimą. Registracija, numerio nuoma, papildomas patikrinimas ir pranešimų naudojimas yra atskiri mokesčiai. Sėkmingas sukūrimo atsakymas pats savaime neįrodo, kad visi atsiskaitymo ar operatoriaus aktyvavimo veiksmai užbaigti.

Tvarkykite patvirtinimo ir dalinius gedimus

Skaitykite HTTP status ir grąžintą JSON. Patvirtinimo gedimai gali būti code/description objektų masyvai; vietiniai gedimai vietoj to gali būti objektai su message, status ir, kai kurioms apdorojimo klaidoms, requestId.

Kampanijų gedimai
HTTP rezultatasKitas veiksmas
400Ištaisykite konkrečius laukus arba idempotentumo raktą. Dar kartą perskaitykite dabartinį kvalifikavimą, reikalaujamą pavyzdžių skaičių ir gavėjų srautų reikalavimus.
401, 403 arba 404Patikrinkite API kredencialus ir leidžiamą šaltinio IP, tada prekės ženklo/perpardavėjo nuosavybę ir leidimus. Nenaudokite kitos paskyros identifikatorių.
402Peržiūrėkite gamybinį finansavimą ir pirkimo leidimą prieš pakartodami tą patį numatytą sukūrimą.
409Atskirkite vykdomą pakartojimą nuo pakeistos užklausos naudojant tą patį raktą. Derindami išsaugokite esamos kampanijos ir užklausos duomenis.
429 arba ribotuvas nepasiekiamasKai pateikta, paisykite Retry-After ir išsaugokite pradinį raktą bei tikslią užklausą.
500 arba 502Sukūrimas galbūt jau įvyko. Išsaugokite visus campaignId ir requestId, patikrinkite esamą kampaniją ir tęskite arba suderinkite jos aktyvavimą, o ne kurkite dublikatą.