Програмери

POST/tcr/v2/campaignBuilder

Региструјте 10DLC кампању

Поднесите квалификовану кампању и разликујте регистрацију у регистру од активирања код оператора и спремности за слање.

На овој страници
  1. Квалификујте бренд пре регистрације његове кампање
  2. Држите тестно и продукционо окружење одвојено
  3. Поднесите JSON кампање
  4. Поља кампање и условни захтеви
  5. Безбедно поновите исти предвиђени захтев
  6. ИД кампање није коначно подешавање слања
  7. Накнаде за продукционе кампање
  8. Обрадите валидацију и делимичне неуспехе

Квалификујте бренд пре регистрације његове кампање

Кампања 10DLC описује поруке које регистровано предузеће намерава да шаље, начин на који примаоци дају сагласност и како могу да добију помоћ или зауставе поруке. Овај API креира запис у регистру; довршавање активирања код оператора у продукцији је посебан корак подешавања налога. Користите бренд у свом власништву из регистрације бренда, затим учитајте његове доступне случајеве коришћења и, за изабрани случај коришћења, тренутне захтеве.

Користите тренутни резултат квалификације да изаберете под-случајеве коришћења, прихватљиве ИД-јеве мреже, узорке порука и декларације о пријави/одјави/помоћи. Захтеви се могу разликовати по бренду и мрежи. Немојте подносити идентификаторе из примера нити копирати опис сагласности за предузеће са другачијим процесом.

Држите тестно и продукционо окружење одвојено

За вежбу у тестном окружењу користите сопствени пробни бренд и тренутни случај коришћења за који се он квалификује. Користите TRIAL само када га та квалификација нуди. Портал проверава да ли се изабрани бренд и окружење кампање слажу. Директан API захтев не извршава за вас потпуну валидацију чаробњака портала, па сачувајте то раздвајање у својој интеграцији.

Креирање продукционе кампање се наплаћује и не чини аутоматски број спремним за слање. Одржавајте окружење кампање у складу са њеним брендом и прегледајте накнаду и важеће услове пре креирања кампање уживо.

Поднесите JSON кампање

Припремите campaign.json са својим квалификованим вредностима. R000000 значи без препродавца; користите га само када је то предвиђена конфигурација. За уобичајену MultiTEL конфигурацију препродавца, прибавите дозвољени идентификатор препродавца MultiTEL LLC из колекције препродаваца свог налога или из тока припреме портала, уместо да чврсто кодирате туђи идентификатор.

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

Следећи JSON илуструје пробну кампању за пробни бренд у власништву. Замените бренд, случај коришћења, препродавца и текст сагласности вредностима које се заиста квалификују за ваш тест.

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

Поставите termsAndConditions на true тек након што овлашћено лице прегледа и прихвати важеће услове. Пример није сагласност у ваше име. За заставице користите JSON логичке вредности, а не ниске под наводницима.

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'

Поља кампање и условни захтеви

Захтев за кампању 10DLC
ПољаШта доставити
brandId, channelId, usecaseВаш бренд у власништву, канал 10DLC и прихватљиви тренутни код случаја коришћења. Користите кодове из квалификације, а не преведене ознаке.
subUsecasesНиз прихватљивих кодова под-случајева коришћења. Поштујте минимални и максимални број изабране квалификације.
resellerIdДозвољени идентификатор препродавца. Рута у власништву налога прихвата препродавце у власништву, свог конфигурисаног дељеног препродавца или намерну вредност без препродавца. Неповезани препродавац се одбија.
description, messageFlowОпишите стварну сврху и начин прикупљања сагласности. Свако треба да садржи 40–4096 знакова. Укључите стварну радњу корисника, образац или процес; немојте измишљати сагласност коју ваша апликација не прикупља.
sample1 … sample5Репрезентативне поруке, обично 20–1024 знака свака. Портал захтева најмање једну; прихватљиве мреже могу захтевати више. Доставите број који захтева тренутна квалификација.
subscriberOptin, subscriberOptout, subscriberHelpДекларишите подржане токове прималаца користећи ова тачна имена поља. Када је ток омогућен, доставите његова поља кључних речи и порука. Захтеви мреже могу учинити одређене токове обавезним.
optinKeywords, optoutKeywords, helpKeywordsСтварне препознате кључне речи, до 255 знакова. Оне морају одговарати понашању пријемне апликације.
optinMessage, optoutMessage, helpMessageОдговарајуће поруке. Тренутна објављена правила поља прописују 20–1024 знака. Укључите стварно понашање подршке и одјаве.
embeddedLink, embeddedPhone, embeddedLinkSampleИскрено декларишите уграђене везе или бројеве телефона. Иначе квалификована мрежа их може забранити. Узорак везе дозвољава до 255 знакова.
mnoIdsОпциони низ прихватљивих нумеричких ИД-јева мреже из квалификације. Немојте претпостављати да свака мрежа подржава изабрани случај коришћења.
numberPool, ageGated, directLendingВажеће карактеристике кампање као JSON логичке вредности. Изаберите их према стварној услузи.
privacyPolicyLink, termsAndConditionsLinkВаше одговарајуће јавне URL адресе политике и услова када је примењиво, до 2048 знакова свака. Оне морају описивати стварну услугу слања порука.
termsAndConditionsИзричито прихватање важећих услова кампање. Портал захтева true, а његов чаробњак такође прикупља тренутне појединачне потврде.
autoRenewalДа ли се кампања обнавља. Подразумевана вредност је true. Онемогућавање обнављања не уклања минималну обавезу већ повезану са продукционом кампањом.
referenceId, tagВаша референца кампање, до 50 знакова, и опционе ознаке. referenceId није заглавље Idempotency-Key.

