Загрузка файлов
POST /v1/upload — файл в multipart/form-data, поле file.
curl https://api.smartpdf.ru/v1/upload -H "X-API-Key: $SMARTPDF_API_KEY" -F "file=@document.pdf"Ответ 201:
{
"file_id": "6b0e3c4d9f2a4e1b8c7d5a3f2e1d0c9b",
"filename": "document.pdf",
"size": 48213,
"text_layer": true
}text_layer — только у PDF: есть ли текст на первых страницах. false — похоже на скан: для «PDF в Word» и «PDF в
Markdown» передайте ocr: true. У остальных форматов — null.
Форматы
PDF; Word — DOC и DOCX; Excel — XLS и XLSX; PowerPoint — PPT и PPTX; OpenDocument — ODT, ODS, ODP; RTF; изображения — JPG, PNG, WEBP, GIF, HEIC и HEIF (фото iPhone), TIFF, BMP; книги — DjVu, FB2, EPUB; HTML. Какой формат нужен операции — на её странице в разделе Операции.
Тип файла берётся из Content-Type части, а если клиент прислал общий тип вроде application/octet-stream или никакого — из расширения имени файла. Содержимое сверяется с типом по сигнатуре: переименованный или повреждённый файл получит 415.
Размер
Максимальный размер — по тарифу аккаунта: 50 МБ, на Про — 200 МБ, на Бизнесе — 500 МБ. Файл больше — 413.
Срок жизни
file_id действует час: потом файл удаляется, и операции с этим file_id получат 404. В течение часа один file_id можно использовать в нескольких операциях — например, сначала распознать текст, потом сжать.
Страницы
У PDF при загрузке считаются страницы — по ним считается цена тяжёлых операций (см. Оплата) и проверяется лимит распознавания текста.