Операции · Изображения

Сжать фото

Сжимает фото: по уровню или до нужного размера в КБ. Одно фото — файл, несколько — ZIP-архив.

Запрос
POST /v1/pdf/compress-image
Инструмент MCP
compress_image
Вход
JPG, PNG, WEBP, HEIC — до 10 файлов на бесплатном тарифе, 20 на Про, 50 на Бизнесе
Результат
JPG (PNG с прозрачностью — PNG); несколько — ZIP
Единица цены
10 МБ суммы файлов — как считается

Параметры

Тело запроса — JSON. Лишние поля API игнорирует.

ПараметрТипОписание
file_idsобязательныйstring[]file_id загруженных файлов (POST /v1/upload) — в нужном порядке.
levelstringlight — высокое качество; medium — до 2560 пикселей по длинной стороне; strong — до 1600.Значения: "light", "medium", "strong"По умолчанию: "medium"
target_kbnumberСжать до размера, КБ (1 КБ = 1000 байт): от 10 до 50 000. Тогда level не используется; не получилось — наименьший вариант.
webhook_urlstringhttps-адрес: по завершении SmartPDF отправит на него POST с результатом и подписью — вместо опроса статуса (раздел «Вебхуки»).

Запрос

Это шаг 2 полного цикла: файл уже загружен, а статус и скачивание — как в быстром старте. Функция call и переменные — оттуда же.

POST /v1/pdf/compress-image
BODY=$(jq -n --arg file_id_1 "$FILE_ID_1" '{file_ids: [$file_id_1], level: "medium"}')
curl -sS --fail-with-body -H "X-API-Key: $SMARTPDF_API_KEY" -H "Content-Type: application/json" \
  -d "$BODY" https://api.smartpdf.ru/v1/pdf/compress-image

Ответ

202 Accepted — операция оплачена и поставлена в очередь. Дальше — опрос GET /v1/tasks/{task_id} или вебхук.

202 Accepted
{
  "task_id": "3f2c5b0e-8a41-4d7e-9c1f-5d0b8f2e7a64"
}

Эта страница для агентов: Markdown · llms.txt