Păstrați împreună brandul și cazul de utilizare
Utilizați ID-ul de brand din contul dvs. și o valoare de caz de utilizare returnată de lista de calificare a aceluiași brand. Fluxul de lucru al clientului verifică proprietatea înainte de cererea către furnizor. Confirmați că valoarea usecase a obiectului returnat corespunde valorii selectate. O căutare pentru un brand sau un caz de utilizare nu stabilește cerințe pentru altul.
Citiți cerințele curente
| Câmp | Cum îl utilizează portalul |
|---|---|
| minSubUsecases / maxSubUsecases | Numărul minim și maxim de sub-cazuri de utilizare pentru această selecție. Alegeți valori din catalogul de sub-cazuri de utilizare valide, nu text liber. |
| mnoMetadata | Cerințe specifice fiecărui operator, indexate după ID-ul operatorului. Utilizați ID-urile prezente în răspunsul curent pentru selectarea operatorilor. |
| mnoSupport / qualify | Suportul și calificarea operatorului. Portalul exclude operatorii marcați explicit false pentru oricare dintre cele două câmpuri și necesită cel puțin un operator selectat eligibil. |
| minMsgSamples | Numărul de mostre necesar pentru un operator. Portalul necesită cel puțin o mostră nevidă și respectă cel mai mare minim dintre operatorii selectați eligibili. |
| reqSubscriberOptin / reqSubscriberOptout / reqSubscriberHelp | Declarații obligatorii ale abonatului. Acolo unde sunt obligatorii, declarația corespunzătoare trebuie să fie true. Declarațiile activate necesită, de asemenea, câmpurile lor de cuvinte-cheie și de mesaj de răspuns. |
| noEmbeddedLink / noEmbeddedPhone | Restricții privind linkurile sau numerele de telefon încorporate. Portalul respinge o funcție declarată dacă un operator selectat eligibil o interzice. |
Aplicați împreună cerințele operatorilor selectați
Cerințele operatorilor pot diferi. Când nu este furnizată o listă explicită de operatori, portalul ia în considerare toate metadatele operatorilor din răspuns; o listă nevidă limitează verificările la ID-urile selectate. Nu utilizați doar numărul de mostre sau declarațiile primului operator. Selectați operatorii din răspuns, verificați suportul și calificarea, respectați cel mai mare minim de mostre aplicabil și îndepliniți declarațiile obligatorii de opt-in, opt-out și ajutor pentru întreaga selecție. Portalul respinge ID-urile de operator selectate care lipsesc din răspunsul curent și respinge o selecție fără niciun operator eligibil.
Cerințele descriu ce trebuie furnizat; ele nu dovedesc că procesul de consimțământ al clientului sau conținutul campaniei îndeplinește aceste cerințe. Colectați mostre și declarații veridice și reprezentative. Nu activați automat declarațiile doar pentru ca un formular să treacă validarea.
Pregătiți mostrele și răspunsurile pentru abonați
Formularul de campanie curent utilizează sample1 până la sample5 pentru mostrele de mesaje. Dacă cerințele nu pot fi îndeplinite în cadrul formularului disponibil, opriți-vă și rezolvați selecția împreună cu echipa de asistență. Pentru o declarație a abonatului activată, furnizați cuvintele-cheie și textul de răspuns corespunzătoare: optinKeywords/optinMessage, optoutKeywords/optoutMessage și helpKeywords/helpMessage. Păstrați mostrele în concordanță cu cazul de utilizare ales și cu mesajele reale trimise clienților.
Revizuiți înainte de orice cerere de înregistrare
Reîmprospătați cerințele atunci când se schimbă brandul, cazul de utilizare sau selecția operatorilor. Portalul revalidează cazul de utilizare selectat, numărul de sub-cazuri de utilizare, eligibilitatea operatorilor, mostrele și declarațiile înainte de creare. Revizuiți separat prețurile contului și termenii de înregistrare. Această cerere GET nu înregistrează și nu aprobă o campanie, nu o partajează cu operatorul de mesagerie și nu atribuie un număr de telefon. Crearea și provizionarea sunt operațiuni separate.
Gestionați o căutare de cerințe eșuată
Dacă cererea eșuează, returnează JSON neașteptat sau nu corespunde cazului de utilizare selectat, păstrați formularul incomplet și permiteți clientului să reîncerce după rezolvarea erorii. Nu înlocuiți cerințele indisponibile cu un obiect gol și nu presupuneți că datele lipsă înseamnă absența cerințelor. Respectați Retry-After și utilizați backoff pentru limitele de rată și eșecurile de disponibilitate.
Cerere
Utilizați un cont API activat, prin HTTPS, de la o adresă IP sursă permisă. Ruta curentă acceptă politica de autentificare a contului, inclusiv autentificarea Basic și conturile API bearer activate. Nu utilizați acreditările furnizorului.
GET cu ID-ul de brand și valoarea cazului de utilizare selectat în calea URL. Nu este necesar un corp de cerere.
curl --fail-with-body --silent --show-error \
--user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/campaignBuilder/brand/$BRAND_ID/usecase/$USECASE"| Nume | Tip | Obligatoriu | Descriere |
|---|---|---|---|
brand_id | string | Da | ID-ul de brand din registru asociat contului dvs. MultiTEL autentificat. Utilizați ID-ul de brand, nu un ID de rând dintr-o bază de date locală, un ID de campanie sau un cod fiscal al companiei. Codificați-l ca un singur segment de cale URL. |
usecase | string | Da | Valoarea usecase citibilă de mașină, selectată din lista de calificare a aceluiași brand. Păstrați-i majusculele și minusculele; nu trimiteți o etichetă de afișare tradusă. Codificați-o ca un singur segment de cale URL. |
Răspuns
Ruta TCR curentă returnează direct corpul JSON al registrului și păstrează starea HTTP a acestuia. Nu adaugă învelișul moștenit v3 status/response. Exemplul fictiv prescurtat nu este un rezultat de calificare real. Verificați starea HTTP și forma JSON așteptată înainte de a-l utiliza. Portalul așteaptă un obiect al cărui usecase corespunde cazului de utilizare selectat. Cerințele operatorilor se află sub mnoMetadata, indexate după ID-ul operatorului. ID-ul de operator și cerințele din exemplu sunt fictive. Pot fi returnate și alte câmpuri ale furnizorului.
Formă ilustrativă a răspunsului; nu sunt date reale ale contului și nici o ofertă de preț curentă.
{
"usecase": "2FA",
"minSubUsecases": 0,
"maxSubUsecases": 0,
"mnoMetadata": {
"12345": {
"mnoSupport": true,
"qualify": true,
"minMsgSamples": 1,
"reqSubscriberOptin": true,
"reqSubscriberOptout": true,
"reqSubscriberHelp": true,
"noEmbeddedLink": false,
"noEmbeddedPhone": false
}
}
}Erori
- 401: Autentificarea contului a eșuat. Verificați acreditările API, starea de activare și restricțiile aplicabile privind IP-ul sursă.
- 404: Brandul nu este asociat contului autentificat sau furnizorul nu poate găsi brandul sau selecția solicitată. Un refuz local de proprietate este returnat înainte de o cerere către furnizor.
- Alte erori ale registrului: Starea HTTP și corpul din amonte sunt păstrate. Un caz de utilizare invalid sau indisponibil nu reprezintă un set de cerințe gol returnat cu succes.
- 429: Limita de cereri a contului sau a furnizorului partajat a fost atinsă. Respectați Retry-After.
- 502/503: Eșec de disponibilitate al transportului, al furnizorului sau al limitatorului de rată. Păstrați formularul și reîncercați cu backoff.
Disponibilitate și efecte secundare
- Cererea GET revizuită verifică proprietatea existentă asupra brandului, contactează registrul și scrie înregistrări de audit ale cererilor. Nu creează un brand sau o campanie și nu percepe o taxă de înregistrare.
- Metadatele privind taxele furnizorului nu reprezintă o ofertă de preț cu amănuntul pentru clienții MultiTEL. Portalul revizuiește separat prețurile contului înainte de o cerere de înregistrare ulterioară.
- Calificarea și cerințele se pot schimba. Reîmprospătați-le pentru brandul și cazul de utilizare selectate înainte de trimitere. O căutare reușită nu reprezintă o aprobare a campaniei, o atribuire de număr sau o permisiune de a începe trimiterea mesajelor.