Објављена шема садржи извесне недоследности у писању великих слова у описним табелама. Тренутни захтев портала користи subscriberOptin и subscriberOptout као што је горе приказано. Задржите тачно та слова. Ово упутство покрива 10DLC ток за закупце; немојте закључивати да су обавезна поља или кораци активирања другог канала исти.

Безбедно поновите исти предвиђени захтев

Користите један Idempotency-Key за ово предвиђено креирање. Кључ има 1–128 штампаних ASCII знакова без размака и везан је за налог власника. При понављању задржите непромењеним HTTP метод, путању, ниску упита и тачне бајте тела. Реформатирана JSON датотека је у сукобу чак и ако су јој вредности еквивалентне.

Дупликат у току може вратити HTTP 409 са Retry-After; довршени захтеви могу поново емитовати сачувани одговор. Кеширана грешка не доказује да регистар није ништа креирао. Сачувајте campaignId, requestId и сва заглавља корелације, прегледајте постојећу кампању и усагласите делимични неуспех пре него што размотрите нови кључ.

ИД кампање није коначно подешавање слања

Одговор користи HTTP статус и директан JSON. Након успешног креирања, сачувајте campaignId и прочитајте његово тренутно стање:

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

Тренутни продукциони ток портала такође дели кампању са оператором за слање порука и учитава бренд/кампању у налог за слање. То су одвојене операције од овог јавног позива за креирање. Кампања у регистру може постојати чак и ако каснији корак дељења или учитавања код оператора не успе.

Користите интегрисани продукциони ток креирања портала када вам треба комбинована секвенца регистрације, дељења и учитавања код оператора. За продукциону кампању коју је овај API већ директно креирао, задржите њен ИД кампање и усагласите подешавање оператора налога преко подршке. Тренутни кориснички интерфејс не нуди опште дугме за наставак за сваку директно креирану продукциону кампању. Немојте креирати другу регистрацију да бисте поново покушали њену активацију. Потврдите да је кампања активна и да је подешавање оператора завршено пре додељивања броја за слање. Број такође мора бити у власништву, активан и омогућен за SMS. Креирање кампање не шаље поруке.

Накнаде за продукционе кампање

Тренутне конфигурисане месечне накнаде за кампање
Случај коришћењаМесечна накнада
LOW_VOLUME, UCAAS_LOW$1.67
SOLE_PROPRIETOR$2.23
CHARITY$3.34
EMERGENCY$5.56
AGENTS_FRANCHISES$33.34
Други конфигурисани резервни случајеви коришћења$11.12

Ови малопродајни износи проверени су према тренутној конфигурацији портала 24. октобра 2026. Потврдите тренутни квалификовани случај коришћења и приказану цену пре продукционог подношења. monthlyFee у одговору квалификације регистра није аутоматски ваша MultiTEL малопродајна цена.

Тренутни портал наводи тромесечну минималну обавезу за неполитичке продукционе кампање. Прегледајте важеће услове и избор обнављања пре потврде. Регистрација, закуп броја, додатна провера и коришћење порука су одвојене наплате. Успешан одговор о креирању не доказује самостално да је сваки корак наплате или активирања код оператора завршен.

Обрадите валидацију и делимичне неуспехе

Прочитајте HTTP status и враћени JSON. Неуспеси валидације могу бити низови објеката code/description; локални неуспеси могу уместо тога бити објекти са message, status и, за неке грешке обраде, requestId.

Неуспеси кампање
HTTP резултатСледећа радња
400Исправите одређена поља или кључ идемпотенције. Поново прочитајте тренутну квалификацију, захтевани број узорака и захтеве токова прималаца.
401, 403 или 404Проверите API акредитиве и дозвољену изворну IP адресу, затим власништво и дозволе бренда/препродавца. Немојте користити идентификаторе са другог налога.
402Прегледајте финансирање продукције и дозволу за куповину пре понављања истог предвиђеног креирања.
409Разликујте поновно емитовање у току од измењеног захтева који користи исти кључ. Задржите постојећу кампању и детаље захтева при усаглашавању.
429 или ограничавач недоступанИспоштујте Retry-After када постоји и задржите оригинални кључ и тачан захтев.
500 или 502Креирање се можда већ догодило. Сачувајте сваки campaignId и requestId, проверите постојећу кампању и наставите или усагласите њену активацију уместо да креирате дупликат.