Înregistrați afacerea din spatele mesajelor dvs.
O marcă de mesagerie identifică afacerea care trimite mesaje 10DLC în SUA. Înregistrați marca înainte de a alege un caz de utilizare pentru campanie. Folosiți datele legale ale afacerii și o persoană de contact care poate finaliza orice validare necesară. Un ID de marcă returnat nu reprezintă, în sine, aprobarea de a trimite mesaje.
Folosiți această rută curentă deținută de cont prin HTTPS cu un cont API activat și adresa IP sursă permisă a acestuia. Nu trimiteți user_id, username sau identificatorul de proprietar al unui alt client. MultiTEL înregistrează proprietatea pe baza contului autentificat.
Începeți cu o cerere sandbox explicită
Portalul setează implicit câmpul mode al formularului la modul sandbox; o cerere API directă trebuie să includă explicit valoarea booleană JSON mock: true atunci când intenționați o marcă simulată. Omiterea acestui indicator nu garantează modul sandbox și poate crea o înregistrare de producție facturabilă. Câmpul mode al portalului nu înlocuiește câmpul mock al API-ului.
Pregătiți un fișier local brand.json folosind câmpurile de mai jos. Înlocuiți substituenții cu detalii de test adecvate și coduri de catalog curente. Acest exemplu este o afacere privată cu scop lucrativ; alte tipuri de entități au cerințe diferite.
{
"entityType": "PRIVATE_PROFIT",
"displayName": "Example business",
"companyName": "Example legal business name",
"ein": "YOUR_TAX_ID",
"einIssuingCountry": "US",
"phone": "+12025550123",
"street": "123 Example Street",
"city": "Example City",
"state": "NY",
"postalCode": "10001",
"country": "US",
"email": "contact@example.invalid",
"brandRelationship": "BASIC_ACCOUNT",
"vertical": "CURRENT_VERTICAL_CODE",
"referenceId": "your-business-reference",
"mock": true
}Afacerea, adresa, telefonul și identificatorul de mai sus sunt substituenți, nu o identitate de afacere pregătită pentru înregistrare. Obțineți valorile curente pentru entityType, vertical, country, state, brandRelationship și alte enumerări din cataloagele de mesagerie.
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $IDEMPOTENCY_KEY" \
--data-binary @brand.json \
'https://api.multitel.net/tcr/v2/brand/nonBlocking'Câmpuri pentru afacere și contact
| Câmpuri | Ce trebuie furnizat |
|---|---|
| entityType, displayName | Codul curent al tipului de entitate și numele recognoscibil al mărcii. Lungimile maxime sunt de 20 și, respectiv, 255 de caractere. |
| country, street, city, state, postalCode | Adresa reală a afacerii. Folosiți codul de țară din două litere și, când este cazul, un cod state curent din SUA. Limite: street 255, city 100, state 20 și postalCode 10 caractere. |
| email, phone | Un e-mail de contact funcțional, de până la 100 de caractere, și un număr de telefon în format internațional cu + și codul de țară, de până la 20 de caractere. Păstrați datele afacerii consecvente în întreaga înregistrare. |
| companyName, ein, einIssuingCountry | Pentru organizații, furnizați denumirea legală a companiei și identificatorul fiscal al afacerii. Țara emitentă a identificatorului este un câmp separat din două litere. Limite: companyName 255 și ein 21 de caractere. O persoană fizică autorizată folosește câmpurile de nume personal în locul identității fiscale a unei organizații. |
| brandRelationship, vertical | Relația cu afacerea și domeniul acesteia, folosind coduri de catalog curente. Organizațiile trebuie să le furnizeze; regulile pentru persoane fizice autorizate diferă. Nu înlocuiți codurile API cu etichete de afișare traduse. |
| firstName, lastName, mobilePhone | Obligatorii pentru o persoană fizică autorizată. Câmpurile de nume permit până la 100 de caractere fiecare. Furnizați un număr de mobil eligibil pentru validarea OTP obligatorie, în format internațional. |
| stockSymbol, stockExchange, website, businessContactEmail | O companie cotată la bursă are nevoie și de simbolul bursier/bursa, de website și de un e-mail de contact de afaceri eligibil pentru procesul de validare suplimentar. Limite: stockSymbol 10, website 255 și businessContactEmail 255 de caractere. |
| altBusinessIdType, altBusinessId | Identificator alternativ opțional al afacerii. Furnizați tipul și valoarea împreună. Folosiți catalogul curent de tipuri; valoarea permite până la 50 de caractere. |
| referenceId | Referința dvs. de afaceri, de până la 50 de caractere. Includeți-o la înregistrarea unei persoane fizice autorizate conform cerințelor curente specifice entității. Reprezintă metadate de afaceri, nu cheia de idempotență a cererii. |
| website, ipAddress, tag | Site web suplimentar, metadate despre IP-ul de origine și valori de etichetă, când este cazul. Acestea nu stabilesc proprietatea contului și nu înlocuiesc verificările de identitate. |
| mock | O valoare booleană JSON. Folosiți true numai pentru fluxul simulat intenționat; folosiți false pentru o înregistrare de producție revizuită explicit. Nu trimiteți șirul "false" ca înlocuitor pentru o valoare booleană JSON. |
Persoanele fizice autorizate sunt acceptate pentru înregistrări din SUA sau Canada și necesită verificare OTP înainte de eligibilitatea pentru campanii. Companiile cotate la bursă pot necesita o etapă de validare a contactului de afaceri. GOVERNMENT este destinat entităților guvernamentale cu sediul în SUA; confirmați categoria corectă de entitate pentru alte organizații. Respectați cerințele specifice entității, precum și erorile de validare returnate.
Păstrați o cheie de idempotență stabilă
Generați o singură cheie Idempotency-Key pentru această înregistrare intenționată. Trebuie să conțină 1–128 de caractere ASCII imprimabile, fără spații. Reutilizați aceeași cheie numai cu aceeași metodă HTTP, aceeași cale, același șir de interogare și exact aceiași octeți ai corpului cererii. Reformatarea JSON, chiar și fără a-i schimba sensul, modifică amprenta cererii.
O cerere cu cheie finalizată poate reda răspunsul stocat fără o nouă trimitere a înregistrării. Un duplicat aflat încă în procesare returnează HTTP 409 și poate include Retry-After. O cerere modificată cu aceeași cheie intră în conflict. Nu generați o cheie nouă doar pentru că o cerere a expirat sau a returnat o eroare: afacerea este posibil să fi fost deja înregistrată.
Păstrați brand.json neschimbat în timp ce rezolvați acea cerere. Un răspuns 500 sau 502 din cache poate reda eroarea inițială în loc să reîncerce înregistrarea. Păstrați orice brandId, requestId și anteturi de corelare returnate; reconciliați marca existentă înainte de a începe o cerere diferită.
Citiți marca și starea acesteia
Acest API folosește coduri de stare HTTP și un corp JSON direct, în locul anvelopei status/response din v3. O înregistrare reușită returnează un obiect de marcă ce include brandId. Stocați acest identificator și examinați starea de validare sau de identitate returnată. Câmpurile suplimentare depind de entitate și de starea înregistrării.
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/brand/$BRAND_ID"Citiți numai o marcă aparținând contului dvs. Un 404 poate însemna că marca nu este disponibilă pentru acest cont. Finalizați orice validare necesară, apoi folosiți calificarea mărcii pentru a găsi cazurile de utilizare de campanie disponibile pentru aceasta. Resursele simulate nu pot fi considerate eligibile pentru trimiterea în producție.
Taxe de producție
| Înregistrare | Taxă |
|---|---|
| Organizație standard | $5.00 |
| Persoană fizică autorizată | $4.45 |
| Marcă simulată | Nicio debitare pentru înregistrarea mărcii în fluxul simulat |
Aceste sume de vânzare cu amănuntul au fost verificate în raport cu configurația curentă a portalului la 24 octombrie 2026. Confirmați taxa curentă în portal înainte de înregistrarea în producție. Taxele de campanie, verificarea suplimentară și utilizarea mesageriei sunt separate. O înregistrare de producție verifică permisiunea de achiziție și fondurile disponibile înainte de trimitere; crearea reușită în registru și facturarea locală sunt etape de procesare separate, așa că păstrați ID-ul resursei și reconciliați tranzacțiile dacă apare o eroare sau o problemă de facturare.
Transformarea unei mărci simulate în marcă de producție este un flux confirmat separat și poate crea o nouă identitate de producție și o nouă debitare. Nu presupuneți că modificarea mock în false într-o cerere ulterioară convertește marca existentă.
Gestionați erorile fără a duplica marca
| Rezultat HTTP | Ce trebuie verificat |
|---|---|
| 400 | Citiți erorile de câmp. Erorile de validare din registru pot fi un tablou de obiecte code/description. Validarea locală a cheii de idempotență poate returna de asemenea 400. |
| 401, 403 sau 404 | Verificați acreditările API, IP-ul sursă permis al contului API, permisiunile clientului și proprietatea. Un răspuns din registru poate purta și propria eroare de autorizare. |
| 402 | Verificați fondurile și permisiunea de achiziție. Nu tratați o cerere de producție fără fonduri ca pe un test sandbox. |
| 409 | Păstrați aceeași cheie și cererea neschimbată când așteptați o cerere în curs. Un conflict de corp/cheie modificat sau un răspuns anterior irecuperabil necesită mai întâi reconciliere. |
| 429 sau un răspuns de limitator indisponibil | Respectați Retry-After când este prezent. Reîncercați aceeași cerere intenționată și aceeași cheie după expirarea limitei. |
| 500 sau 502 | Operațiunea la distanță este posibil să fi fost acceptată. O eroare de procesare locală poate include requestId. Salvați-l și verificați resursa existentă; nu presupuneți că este necesară o înregistrare de înlocuire. |