Конвертация файла
Работу выполняет один эндпоинт. Отправьте файл и целевой формат — получите задачу: завершённую, если это было быстро, или поставленную в очередь, если нет.
Аутентификация
Все эндпоинты, кроме каталога форматов, требуют ключ API, отправляемый как bearer-токен. Создайте его на странице «Автоматизация» в аккаунте; он показывается один раз и хранится только в виде хеша, поэтому потерянный ключ восстановить нельзя — выпустите новый.
Доступ к API входит в тариф Plus. Ключ аккаунта без него отклоняется с кодом NOT_ENTITLED.
Authorization: Bearer rlv_your_key_hereЗапрос
POST https://rework.live/api/v1/convert, в виде multipart/form-data, ровно с двумя полями: целевым форматом и самим файлом. Порядок полей значения не имеет.
curl -X POST https://rework.live/api/v1/convert \
-H "Authorization: Bearer rlv_your_key_here" \
-F "to=webp" \
-F "file=@photo.png"| Поле | Тип | Описание |
|---|---|---|
| to | string | Идентификатор целевого формата, например pdf, webp, mp4 |
| file | file | Файл для конвертации. Один на запрос. |
Ответ
Всегда JSON, никогда сырые байты, и всегда одной и той же формы — независимо от того, завершилась конвертация или попала в очередь. Клиент, которому пришлось бы смотреть на тип содержимого, чтобы понять, что он получил, — это клиент, который рано или поздно ошибётся.
200 означает, что задача готова и download доступен. 202 означает, что она поставлена в очередь: status_url — адрес для опроса, а download пуст до завершения.
{
"job": {
"id": "6a84860000000000000000ab",
"status": "done",
"from": "png",
"to": "webp",
"bytes": 48213,
"durationMs": 412,
"notes": [],
"expiresAt": "2026-09-03T10:22:31.000Z",
"download": "https://rework.live/api/v1/jobs/6a84860000000000000000ab/download",
"status_url": null,
"queuePosition": null,
"estimateMs": null
}
}Получить байты напрямую
Добавьте ?download=1, если вам нужен файл, а не ссылка. Конвертация, завершающаяся сразу, вернёт байты; поставленная в очередь по-прежнему вернёт 202 с JSON, потому что отправлять пока нечего.