Выберите способ доступа
Агентам обычно нужны две вещи: факты для планирования и способ действовать. BroadNet разделяет их. Сервер знаний отвечает на вопросы без аккаунта; для отправки всегда нужен ваш токен.
Публичные ответы в режиме «только чтение» на основе тех же данных, что и на этом сайте: покрытие, правила для имени отправителя, ориентировочные цены, нормативные акты, количество сегментов, ответы, тематические исследования, журнал изменений и статус.
- Аутентификация:
- Нет
- Доступ:
- Только чтение · 13 инструментов, 60 запросов в минуту с одного IP
- Подходит для:
- Планирование, исследования и вопросы до продажи — ещё до создания аккаунта.
API сообщений BroadNet в виде MCP-инструментов. Агент отправляет и отслеживает сообщения с правами токена, который вы ему выдали.
- Аутентификация:
- Bearer <token>
- Доступ:
- Действует в вашем аккаунте
- Подходит для:
- Ассистенты и агенты, которые отправляют сообщения по запросу пользователя, при этом человек подтверждает каждую отправку.
REST с токеном Bearer, одно семейство путей на канал, описанное спецификацией OpenAPI 3.1. Решает ваш агент; вызов выполняет ваш код.
- Аутентификация:
- Bearer <token>
- Доступ:
- Ваш код вызывает API · OpenAPI 3.1
- Подходит для:
- Агенты в продакшене, где повторные попытки, логирование и лимиты контролирует ваш бэкенд.
Единственный официальный SDK, @broadnet/cpaas-sdk, сгенерированный из спецификации OpenAPI. В других языках вызывайте REST API напрямую или сгенерируйте клиент.
- Аутентификация:
- Bearer <token>
- Доступ:
- Ваш код вызывает API · TypeScript / Node.js
- Подходит для:
- Фреймворки Node.js-агентов и определения инструментов с полной типизацией.
Что может отправлять агент
Правила одинаковы, какой бы интерфейс ни использовал агент: зарегистрированное имя отправителя, получатель, давший согласие, и контент, подходящий каналу.
Одно сообщение на запрос или массовая рассылка из файла. Тарификация посегментная, поэтому длинные и нелатинские тексты стоят дороже: сначала посчитайте сегменты.
- REST API
POST /sms/sendSms(JSON)POST /sms/sendbulk(multipart)- MCP сообщений
- Инструменты отправки SMS, например
post_sms_send
Произвольные сообщения — в пределах 24-часового окна обслуживания; вне его — только одобренные шаблоны. Шаблоны выбираются из списка и отправляются по имени.
- REST API
POST /whatsapp/message/sendbulk(multipart)- MCP сообщений
post_whatsapp_message_sendget_whatsapp_template_listpost_whatsapp_template_send
Код генерирует ваша система; агент отправляет его в SMS или в шаблоне аутентификации WhatsApp. В публичном API нет отдельного эндпоинта проверки, поэтому проверка кода остаётся в вашей системе.
- REST API
POST /sms/sendSmsс кодом в сообщении- MCP сообщений
- Те же инструменты SMS и шаблонов WhatsApp
Голосовые OTP, вызовы с синтезом речи (text-to-speech) и IVR подключаются через вашу команду по работе с аккаунтом. Публичная спецификация OpenAPI и MCP-инструменты охватывают каналы сообщений, а не голосовые вызовы. Для исходящих звонков с ИИ см. DialerBee.
- REST API
- Подключается для каждого аккаунта
- MCP сообщений
- Голосовые инструменты отсутствуют
Разбор примера: агент планирует запуск OTP
Пользователь просит агента спланировать отправку одноразовых паролей в ОАЭ. Агент вызывает четыре инструмента на публичном сервере знаний. Ниже приведены реальные результаты сервера, сокращенные до полей, которые использует агент.
Мы хотим ежемесячно отправлять около 50 000 кодов авторизации клиентам в ОАЭ. Что нам для этого нужно и сколько это будет стоить?
- 1Вызов инструмента
check_coverageПокрыты ли ОАЭ и какими операторами?→{"country":"UAE"}Результат (сокращенный){ "country": "UAE", "regulator": "TDRA (Telecommunications and Digital Government Regulatory Authority)", "channels": { "sms": "Live", "otp": "Live", "whatsapp": "Live", "rcs": "Available", "voice": "Live" }, "operators": [ { "name": "Etisalat / e&", "status": "Direct" }, { "name": "du", "status": "Direct" }, { "name": "Virgin Mobile", "status": "Operator-grade" } ] } - 2Вызов инструмента
sender_id_rulesЧто нужно для имени отправителя в этой стране?→{"country":"ae"}Результат (сокращенный){ "typicalLeadTime": "5-7 business days", "requirements": [ { "format": "Alphanumeric (Latin or Arabic), up to 11 chars. AD- prefix mandatory on promotional senders.", "preRegistration": "Required — one sender ID per legal entity per use case" } ], "marketingRules": { "quietHours": "TDRA's spam policy bars marketing text messages between 21:00 and 07:00 GST. Transactional OTP and alerts are 24/7." } } - 3Вызов инструмента
count_sms_segmentsСколько сегментов занимает сообщение?→{"text":"Your MyShop code is 482913. It expires in 5 minutes. Never share it."}Результат (сокращенный){ "encoding": "GSM-7", "units": 68, "segments": 1 } - 4Вызов инструмента
estimate_priceКакова ориентировочная стоимость?→{"country":"UAE","channel":"sms","volume":50000}Результат (сокращенный){ "country": "UAE", "unitPriceUsd": 0.0123, "unit": "per SMS segment", "estimatedMonthlyUsd": 615, "ratesReviewed": "2026-09-24", "note": "Indicative list rate, excluding taxes and sender-ID fees. Volume pricing available; a written quote confirms per-operator pricing." }
ОАЭ покрыты прямыми подключениями к операторам (Etisalat / e& · du). Имя отправителя требует предварительной регистрации в TDRA, обычно это занимает 5–7 рабочих дней. Сообщение с кодом занимает 1 сегмент SMS. По ориентировочному прейскурантному тарифу 0,0123 $ за сегмент 50 000 кодов обойдутся примерно в 615 $ в месяц без учёта налогов и сборов за имя отправителя. Это не коммерческое предложение.
Следующий шаг: запросите тестовый доступ на broadnet.me/signup. Как только вы получите токен, я смогу отправить один тестовый код на ваш проверенный номер через сервер обмена сообщениями. Подготовить это сообщение для вашего подтверждения?
Формируется из реального вывода инструментов при каждом развёртывании
Копировать и вставить
В примерах используются только вымышленные номера. Считывайте токен из переменной окружения; никогда не вставляйте его в чат или в файл, включенный в репозиторий.
{
"mcpServers": {
"broadnet-knowledge": {
"type": "http",
"url": "https://www.broadnet.me/mcp"
},
"broadnet": {
"type": "http",
"url": "https://mcp.broadnet.me/mcp",
"headers": {
"Authorization": "Bearer ${BROADNET_TOKEN}"
}
}
}
}curl -X POST https://www.broadnet.me/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "MCP-Protocol-Version: 2025-06-18" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
"params":{"name":"estimate_price",
"arguments":{"country":"UAE","channel":"sms","volume":50000}}}'curl -X POST https://api.broadnet.me/sms/sendSms \
-H "Authorization: Bearer $BROADNET_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"senderId": "BroadNet",
"destinationNumber": "447700900123",
"message": "Your verification code is 482913",
"messageType": "TEXT"
}'
# 200 OK → response body is the message ID, e.g. 2603121407537573731// npm install @broadnet/cpaas-sdk axios
import { Configuration, SMSSMSApi } from "@broadnet/cpaas-sdk";
const sms = new SMSSMSApi(
new Configuration({
basePath: "https://api.broadnet.me",
accessToken: process.env.BROADNET_TOKEN!,
}),
);
const res = await sms.smsSendsmsPost({
sMSSmsRequest: {
senderId: "BroadNet",
destinationNumber: "447700900123",
message: "Your verification code is 482913",
messageType: "TEXT",
},
});
console.log(res.data); // message ID# Send an approved WhatsApp template
curl -X POST https://api.broadnet.me/whatsapp/message/sendbulk \
-H "Authorization: Bearer $BROADNET_TOKEN" \
-F batchId=0 \
-F campaignName=order-updates \
-F destinationNo=447700900123 \
-F messageType=TEMPLATE \
-F templateName=order_update \
-F templateLanguage=en_US \
-F bodyTemplateVariables=INV-400
# 200 OK → the response carries the batchId; per-recipient status
# (SUBMITTED → SENT → DELIVERED → READ) arrives on your webhook.Машиночитаемые точки входа
Агенты, которые читают, а не подключаются, найдут всё в простых файлах. Ни один из них не требует входа.
- llms.txt
/llms.txtИндекс сайта для языковых моделей с разделом о доступе и ограничениях для агентов, а также по одному файлу на каждый язык.
- Навыки агентов
/.well-known/agent-skills/index.jsonПять ранбуков SKILL.md: покрытие и цены, регистрация имени отправителя, первое тестовое SMS, тестовый доступ и подключение к MCP-серверам.
- Карточка агента A2A
/.well-known/agent-card.jsonКарточка Agent2Agent для тех же инструментов знаний в режиме «только чтение», предоставляемых через JSON-RPC на /a2a.
- Каталог API
/.well-known/api-catalogНабор RFC 9727-ссылок, указывающих на спецификацию OpenAPI, документацию API, оба сервера MCP и страницу статуса.
- Карточка сервера MCP
/.well-known/mcp.jsonКарточка сервера с описанием обоих серверов MCP, их протоколов передачи и аутентификации.
- OpenAPI 3.1
/developers/openapi.yamlПолное описание REST API: скачайте его или сгенерируйте по нему типизированный клиент.
- Markdown-копии
/pricing/sms/uae.mdДобавьте .md к большинству URL-адресов страниц или отправьте Accept: text/markdown, чтобы получить чистую Markdown-копию страницы.
- Файлы данных
/data/coverage.jsonОхват, опубликованные тарифы и нормативные требования для каждого рынка в формате JSON (CSV для охвата и цен).
- Статус в JSON
/status/api/v2/summary.jsonИзмеренная доступность веб-сайта, шлюза API и обоих эндпоинтов MCP в формате сводки Statuspage v2.
Правила, которым должен следовать агент
Агент, отправляющий сообщения, действует от имени вашего бренда, используя ваши учетные данные. Включите эти правила в его инструкции и инструменты.
- Сначала согласие, затем контент
Отправляйте маркетинговые сообщения только тем получателям, которые дали согласие, и сохраняйте запись об этом согласии. Инструмент sender_id_rules возвращает правила получения согласия для каждого рынка.
- Учитывайте отказы от рассылки
Рекламные сообщения содержат ключевое слово для отказа от рассылки, принятое на конкретном рынке, например STOP. Агент никогда не отправляет сообщения на номера, которые оформили отказ от рассылки.
- Только зарегистрированные имена отправителя
Во многих регионах требуется предварительная регистрация буквенно-цифровых имен отправителя. Агент использует только те имена отправителя, которые одобрены в вашем аккаунте, и никогда не использует вымышленные.
- Соблюдайте часы тишины
На ряде рынков маркетинг ночью запрещён. sender_id_rules возвращает часы тишины со ссылкой на источник; OTP и оповещения обычно разрешены круглосуточно.
- Защитите OTP от накрутки трафика
Боты могут запускать отправку OTP на номера, с которых мошенники получают доход. Ограничьте частоту запросов кода по номеру, IP и устройству и заблокируйте направления, которые вы не обслуживаете. В MyOTP эта защита включена по умолчанию.
- Каждая отправка подтверждается человеком
Пусть клиент запрашивает подтверждение перед любым инструментом отправки, особенно на много получателей, и включайте только те инструменты, которые нужны агенту.
- Тестируйте на своём номере
С тестовыми учётными данными отправляйте сообщения только на свой подтверждённый номер. В примерах и промптах используются вымышленные номера.
- Не передавайте токен в чате
Токен — это учётные данные для отправки. Загружайте его из переменной окружения, никогда из промпта, и отзывайте при утечке.
Связанное
Оба сервера подробно: эндпоинты, аутентификация, настройка клиента и демо.
От получения тестового доступа до первой SMS с помощью curl или TypeScript SDK.
Эндпоинты отправки для каждого канала, аутентификация Bearer и формат ошибок.
Как выполнять повторные попытки, не отправляя сообщение дважды.
Кодировка и количество сегментов для любого текста сообщения.
Модели распознавания арабской речи и компьютерного зрения для голосовых и документных ИИ-агентов.
Многоязычный ИИ-дайлер для исходящих звонков контакт-центров.
Как работает мошенничество с OTP и какие меры защиты его останавливают.
Вопросы
Может ли ИИ-агент отправлять SMS и WhatsApp сообщения через BroadNet?
Да. Подключите его к MCP-серверу сообщений https://mcp.broadnet.me/mcp с вашим токеном BroadNet или пусть ваш код вызывает REST API https://api.broadnet.me. В обоих случаях агент действует с правами вашего токена, поэтому каждую отправку должен подтверждать человек.
Нужен ли агенту аккаунт, чтобы запрашивать информацию о покрытии или ценах?
Нет. Сервер знаний MCP https://www.broadnet.me/mcp публичный и работает только на чтение. Он возвращает покрытие, правила имени отправителя, ориентировочные прейскурантные цены и регулирование из тех же данных, что и сайт. Цены ориентировочные, это не коммерческое предложение.
Как агент отправляет одноразовый пароль?
Ваша система генерирует код, а агент отправляет его в SMS через POST /sms/sendSms или в шаблоне аутентификации WhatsApp. В публичном API нет отдельного эндпоинта проверки, поэтому проверка кода остаётся в вашей системе.
Может ли агент совершать голосовые вызовы?
Голосовые OTP, вызовы с синтезом речи и IVR подключаются через вашу команду по работе с аккаунтом BroadNet. Их нет в публичной спецификации OpenAPI и в MCP-инструментах. DialerBee — ИИ-дайлер BroadNet для исходящих звонков контакт-центров.
Как мне получить токен?
Запросите тестовый доступ на /signup. BroadNet ответит в течение одного рабочего дня и пришлёт тестовые учётные данные. Мгновенной выдачи ключа в режиме самообслуживания нет.
Подключите вашего агента к BroadNet
Начните работу с публичным сервером знаний уже сегодня. Запросите тестовый доступ, когда ваш агент будет готов к отправке.