Что такое MCM API v1
REST API для интеграции внешних систем (CRM, BI, авто-обзвон, аналитика) с кабинетом MCM. Каждый тенант управляет своими ключами на странице /settings/api в кабинете.
Базовый URL
https://smart.mcm.ru/api/v1/...
Можно также использовать домен своего тенанта: https://your-tenant.smart.mcm.ru/api/v1/... — host не важен, тенант определяется из ключа.
Авторизация
Все запросы требуют заголовок:
Authorization: Bearer mcm_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Ключ создаётся в кабинете /settings/api. Сразу после создания токен показывается только один раз — сохраните его. На сервере хранится только sha256-хэш.
Параметры ключа
- Scopes — список разрешённых операций. Если ключу нужен только просмотр CDR — выберите только
cdr.read. Если оставить пустым — выдаётся scope*(полный доступ). - IP allowlist — список IP-адресов, с которых разрешены запросы. Если пусто — любой IP.
- Rate limit — максимум запросов в минуту с одного ключа (по умолчанию 600). При превышении —
HTTP 429.
Тестовый запрос
curl -H "Authorization: Bearer mcm_xxxxxxxx..." \
https://smart.mcm.ru/api/v1/me
Ответ:
{
"tenant": { "id": "uuid", "domain": "...", "name": "..." },
"key_id": 5,
"scopes": ["cdr.read"],
"time": "2026-05-01T22:00:00+00:00"
}
Список доступных scopes
* |
Полный доступ ко всему API |
cdr.read |
Чтение CDR (звонки, записи, транскрипты) |
cdr.write |
Изменение тегов и комментариев звонков |
calls.originate |
Заказ обратного звонка |
transcripts.read |
Чтение транскрипций |
users.read |
Сотрудники: чтение |
phonebook.read |
Телефонная книга: чтение |
phonebook.write |
Телефонная книга: создание/изменение |
calltracker.read |
Коллтрекинг: чтение |
chat.read |
Чат с сайта: чтение |
fmc.read |
FMC SIM-карты: чтение |
webhooks.read |
Webhooks: чтение |
webhooks.write |
Webhooks: подписка/отписка |
Scope можно указывать с .*: phonebook.* означает и phonebook.read, и phonebook.write.
Формат ошибок
{
"error": "Required scope: cdr.read",
"has_scopes": ["phonebook.read"]
}
- 401 — нет/неверный токен
- 403 — отозван / IP не в allowlist / нет scope
- 404 — объект не найден
- 422 — ошибка валидации
- 429 — превышен rate-limit (повторите через минуту)
Audit log
Каждый запрос с использованием API-ключа записывается в audit-лог (метод, путь, статус, IP, длительность). Просмотр: /settings/api → таблица «Последние запросы» (last 50).