Отрасль: Реклама и аналитика. Актуально на 2026-10-24.
API системы сквозной аналитики Roistat: проекты, отчёты аналитики по источникам и метрикам, сделки (выгрузка из CRM, список, статусы), прокси-лиды, коллтрекинг (номера, скрипты, звонки), события, визиты, маркетинговые каналы, баланс. Пути строятся по схеме «контекст / сервис / ресурс / метод», например project/calltracking/phone/list.
Расходы, выручка и ROI по рекламным каналам — в свою BI-систему или отчёт.
curl -X POST "https://cloud.roistat.com/api/v1/project/analytics/data?project=12345" \
-H "Api-key: $ROISTAT_KEY" -H 'Content-Type: application/json' -H 'Use-Http-Code: 1' \
-d '{
"dimensions": ["marker_level_1"],
"metrics": ["visits", "leads", "sales", "revenue", "marketing_cost"],
"period": {"from": "2026-10-01T00:00:00+0300", "to": "2026-10-23T23:59:59+0300"}
}'
Если CRM не подключена штатно — выгружать сделки и статусы через API, чтобы Roistat считал выручку по каналам.
curl -X POST "https://cloud.roistat.com/api/v1/project/add-orders?project=12345" \
-H "Api-key: $ROISTAT_KEY" -H 'Content-Type: application/json' \
-d '[{"id": "1042", "name": "Заказ №1042", "date_create": "2026-10-23 14:05", "status": "2", "price": "15000", "cost": "9000", "roistat": "345678"}]'
Прокси-лиды и звонки коллтрекинга с привязкой к визиту и рекламному источнику.
curl -G "https://cloud.roistat.com/api/v1/project/proxy-leads" \
-H "Api-key: $ROISTAT_KEY" -d project=12345 -d period=2026-10-01-2026-10-23
curl -X POST "https://cloud.roistat.com/api/v1/project/calltracking/call/list?project=12345" \
-H "Api-key: $ROISTAT_KEY" -H 'Content-Type: application/json' \
-d '{"filters": {"and": [["date", ">", "2026-10-01T00:00:00+0000"]]}, "limit": 100, "extend": ["visit", "order"]}'
Проверить, какие сделки Roistat видит оплаченными и откуда они пришли.
curl -X POST "https://cloud.roistat.com/api/v1/project/integration/order/list?project=12345" \
-H "Api-key: $ROISTAT_KEY" -H 'Content-Type: application/json' \
-d '{"filters": {"and": [["status", "=", "1"]]}, "limit": 100, "offset": 0}'
https://cloud.roistat.com/api/v1Тип: API-ключ
Ключ API (один на пользователя, действует для всех его проектов) берётся в профиле: https://cloud.roistat.com/user/profile/api. Передаётся в заголовке Api-key (рекомендуется; параметр key в URL небезопасен). Номер проекта — в параметре project строки запроса; без него работают только /user/projects и /account/project/create.
curl 'https://cloud.roistat.com/api/v1/project/proxy-leads?project=12345&period=2021-07-07-2021-09-24' \
--request GET \
--header 'Content-type: application/json' \
--header 'Api-key: {KEY}'
В ответе projects[]: id, name, profit, creation_date, currency, is_owner.
Excel-вариант — POST /project/analytics/data/export/excel (без interval и next_dimensions).
В ответе data[]: items (строки с metrics, dimensions), mean, dateFrom, dateTo.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
dimensions |
body | array | да | Группировки, например marker_level_1 |
metrics |
body | array | да | Метрики: имя или объект metric + attribution |
period.from |
body | string | да | Начало с часовым поясом, например 2016-07-01T00:00:00+0300 |
period.to |
body | string | да | Конец периода |
filters |
body | array | нет | Фильтры field, operation (>, <, =, <>, >=, <=, in), value |
interval |
body | string | нет | Разбивка периода XmYwZd |
В ответе data[] (id, source_type, creation_date, revenue, cost, visit_id, client_id, custom_fields, status), total.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
filters |
body | object | нет | Фильтры (and); статус: 0 в работе, 1 оплачен, 2 отменён |
extend |
body | array | нет | visit — вернуть полные данные визита |
limit |
body | integer | нет | Число сделок |
offset |
body | integer | нет | Смещение |
Тело — массив сделок.
В ответе: uploaded, processed, saved, счётчики пропущенных (skipped_by_status, skipped_because_not_changed и др.).
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
[].id |
body | string | нет | ID сделки в CRM |
[].name |
body | string | нет | Название сделки |
[].date_create |
body | string | нет | UNIX time или YYYY-MM-DD HH:MM |
[].status |
body | string | нет | ID статуса из set-statuses |
[].roistat |
body | string | нет | Номер визита Roistat |
[].price |
body | string | нет | Сумма (для выручки) |
[].cost |
body | string | нет | Себестоимость |
[].fields |
body | object | нет | Доп. поля, до 1000 символов каждое |
Передавайте все статусы (существующие и новые) одним массивом; существующий ID с новым именем переименовывает статус.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
[].id |
body | string | нет | ID статуса |
[].name |
body | string | нет | Название |
[].type |
body | string | нет | unused, in progress, paid, canceled |
Только для интеграции через цели или API.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
orderId |
path | string | да | ID сделки |
project |
query | string | да | Номер проекта |
status_id |
body | string | нет | ID статуса в Roistat |
Данные сделки, товары и полная цепочка визитов.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
orderId |
path | string | да | ID сделки |
project |
query | string | да | Номер проекта |
В ответе ProxyLeads[]: id, title, text, name, phone, email, roistat (визит), creation_date (UTC0), order_id.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
period |
query | string | да | Период YYYY-MM-DD-YYYY-MM-DD |
Чтобы получить визит и сделку для каждого звонка, добавьте visit и order в extend. В записи звонка: id, caller, callee, duration, status, date, link (запись), visit_id, order_id.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
filters |
body | object | нет | Фильтры (например, по диапазону дат в and) |
sort |
body | array | нет | Сортировка |
limit |
body | integer | нет | Число записей |
offset |
body | integer | нет | Смещение |
extend |
body | array | нет | visit, order |
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
project |
query | string | да | Номер проекта |
filters |
body | object | нет | Фильтры |
limit |
body | integer | нет | Число записей |
offset |
body | integer | нет | Смещение |
/list, и для отдельных ресурсов (проекты, прокси-лиды, детали сделки).Use-Http-Code: 1 включает реальные HTTP-коды.data, total, status.extend: visit: при limit больше 1000 — 1 запрос в минуту, больше 100 — 5, меньше 100 — 10; без extend — 20 в минуту.| Код | Описание |
|---|---|
incorrect_request |
400 — некорректный запрос |
authentication_failed |
401 — ошибка аутентификации |
authorization_failed |
401 — ошибка авторизации |
insufficient_funds |
402 — недостаточно средств |
option_not_available |
402 — опция недоступна |
project_frozen |
402 — проект заморожен |
access_denied |
403 — доступ запрещён |
resource_not_found |
404 — ресурс не найден |
resource_already_exists |
409 — ресурс уже существует |
request_data_validation_error |
422 — ошибка валидации данных |
request_limit_error |
429 — превышен лимит запросов |
internal_error |
500 — внутренняя ошибка |
Если этого недостаточно — официальная документация: https://help-en.roistat.com/API/methods/about/ JSON: https://mcp-everything.ru/api/integrations/roistat. MCP: https://mcp-everything.ru/mcp