# Загрузка файлов

Источник: https://smartpdf.ru/developers/docs/upload

`POST /v1/upload` — файл в `multipart/form-data`, поле `file`.

```bash
curl https://api.smartpdf.ru/v1/upload -H "X-API-Key: $SMARTPDF_API_KEY" -F "file=@document.pdf"
```

Ответ `201`:

```json
{
  "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. Какой формат нужен операции — на её странице в разделе [Операции](https://smartpdf.ru/developers/docs/operations).

Тип файла берётся из `Content-Type` части, а если клиент прислал общий тип вроде `application/octet-stream` или никакого — из расширения имени файла. Содержимое сверяется с типом по сигнатуре: переименованный или повреждённый файл получит `415`.

## Размер

Максимальный размер — по тарифу аккаунта: 50 МБ, на Про — 200 МБ, на Бизнесе — 500 МБ. Файл больше — `413`.

## Срок жизни

`file_id` действует час: потом файл удаляется, и операции с этим `file_id` получат `404`. В течение часа один `file_id` можно использовать в нескольких операциях — например, сначала распознать текст, потом сжать.

## Страницы

У PDF при загрузке считаются страницы — по ним считается цена тяжёлых операций (см. [Оплата](https://smartpdf.ru/developers/docs/billing)) и проверяется лимит распознавания текста.
