Публичный API
API минималистичный и только по HTTPS. Формат ответов — JSON, кодировка UTF-8. Изменения публикуем в блоге.
GET /api/stats
Счётчики сервиса. Кэшируется на 10 секунд, подходит для виджетов «онлайн».
{
"online": 1234,
"queue_avg_sec": 9.8,
"sessions_today": 52341,
"turn_load": 0.42
}
GET /api/pixel?id=…
Пиксель аналитики для партнёрских площадок. Всегда 204 No Content.
GET /content/sec.mp4/<session-id>
Потоковая отдача записи сессии. Доступна участникам сессии 7 дней, ссылки одноразовые и подписаны. Особенности:
- Сегменты отдаются потоком, без Content-Length — запись финализируется на лету, поэтому клиенту доступны все возможности chunked-чтения.
- Для возобновления прерванной передачи клиент передаёт токен позиции в заголовке
X-Session-Resume; сервер продолжает сегмент с сохранённой позиции. Значение — opaque-строка до ~1 КБ, обновляется с каждым сегментом. - Служебные параметры (номер сегмента, идентификатор очереди) передаются в query-string:
?seq=…&session=…. - Скорость отдачи ограничена 2 Мбит/с на сессию, чтобы не мешать live-очереди.
Пример:
GET /content/sec.mp4/8f14e45f-ea9b-4c3a-9d2b-1c6f39a2b7c1?seq=17&session=qw3rty HTTP/2 Host: lovechat.yakvndzen.com X-Session-Resume: eyJvIjozNDUyMX0… Accept: video/mp4
Лимиты
3000 запросов в минуту на IP, 422-ошибки не тарифицируются. Abuse — support@lovechat.example.