Дослов

Документация API

REST-интерфейс Дослов: отправьте аудио — получите текст, таймкоды и субтитры. Базовый адрес:

BASEhttps://rezzkost.neurixai.app/api/v1

Аутентификация

Все запросы идут по HTTPS с ключом в заголовке Authorization. Ключи — в кабинете: pk_live_… для продакшена и pk_test_… для песочницы.

HEADERAuthorization: Bearer pk_live_…

Без корректного ключа ответ — 401:

401
{ "detail": "Not authenticated" }

Создать задачу

POST/jobs

Передайте ссылку на файл в audio_url либо загрузите тело как multipart/form-data. Ответ приходит сразу со статусом queued.

ПолеТипОписание
audio_urlstringСсылка на запись. Либо файл в теле запроса.
languagestringКод языка (ru, en…) или auto.
diarizeboolРазделять по говорящим. По умолчанию true.
speakersintНеобязательно: точное число говорящих.
formatsarrayЛюбые из txt, srt, vtt, docx, json.
webhook_urlstringКуда прислать результат по готовности.

Статус задачи

GET/jobs/{id}

Поле status проходит стадии queued → processing → done (или failed). У готовой задачи в outputs — ссылки на запрошенные форматы, живут 24 часа.

200
{
  "id": "job_8a17f2c0",
  "status": "done",
  "duration_sec": 1340,
  "speakers": 2,
  "outputs": {
    "txt": "https://rezzkost.neurixai.app/f/…/text.txt",
    "srt": "https://rezzkost.neurixai.app/f/…/subs.srt"
  }
}

Форматы и языки

На выходе: txt (чистый текст), srt и vtt (субтитры), docx (для вычитки) и json с таймкодами каждого слова и меткой говорящего. Полный список языков — GET /formats.

Для субтитров задайте max_line_len (символов в строке) и max_lines — нарежем реплики под ваш плеер.

Вебхуки

Когда задача готова, мы шлём POST на ваш webhook_url с телом задачи. Заголовок X-Doslov-Signature — HMAC-SHA256 от тела на секрете вебхука. Сверьте его, прежде чем доверять данным.

POST{webhook_url}
ЗаголовокЗначение
X-Doslov-SignatureHMAC-SHA256 тела запроса
X-Doslov-Eventjob.done или job.failed

Ошибки

КодЗначение
400Некорректное тело или неподдерживаемый формат файла
401Нет или недействителен ключ
404Задача не найдена
413Файл превышает лимит длительности тарифа
429Слишком часто — см. заголовок Retry-After

Лимиты

ПараметрЗначение
Длительность одного файладо 4 часов
Размер загрузкидо 2 ГБ
Запросов в минуту120 (Поток — выше по договору)
Параллельных задач5 (Поток — выделенная очередь)
Хранение результатов24 часа на ссылки, текст — по сроку тарифа
Нужен пример под ваш стек? Напишите в поддержку из кабинета — пришлём фрагмент на Python, Node или Go.