API Replay AI
Цифры, находки и потерянные заявки ваших сайтов для своей системы отчётов или ReportKey. Только чтение: через API ничего нельзя изменить, записей визитов и данных посетителей в нём нет.
Как подключиться
- В кабинете откройте раздел «Аккаунт», блок «API и ReportKey», и создайте токен.
- Скопируйте его сразу: токен показывается один раз. Отозвать его можно там же.
- Передавайте токен в заголовке каждого запроса.
ReportKey. Вставьте токен при подключении источника Replay AI в ReportKey. Потерянные заявки и находки попадут в отчёты для клиентов на любом тарифе, и на бесплатном тоже.
Своя система отчётов. Отчёт сайта по API доступен на платных тарифах: Старт, Бизнес и Агентство. Список сайтов отдаётся на любом тарифе.
Запросы
Адрес https://replayai.ru/api/v1, ответы в JSON. Токен в заголовке:
Authorization: Bearer rai_…
GET /me- Аккаунт токена. Удобно, чтобы проверить подключение.
GET /sites- Все сайты аккаунта, свои и переданные ему: id, домен, тариф, роль, часовой пояс, состояние счётчика. Поле report_available говорит, отдаст ли API отчёт по сайту.
GET /sites/{id}/report?date_from=2026-10-01&date_to=2026-10-31- Отчёт за период, даты по часовому поясу сайта включительно. Без дат 30 дней по вчера. Период до 366 дней, цифры хранятся 13 месяцев. Сравнение с таким же числом дней перед периодом.
curl -H "Authorization: Bearer rai_…" \
"https://replayai.ru/api/v1/sites/{id}/report?date_from=2026-10-01&date_to=2026-10-31"Что в отчёте
{
"ok": true,
"data": {
"site": { "id": "…", "domain": "remont-primer.ru", "plan": "start", "timezone": "Europe/Moscow", "cabinet_url": "…" },
"period": { "date_from": "2026-10-01", "date_to": "2026-10-31", "days": 31 },
"compare_period": { "date_from": "2026-08-31", "date_to": "2026-09-30" },
"data_through": "2026-10-31",
"totals": { "visits": 1840, "leads": 52, "lost_leads": 17, "form_starts": 140, "form_submits": 48 },
"totals_compare": { "visits": 1710, "leads": 41, "lost_leads": 25, "form_starts": 131, "form_submits": 37 },
"by_day": [{ "date": "2026-10-01", "visits": 61, "leads": 2, "lost_leads": 1, "form_starts": 5, "form_submits": 2 }],
"by_source": [{ "source": "yandex_direct", "visits": 920, "leads": 30 }],
"findings": [{ "id": "…", "date": "2026-10-28", "title": "…", "figure": "…", "cause": "…", "action": "…",
"element": "…", "status": "new", "recurring": false, "url": "…" }],
"lost_leads": {
"total": 17,
"by_type": { "form": 9, "phone": 5, "button": 3 },
"items": [{ "id": "…", "date": "2026-10-30", "occurred_at": "2026-10-30T11:42:05.000Z", "type": "phone",
"reason": "phone_click_failed", "intent": "…", "cause": "…", "source": "yandex_direct",
"device": "mobile", "entry_path": "/", "status": "open", "locked": false, "url": "…" }]
},
"fixes": [{ "id": "…", "what": "…", "metric": "…", "per_day": true, "before": 3, "after": 7,
"marked_at": "…", "measured_at": "…" }]
},
"meta": {}
}totals, totals_compare- Визиты людей, заявки, потерянные заявки, начатые и отправленные формы за период и за такой же период перед ним.
by_day, by_source- Те же цифры по дням и визиты с заявками по источникам.
data_through- Последний посчитанный день. Цифры за день появляются следующим утром, поэтому сегодняшнего дня в отчёте нет.
findings- Находки разбора: что мешает заявкам, цифра, причина и что исправить. status: new, useful или fixed; recurring: проблема была и до периода.
lost_leads- Люди, которые хотели оставить заявку и не смогли: бросили форму (form), не дозвонились (phone), нажимали кнопку впустую (button). В items до 100 самых явных случаев. На бесплатном тарифе открыты 3 карточки в неделю, у остальных locked: true и без причины.
fixes- Правки, отмеченные «Исправил»: цифра до и через 7 дней после.
url, cabinet_url- Ссылки в кабинет Replay AI, открываются после входа.
Ошибки
Ответ с ошибкой: { "ok": false, "error": { "code", "message" } }, текст ошибки на русском.
401 unauthorized- Нет токена, токен с ошибкой или отозван.
403 plan_required- У сайта бесплатный тариф: отчёт по API доступен на платных тарифах и в ReportKey.
404 not_found- Сайта нет или у аккаунта токена нет к нему доступа.
400 bad_request- Даты не в формате ГГГГ-ММ-ДД, начало позже конца или период длиннее года.
429 rate_limited- Больше 1000 запросов за 15 минут с одного аккаунта. Через сколько секунд повторить, в заголовке Retry-After.
Данные
Данные хранятся в России. Работаем по российскому закону о персональных данных. Поля форм не записываем. Храните токен как пароль: с ним можно читать отчёты всех сайтов аккаунта.