Hyväksytä brändi ennen sen kampanjan rekisteröintiä
10DLC-kampanja kuvaa viestit, jotka rekisteröity yritys aikoo lähettää, miten vastaanottajat antavat suostumuksen ja miten he voivat saada apua tai lopettaa viestit. Tämä API luo rekisteritietueen; tuotannon operaattoriaktivoinnin viimeistely on erillinen tilin käyttöönottovaihe. Käytä omistamaasi brändiä kohdasta brändin rekisteröinti, lataa sitten sen saatavilla olevat käyttötapaukset ja valitun käyttötapauksen voimassa olevat vaatimukset.
Käytä voimassa olevaa hyväksyntätulosta valitaksesi alikäyttötapaukset, kelpoiset verkkojen tunnisteet, viestimallit ja suostumus-, lopetus- ja apuvirtojen ilmoitukset. Vaatimukset voivat vaihdella brändin ja verkon mukaan. Älä lähetä esimerkin tunnisteita äläkä kopioi sen suostumuskuvausta yritykselle, jonka prosessi on erilainen.
Pidä hiekkalaatikko ja tuotanto erillään
Käytä hiekkalaatikkoharjoituksessa omaa testibrändiäsi ja voimassa olevaa käyttötapausta, johon se on hyväksytty. Käytä TRIAL vain, kun kyseinen hyväksyntä tarjoaa sitä. Portaali tarkistaa, että valittu brändi ja kampanjaympäristö vastaavat toisiaan. Suora API-pyyntö ei suorita portaalin täydellistä ohjattua validointia puolestasi, joten säilytä tämä erottelu integraatiossasi.
Tuotantokampanjan luominen on maksullista eikä se automaattisesti tee numerosta lähetysvalmista. Pidä kampanjaympäristö yhdenmukaisena sen brändin kanssa ja tarkista maksu ja sovellettavat ehdot ennen tuotantokampanjan luomista.
Lähetä kampanjan JSON
Valmistele campaign.json hyväksytyillä arvoillasi. R000000 tarkoittaa, ettei jälleenmyyjää ole; käytä sitä vain, kun se on tarkoitettu kokoonpano. Normaalia MultiTEL-jälleenmyyjäkokoonpanoa varten hanki sallittu MultiTEL LLC-jälleenmyyjätunniste tilisi jälleenmyyjäkokoelmasta tai portaalin valmisteluvirrasta sen sijaan, että kovakoodaisit jonkun toisen tunnisteen.
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
'https://api.multitel.net/tcr/v2/reseller?companyName=MultiTEL%20LLC&recordsPerPage=500'Seuraava JSON havainnollistaa koekampanjaa omistetulle testibrändille. Korvaa brändi, käyttötapaus, jälleenmyyjä ja suostumusteksti arvoilla, jotka todella hyväksytään testillesi.
{
"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"
}Aseta termsAndConditions arvoksi true vasta, kun valtuutettu henkilö on tarkistanut ja hyväksynyt sovellettavat ehdot. Esimerkki ei ole suostumus puolestasi. Käytä lipuille JSON-totuusarvoja, älä lainattuja merkkijonoja.
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'Kampanjakentät ja ehdolliset vaatimukset
| Kentät | Mitä tulee antaa |
|---|---|
| brandId, channelId, usecase | Omistamasi brändi, kanava 10DLC ja kelpoinen voimassa oleva käyttötapauskoodi. Käytä hyväksynnästä saatuja koodeja, älä käännettyjä nimikkeitä. |
| subUsecases | Taulukko kelpoisista alikäyttötapauskoodeista. Noudata valitun hyväksynnän vähimmäis- ja enimmäismäärää. |
| resellerId | Sallittu jälleenmyyjätunniste. Tiliomisteinen reitti hyväksyy omistetut jälleenmyyjät, sen määritetyn jaetun jälleenmyyjän tai tarkoitetun ei-jälleenmyyjää-arvon. Asiaankuulumaton jälleenmyyjä hylätään. |
| description, messageFlow | Kuvaa todellinen tarkoitus ja miten suostumus kerätään. Kummankin tulee sisältää 40–4096 merkkiä. Sisällytä todellinen käyttäjän toimi, lomake tai prosessi; älä keksi suostumusta, jota sovelluksesi ei kerää. |
| sample1 … sample5 | Edustavat viestit, normaalisti 20–1024 merkkiä kukin. Portaali vaatii vähintään yhden; kelpoiset verkot voivat vaatia useampia. Anna voimassa olevan hyväksynnän vaatima määrä. |
| subscriberOptin, subscriberOptout, subscriberHelp | Ilmoita tuetut vastaanottajavirrat käyttäen näitä tarkkoja kenttänimiä. Kun virta on käytössä, anna sen avainsana- ja viestikentät. Verkkojen vaatimukset voivat tehdä tietyistä virroista pakollisia. |
| optinKeywords, optoutKeywords, helpKeywords | Todelliset tunnistetut avainsanat, enintään 255 merkkiä. Niiden on vastattava vastaanottavan sovelluksen toimintaa. |
| optinMessage, optoutMessage, helpMessage | Vastaavat viestit. Voimassa olevat julkaistut kenttäsäännöt määrittävät 20–1024 merkkiä. Sisällytä todellinen tuki- ja lopetustoiminta. |
| embeddedLink, embeddedPhone, embeddedLinkSample | Ilmoita upotetut linkit tai puhelinnumerot totuudenmukaisesti. Muuten hyväksytty verkko voi kieltää ne. Linkkimalli sallii enintään 255 merkkiä. |
| mnoIds | Valinnainen taulukko kelpoisista numeerisista verkkojen tunnisteista hyväksynnästä. Älä oleta, että jokainen verkko tukee valittua käyttötapausta. |
| numberPool, ageGated, directLending | Sovellettavat kampanjan ominaisuudet JSON-totuusarvoina. Valitse ne todellisen palvelun mukaan. |
| privacyPolicyLink, termsAndConditionsLink | Asiaankuuluvat julkiset käytäntö- ja ehto-URL-osoitteesi tarvittaessa, enintään 2048 merkkiä kukin. Niiden on kuvattava todellista viestipalvelua. |
| termsAndConditions | Sovellettavien kampanjaehtojen nimenomainen hyväksyminen. Portaali vaatii arvon true, ja sen ohjattu toiminto kerää myös voimassa olevat yksittäiset vahvistukset. |
| autoRenewal | Uusiutuuko kampanja. Oletus on true. Uusimisen poistaminen ei poista vähimmäissitoumusta, joka on jo liitetty tuotantokampanjaan. |
| referenceId, tag | Kampanjaviitteesi, enintään 50 merkkiä, ja valinnaiset tunnisteet. referenceId ei ole Idempotency-Key-otsikko. |
Julkaistu skeema sisältää epäjohdonmukaista kirjainkokoa kuvailevissa taulukoissa. Voimassa oleva portaalin pyyntö käyttää kenttiä subscriberOptin ja subscriberOptout kuten yllä on esitetty. Säilytä täsmälleen sama kirjainkoko. Tämä opas kattaa vuokralaisille suunnatun 10DLC-työnkulun; älä päättele, että eri kanavan pakolliset kentät tai aktivointivaiheet ovat samat.
Yritä samaa tarkoitettua pyyntöä uudelleen turvallisesti
Käytä yhtä Idempotency-Key-avainta tälle tarkoitetulle luonnille. Avain on 1–128 tulostettavaa ASCII-merkkiä ilman välilyöntejä ja se on rajattu omistajatilille. Pidä HTTP-menetelmä, polku, kyselymerkkijono ja tarkat rungon tavut muuttumattomina uudelleenyrityksessä. Uudelleenmuotoiltu JSON-tiedosto aiheuttaa ristiriidan, vaikka sen arvot olisivat vastaavat.
Keskeneräinen kaksoiskappale voi palauttaa HTTP 409 -vastauksen ja Retry-After-otsikon; valmistuneet pyynnöt voivat toistaa tallennetun vastauksensa. Välimuistiin tallennettu virhe ei todista, ettei rekisteri luonut mitään. Tallenna campaignId, requestId ja mahdolliset korrelaatio-otsikot, tarkasta olemassa oleva kampanja ja täsmäytä osittainen virhe ennen kuin harkitset uutta avainta.
Kampanjan tunniste ei ole lopullinen lähetysmääritys
Vastaus käyttää HTTP-tilaa ja suoraa JSON-muotoa. Onnistuneen luonnin yhteydessä säilytä campaignId ja lue sen nykyinen tila:
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"Portaalin nykyinen tuotantotyönkulku jakaa kampanjan myös viestinvälittäjän operaattorin kanssa ja lataa brändin/kampanjan lähettävälle tilille. Ne ovat erillisiä toimintoja tästä julkisesta luontikutsusta. Rekisterikampanja voi olla olemassa, vaikka myöhempi jakamis- tai operaattorilatausvaihe epäonnistuisi.
Käytä portaalin integroitua tuotannon luontityönkulkua, kun tarvitset yhdistetyn rekisteröinti-, jakamis- ja operaattorilataussekvenssin. Jos tuotantokampanja on jo luotu suoraan tällä API:lla, säilytä sen kampanjatunniste ja anna tilin operaattorimääritys täsmäyttää tuen kautta. Nykyinen asiakaskäyttöliittymä ei tarjoa yleistä jatkopainiketta jokaiselle suoraan luodulle tuotantokampanjalle. Älä luo toista rekisteröintiä yrittääksesi sen aktivointia uudelleen. Varmista, että kampanja on aktiivinen ja operaattorimääritys on valmistunut, ennen lähettävän numeron määrittämistä. Numeron on myös oltava omistettu, aktiivinen ja SMS-toiminnolla varustettu. Kampanjan luominen ei lähetä viestejä.
Tuotantokampanjoiden maksut
| Käyttötapaus | Kuukausimaksu |
|---|---|
| LOW_VOLUME, UCAAS_LOW | $1.67 |
| SOLE_PROPRIETOR | $2.23 |
| CHARITY | $3.34 |
| EMERGENCY | $5.56 |
| AGENTS_FRANCHISES | $33.34 |
| Muut määritetyt varakäyttötapaukset | $11.12 |
Nämä vähittäishinnat tarkistettiin voimassa olevaa portaalin kokoonpanoa vasten 24. lokakuuta 2026. Vahvista voimassa oleva hyväksytty käyttötapaus ja näytetty hinta ennen tuotantolähetystä. monthlyFee rekisterin hyväksyntävastauksessa ei ole automaattisesti MultiTEL-vähittäishintasi.
Nykyinen portaali ilmoittaa kolmen kuukauden vähimmäissitoumuksen ei-poliittisille tuotantokampanjoille. Tarkista sovellettavat ehdot ja uusimisvalinta ennen vahvistamista. Rekisteröinti, numeron vuokraus, lisävarmennus ja viestien käyttö ovat erillisiä maksuja. Onnistunut luontivastaus ei itsenäisesti todista, että kaikki laskutus- tai operaattoriaktivointivaiheet olisivat valmistuneet.
Käsittele validointi- ja osittaiset virheet
Lue HTTP status ja palautettu JSON. Validointivirheet voivat olla taulukoita, jotka sisältävät code/description-objekteja; paikalliset virheet voivat sen sijaan olla objekteja, joissa on message, status ja joidenkin käsittelyvirheiden osalta requestId.
| HTTP-tulos | Seuraava toimi |
|---|---|
| 400 | Korjaa kyseiset kentät tai idempotenssiavain. Lue uudelleen voimassa oleva hyväksyntä, vaadittu mallimäärä ja vastaanottajavirtojen vaatimukset. |
| 401, 403 tai 404 | Tarkista API-tunnukset ja sallittu lähde-IP, sitten brändin/jälleenmyyjän omistajuus ja käyttöoikeudet. Älä käytä toisen tilin tunnisteita. |
| 402 | Tarkista tuotannon rahoitus ja ostolupa ennen kuin yrität samaa tarkoitettua luontia uudelleen. |
| 409 | Erota keskeneräisen pyynnön toisto muuttuneesta pyynnöstä, joka käyttää samaa avainta. Säilytä olemassa olevan kampanjan ja pyynnön tiedot täsmäyttäessäsi. |
| 429 tai rajoitin ei käytettävissä | Noudata Retry-After-otsikkoa, kun se on läsnä, ja säilytä alkuperäinen avain ja tarkka pyyntö. |
| 500 tai 502 | Luonti on saattanut jo tapahtua. Tallenna mahdolliset campaignId ja requestId, tarkista olemassa oleva kampanja ja jatka tai täsmäytä sen aktivointia kaksoiskappaleen luomisen sijaan. |