Изображение в таблицу
Получайте структуру таблиц в JSON, CSV или Excel.
POST /api/v1/image-to-table
Отправьте одно изображение в multipart-поле image на POST /api/v1/image-to-table; допускаются только json (по умолчанию), csv или xlsx. Замените YOUR_API_KEY и table.png и выполните запрос с сервера, следуя Bearer-аутентификации.
curl --silent --show-error --include --max-time 150 \
'https://freeaiocr.com/api/v1/image-to-table?format=json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Idempotency-Key: example-table-request-0001' \
-F 'image=@table.png'JSON содержит request_id, usage, billing и массив tables с {title, html}. HTML очищен; Table N — запасное отображаемое имя, а не распознанный заголовок. Исходный текст модели наружу не передаётся.
{
"request_id": "b2c8ec98-2a36-4f87-99d2-3d7839b92518",
"usage": {
"input_tokens": 2000,
"output_tokens": 4000
},
"billing": {
"currency": "USD",
"price_version": "2026-10-26-v1",
"base_usd": "0.002000000",
"input_overage_usd": "0.000000000",
"output_overage_usd": "0.002400000",
"total_usd": "0.004400000"
},
"tables": [
{
"title": "Sales",
"html": "<table><tbody><tr><th>Item</th><th>Qty</th></tr><tr><td>Notebook</td><td>0012</td></tr></tbody></table>"
}
]
}С теми же изображением и Idempotency-Key можно запросить другой формат без новой генерации и списания:
curl --silent --show-error --fail --output tables.csv --max-time 150 \
'https://freeaiocr.com/api/v1/image-to-table?format=csv' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Idempotency-Key: example-table-request-0001' \
-F 'image=@table.png'curl --silent --show-error --fail --output tables.xlsx --max-time 150 \
'https://freeaiocr.com/api/v1/image-to-table?format=xlsx' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Idempotency-Key: example-table-request-0001' \
-F 'image=@table.png'- CSV: одна таблица — обычный UTF-8 CSV. Несколько таблиц разделены пустой строкой; каждый раздел начинается с
# Table N: Title. Это не единый стандартный CSV: перед импортом разделите его на отдельные файлы. Опасные формулоподобные значения нейтрализуются - XLSX: файл Excel с отдельным листом
Table Nдля каждой таблицы, объединённые ячейки сохраняются. Все числа, в том числе с ведущими нулями, хранятся как текст; проверьте их перед вычислениями - Входные данные: API принимает только одну PNG-, JPEG- или WebP-картинку до 10 МБ. Веб-инструмент также поддерживает HEIC, HEIF и BMP, API — нет. PDF, многостраничные документы и пакетная загрузка не поддерживаются; одно изображение может содержать несколько таблиц
Ошибки таблиц и общие правила
Если таблица не найдена, до расчёта возвращается 422 no_tables, резерв освобождается и плата не взимается. Если экспорт CSV/XLSX не удался после успешного распознавания и списания, ответ содержит 503 export_failed и recognition_succeeded: true. Пока действует окно повтора, запросите format=json с теми же изображением, аккаунтом и Idempotency-Key; при неопределённом списании не создавайте новую операцию. Ошибки возвращаются в JSON с request_id, error.code и Cache-Control: no-store; успешные загрузки содержат X-Request-Id, X-OCR-Charged-USD и X-OCR-Price-Version.
Изменение format не повторяет распознавание и оплату. Готовый результат доступен в течение 24 часов; повторные запросы учитываются в лимитах частоты. Один ключ для двух эндпоинтов вызывает 409 idempotency_conflict; баланс API отделён от веб-кредитов. Общие сведения: тарифы и резервирование, лимиты запросов, идемпотентность и повторы.