Выберите существующий бренд в своей учётной записи
Используйте идентификатор бренда в реестре, уже связанный с вашей учётной записью MultiTEL. Этот запрос не создаёт бренд и не привязывает чужой бренд к вашей учётной записи. Текущий клиентский процесс проверяет принадлежность бренда перед запросом доступных ему вариантов использования. Если запрос возвращает 404, проверьте выбранную учётную запись и бренд, а не подставляйте идентификатор строки локальной базы данных.
Сформируйте список вариантов использования на основе этого результата
Общий каталог вариантов использования описывает возможности реестра. Этот запрос для конкретного бренда предоставляет варианты, доступные выбранному бренду. Сохраняйте каждое возвращённое значение поля usecase и дополняйте его отображаемым названием и описанием из каталога. Не предлагайте все записи общего каталога так, будто бренд соответствует требованиям каждой из них.
Портал ожидает в этом ответе список в формате JSON. Если ответ отсутствует, имеет неверный формат или содержит ошибку, сохраните данные формы клиента и сообщите, что сведения о доступных вариантах использования загрузить не удалось. Не считайте такой ответ молчаливым одобрением варианта использования по умолчанию. Реестр может возвращать поля, не показанные в сокращённом примере.
Загрузите требования для выбранного варианта использования
После того как клиент выберет одно из возвращённых значений варианта использования, выполните запрос к /tcr/v2/campaignBuilder/brand/{brand_id}/usecase/{usecase} для того же бренда. Этот ответ содержит ограничения для подвариантов использования и требования отдельных операторов связи. Используйте его для сбора примеров сообщений, согласия и других обязательных заявлений. Одного списка доступных вариантов использования недостаточно для формирования полного запроса на регистрацию кампании.
Отдельно проверьте цены для учётной записи
Такие поля поставщика, как monthlyFee, quarterlyFee или annualFee, если они возвращаются, содержат метаданные о сборах поставщика. Они не заменяют цену для учётной записи клиента или условия регистрации. Текущий портал отдельно получает розничные цены кампаний и объединяет их со сведениями о доступных вариантах использования на экране проверки. Не определяйте сумму списания с клиента по жёстко заданным ценам в старой вспомогательной функции перечисления.
Обновляйте данные при изменении бренда или варианта использования
При переключении бренда удалите варианты предыдущего бренда и загрузите доступные варианты для нового. Перед отправкой обновите требования выбранного варианта использования. Эти запросы GET не отправляют заявку на регистрацию, не активируют кампанию и не назначают номера.
Запрос
Используйте активированную учётную запись API для доступа по HTTPS с разрешённого исходного IP-адреса. Текущий маршрут поддерживает политику аутентификации учётной записи, включая аутентификацию Basic и активированные учётные записи API с аутентификацией по токену предъявителя. Не используйте учётные данные поставщика.
Запрос GET с идентификатором бренда в пути URL. Тело запроса не требуется.
curl --fail-with-body --silent --show-error \
--user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/campaignBuilder/brand/$BRAND_ID"| Имя | Тип | Обязательный | Описание |
|---|---|---|---|
brand_id | строка | Да | Идентификатор бренда в реестре, связанный с вашей аутентифицированной учётной записью MultiTEL. Используйте идентификатор бренда, а не идентификатор строки локальной базы данных, идентификатор кампании или налоговый номер компании. Закодируйте его как один сегмент пути URL. |
Ответ
Текущий маршрут TCR напрямую возвращает тело ответа реестра в формате JSON и сохраняет его статус HTTP. Он не добавляет устаревшую оболочку status/response версии v3. Сокращённый вымышленный пример не является результатом реального запроса доступных вариантов использования. Перед использованием проверьте статус HTTP и соответствие ожидаемой структуре JSON. Текущий портал ожидает список записей о доступных вариантах использования, каждая из которых указывает usecase. Он объединяет эти записи с каталогом usecase для получения отображаемых названий и отдельно загружает розничные цены. Могут присутствовать дополнительные поля поставщика.
Пример структуры ответа; это не реальные данные учётной записи и не актуальное ценовое предложение.
[
{
"usecase": "2FA"
}
]Ошибки
- 401: Не удалось выполнить аутентификацию учётной записи. Проверьте учётные данные API, состояние активации и действующие ограничения исходных IP-адресов.
- 404: Бренд не связан с аутентифицированной учётной записью либо поставщик не может найти запрошенный бренд или выбранный вариант. Локальный отказ по результатам проверки принадлежности возвращается до отправки запроса поставщику.
- Другие ошибки реестра: статус HTTP и тело ответа вышестоящей системы сохраняются. Недопустимый или недоступный вариант использования не означает успешный ответ с пустым набором требований.
- 429: Достигнут лимит запросов учётной записи или общий лимит запросов поставщика. Соблюдайте указания Retry-After.
- 502/503: Сбой транспорта либо недоступность поставщика или ограничителя частоты запросов. Сохраните данные формы и повторяйте запрос с увеличением задержки между попытками.
Доступность и побочные эффекты
- Проверенный запрос GET проверяет принадлежность существующего бренда, обращается к реестру и записывает сведения в журнал аудита запросов. Он не создаёт бренд или кампанию и не взимает плату за регистрацию.
- Метаданные о сборах поставщика не являются розничным ценовым предложением для клиента MultiTEL. Перед последующим запросом на регистрацию портал отдельно проверяет цены для учётной записи.
- Доступные варианты использования и требования могут меняться. Перед отправкой обновите их для выбранного бренда и варианта использования. Успешный запрос не означает одобрение кампании, назначение номеров или разрешение начать отправку сообщений.