Большие файлы
Как передавать большие документы без предварительной подписанной ссылки: через файл, file_id или url.
В Typizer нет предварительной подписанной ссылки на загрузку (presigned URL): файл всегда идёт через сам API — одним из трёх способов.
1. Загрузить файл и переиспользовать file_id
POST /v1/files — multipart/form-data с полем file — сохраняет документ и возвращает file_id.
Передавайте этот file_id вместо файла в последующие прогоны (POST /v1/extract,
POST /v1/typizers/{id}/runs) — удобно, если один и тот же документ нужно обработать несколькими
типизаторами или повторно после ошибки, не загружая его заново. Файл живёт не вечно: ответ несёт
поле expires_at — срок берётся из настройки хранения файлов организации (по умолчанию 24 часа
после загрузки; настраивается в диапазоне от немедленного удаления после прогона до 30 дней) — так
что для чего-то отложенного дольше этого срока загрузите файл заново:
curl https://api.typizer.ru/v1/files \
-H "Authorization: Bearer $TYPIZER_API_KEY" \
-F file=@invoice.pdf
# → { "object": "file", "id": "file_…", … }2. Файл напрямую в запрос
Для разового использования файл можно передать прямо в POST /v1/extract или в запуск типизатора
— тем же полем file, без промежуточного шага. Так делают сниппеты в «Первый вызов
API».
3. Публичная ссылка (url)
Если документ уже лежит в общедоступном месте, передайте url — публичную https:-ссылку — вместо
file/file_id. Typizer сам скачает файл; адрес проверяется на попытки обратиться к внутренним
сетям (SSRF), поэтому ссылка должна вести на публично резолвящийся адрес. В MCP этому соответствует
аргумент file_url.
Ограничения
- Размер файла — не больше 50 МБ (
MAX_FILE_BYTES), любым из трёх способов; - число страниц документа — не больше 200 (
MAX_PAGES) за один прогон; длинный документ разбейте на части или обработайте пакетом — см. «Пакетная обработка».
Оба предела подробнее — в «Лимиты».
MCP: без файла на диске у модели
ИИ-агент, вызывающий инструмент extract по MCP, обычно не может загрузить файл как
multipart/form-data напрямую — у него для этого два варианта аргументов:
file_url— та же публичная ссылка, что иurlв REST API;file_base64+filename— содержимое файла, закодированное в base64, и его имя. Тело запроса к MCP-серверу ограничено 70 МиБ (с учётом накладных расходов base64), что больше пределаMAX_FILE_BYTESна сам файл.
Указывается ровно один из file_url/file_base64 — не оба сразу и не ни одного. Подробнее —
справочник MCP.
Что дальше
- «Пакетная обработка» — много документов одним запросом вместо одного большого.
- «Лимиты» — все числовые ограничения в одном месте.