Zachowaj powiązanie marki i przypadku użycia
Użyj identyfikatora marki na swoim koncie oraz wartości przypadku użycia zwróconej przez listę kwalifikacji tej samej marki. Proces klienta sprawdza własność przed żądaniem do dostawcy. Potwierdź, że pole usecase zwróconego obiektu odpowiada wybranej wartości. Wyszukanie dla jednej marki lub jednego przypadku użycia nie ustala wymagań dla innej marki ani innego przypadku użycia.
Odczytaj bieżące wymagania
| Pole | Jak portal z niego korzysta |
|---|---|
| minSubUsecases / maxSubUsecases | Minimalna i maksymalna liczba podprzypadków użycia dla tego wyboru. Wybieraj wartości z katalogu prawidłowych podprzypadków użycia, a nie z dowolnego tekstu. |
| mnoMetadata | Wymagania specyficzne dla operatora, indeksowane identyfikatorem operatora. Do wyboru operatorów używaj identyfikatorów obecnych w bieżącej odpowiedzi. |
| mnoSupport / qualify | Wsparcie i kwalifikacja operatora. Portal wyklucza operatorów jawnie oznaczonych jako false w którymkolwiek z tych pól i wymaga co najmniej jednego kwalifikującego się wybranego operatora. |
| minMsgSamples | Wymagana liczba próbek dla operatora. Portal wymaga co najmniej jednej niepustej próbki i spełnia najwyższe minimum spośród kwalifikujących się wybranych operatorów. |
| reqSubscriberOptin / reqSubscriberOptout / reqSubscriberHelp | Wymagane deklaracje abonenta. Tam, gdzie są wymagane, odpowiednia deklaracja musi mieć wartość true. Włączone deklaracje wymagają również swoich pól słów kluczowych i wiadomości odpowiedzi. |
| noEmbeddedLink / noEmbeddedPhone | Ograniczenia dotyczące osadzonych linków lub numerów telefonów. Portal odrzuca zadeklarowaną funkcję, jeśli kwalifikujący się wybrany operator jej zabrania. |
Stosuj łącznie wymagania wybranych operatorów
Wymagania operatorów mogą się różnić. Gdy nie podano jawnej listy operatorów, portal uwzględnia wszystkie metadane operatorów w odpowiedzi; niepusta lista ogranicza kontrole do tych wybranych identyfikatorów. Nie używaj wyłącznie liczby próbek ani deklaracji pierwszego operatora. Wybierz operatorów z odpowiedzi, sprawdź wsparcie i kwalifikację, spełnij najwyższe obowiązujące minimum próbek oraz spełnij wymagane deklaracje opt-in, opt-out i pomocy w całym tym wyborze. Portal odrzuca wybrane identyfikatory operatorów nieobecne w bieżącej odpowiedzi oraz odrzuca wybór bez żadnego kwalifikującego się operatora.
Wymagania opisują, co należy dostarczyć; nie dowodzą, że proces uzyskiwania zgody klienta ani treść kampanii spełniają te wymagania. Zbierz prawdziwe, reprezentatywne próbki i deklaracje. Nie włączaj automatycznie deklaracji tylko po to, aby formularz przeszedł walidację.
Przygotuj próbki i odpowiedzi dla abonentów
Bieżący formularz kampanii używa pól od sample1 do sample5 dla próbek wiadomości. Jeśli wymagań nie da się spełnić w ramach dostępnego formularza, zatrzymaj się i wyjaśnij wybór z działem wsparcia. Dla włączonej deklaracji abonenta podaj odpowiadające jej słowa kluczowe i tekst odpowiedzi: optinKeywords/optinMessage, optoutKeywords/optoutMessage oraz helpKeywords/helpMessage. Utrzymuj spójność próbek z wybranym przypadkiem użycia i rzeczywistą komunikacją z klientami.
Sprawdź przed każdym żądaniem rejestracji
Odśwież wymagania, gdy zmieni się marka, przypadek użycia lub wybór operatorów. Portal ponownie weryfikuje wybrany przypadek użycia, liczbę podprzypadków użycia, kwalifikowalność operatorów, próbki i deklaracje przed utworzeniem. Cennik konta i warunki rejestracji sprawdź osobno. To żądanie GET nie rejestruje ani nie zatwierdza kampanii, nie udostępnia jej operatorowi wiadomości ani nie przypisuje numeru telefonu. Utworzenie i provisioning to osobne operacje.
Obsłuż nieudane wyszukanie wymagań
Jeśli żądanie się nie powiedzie, zwróci nieoczekiwany JSON lub nie będzie odpowiadać wybranemu przypadkowi użycia, pozostaw formularz niekompletny i pozwól klientowi ponowić próbę po usunięciu błędu. Nie zastępuj niedostępnych wymagań pustym obiektem ani nie zakładaj, że brak danych oznacza brak wymagań. Respektuj nagłówek Retry-After i stosuj wycofywanie (backoff) w przypadku limitów żądań i awarii dostępności.
Żądanie
Użyj włączonego konta API przez HTTPS z dozwolonego źródłowego adresu IP. Bieżąca trasa obsługuje zasady uwierzytelniania konta, w tym uwierzytelnianie Basic oraz włączone konta API z tokenem bearer. Nie używaj poświadczeń dostawcy.
GET z identyfikatorem marki i wybraną wartością przypadku użycia w ścieżce URL. Treść żądania nie jest wymagana.
curl --fail-with-body --silent --show-error \
--user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/campaignBuilder/brand/$BRAND_ID/usecase/$USECASE"| Nazwa | Typ | Wymagany | Opis |
|---|---|---|---|
brand_id | string | Tak | Identyfikator marki w rejestrze powiązany z Twoim uwierzytelnionym kontem MultiTEL. Użyj identyfikatora marki, a nie identyfikatora wiersza lokalnej bazy danych, identyfikatora kampanii ani numeru podatkowego firmy. Zakoduj go jako jeden segment ścieżki URL. |
usecase | string | Tak | Maszynowo czytelna wartość usecase wybrana z listy kwalifikacji tej samej marki. Zachowaj wielkość liter; nie wysyłaj przetłumaczonej etykiety wyświetlanej. Zakoduj ją jako jeden segment ścieżki URL. |
Odpowiedź
Bieżąca trasa TCR zwraca bezpośrednio treść JSON z rejestru i zachowuje jej status HTTP. Nie dodaje starszej koperty status/response z wersji v3. Skrócony fikcyjny przykład nie jest rzeczywistym wynikiem kwalifikacji. Przed użyciem sprawdź status HTTP i oczekiwany kształt JSON. Portal oczekuje obiektu, którego usecase odpowiada wybranemu przypadkowi użycia. Wymagania operatorów znajdują się w mnoMetadata, indeksowane identyfikatorem operatora. Przykładowy identyfikator operatora i wymagania są fikcyjne. Mogą zostać zwrócone inne pola dostawcy.
Poglądowy kształt odpowiedzi; nie są to rzeczywiste dane konta ani aktualna wycena.
{
"usecase": "2FA",
"minSubUsecases": 0,
"maxSubUsecases": 0,
"mnoMetadata": {
"12345": {
"mnoSupport": true,
"qualify": true,
"minMsgSamples": 1,
"reqSubscriberOptin": true,
"reqSubscriberOptout": true,
"reqSubscriberHelp": true,
"noEmbeddedLink": false,
"noEmbeddedPhone": false
}
}
}Błędy
- 401: Uwierzytelnianie konta nie powiodło się. Sprawdź poświadczenia API, stan włączenia i obowiązujące ograniczenia źródłowych adresów IP.
- 404: Marka nie jest powiązana z uwierzytelnionym kontem lub dostawca nie może znaleźć żądanej marki lub wyboru. Lokalna odmowa własności jest zwracana przed żądaniem do dostawcy.
- Inne błędy rejestru: status HTTP i treść z systemu nadrzędnego są zachowywane. Nieprawidłowy lub niedostępny przypadek użycia nie jest pomyślnym pustym zestawem wymagań.
- 429: Osiągnięto limit żądań konta lub współdzielony limit dostawcy. Respektuj Retry-After.
- 502/503: Awaria dostępności transportu, dostawcy lub ogranicznika żądań. Zachowaj formularz i ponów próbę z wycofywaniem (backoff).
Dostępność i skutki uboczne
- Przejrzane żądanie GET sprawdza istniejącą własność marki, kontaktuje się z rejestrem i zapisuje rekordy audytu żądań. Nie tworzy marki ani kampanii i nie pobiera opłaty rejestracyjnej.
- Metadane opłat dostawcy nie są detaliczną wyceną dla klienta MultiTEL. Portal osobno sprawdza cennik konta przed późniejszym żądaniem rejestracji.
- Kwalifikacja i wymagania mogą się zmieniać. Odśwież je dla wybranej marki i przypadku użycia przed wysłaniem. Pomyślne wyszukanie nie jest zatwierdzeniem kampanii, przypisaniem numeru ani zezwoleniem na rozpoczęcie wysyłki wiadomości.