DocuFlow
Для разработчиков

Документация API DocuFlow

Интегрируйте мощь компьютерного зрения и NLP в свои приложения за минуты. Полный RESTful доступ к нашим моделям анализа документов.

Аутентификация и безопасность

Все запросы к API DocuFlow должны быть авторизованы с использованием Bearer-токенов. Мы поддерживаем два типа ключей: API Key (для серверных запросов) и JWT (для пользовательских сессий).

POST /v1/auth/login JSON
Authorization: Bearer df_live_sk_8492...
Content-Type: application/json

{
  "api_key": "your_private_key",
  "workspace_id": "ws_12345"
}

По умолчанию токены имеют время жизни 24 часа. Используйте endpoint /refresh для продления сессии без повторного ввода учетных данных.

Схема аутентификации API DocuFlow

Справочник по эндпоинтам

Основные методы для загрузки, обработки и извлечения данных из документов.

POST /v1/documents/parse

Основной метод для отправки файлов (PDF, TIFF, PNG). Сервер возвращает ID задачи для асинхронной обработки.

Параметры тела запроса:
  • file (multipart/form-data) — исходный файл
  • model (string) — версия модели (например, doc-intelligence-v4)
  • language (string) — предполагаемый язык (по умолчанию auto)
GET /v1/tasks/{task_id}

Проверка статуса обработки документа. Используйте этот метод в цикле (polling) или подключитесь через Webhook.

Возможные статусы:
processing completed failed
GET /v1/documents/{doc_id}/entities

Получение структурированных данных: извлеченные сущности (даты, суммы, ИНН), таблицы и ключевые фразы.

{
  "entities": [
    { "type": "amount", "value": "150000 RUB", "confidence": 0.98 },
    { "type": "date", "value": "2023-10-15", "confidence": 0.99 }
  ]
}
POST /v1/models/custom

Обучение кастомной модели на вашем наборе данных (Fine-tuning). Отправьте датасет в формате JSONL.

Требуется минимум 50 размеченных документов для стабильного результата.

Лимиты запросов (Rate Limits)

Мы используем стратегию "Sliding Window" для контроля нагрузки. Превышение лимита вернет статус 429 Too Many Requests.

План Запросов/мин Параллельно
Developer 60 2
Business 600 10
Enterprise Безлимит 50+

Заголовки ответа X-RateLimit-Remaining и X-RateLimit-Reset помогают отслеживать текущее состояние лимитов в реальном времени.

Коды ошибок

API DocuFlow использует стандартные HTTP коды. Детализация доступна в теле ответа JSON.

400

Bad Request

Неверный формат JSON или отсутствующие обязательные поля.

401

Unauthorized

Недействительный или истекший API ключ. Проверьте настройки в Dashboard.

403

Forbidden

Доступ запрещен. Возможно, у вашего ключа нет прав на запись (Write Access).

429

Too Many Requests

Превышен лимит частоты запросов. Повторите попытку через указанный интервал.

Примеры кода (SDK)

Начните работу с помощью наших официальных библиотек для Python и Node.js. Интеграция занимает всего 5 строк кода.

Python

pip install docuflow
import docuflow

client = docuflow.Client(api_key="df_live_...")

# Загрузка и анализ
result = client.documents.parse(
    file_path="./contract.pdf",
    model="v4-legal"
)

print(result.entities)
        

Node.js

npm i @docuflow/js
const { DocuFlow } = require('@docuflow/js');

const client = new DocuFlow({
  apiKey: 'df_live_...'
});

// Асинхронный парсинг
const result = await client.documents.parse({
  file: fs.createReadStream('invoice.tiff'),
  language: 'ru'
});

console.log(result.tables);
        

Попробуйте прямо сейчас

Используйте встроенную консоль для отправки тестовых запросов без написания кода. Мы предоставим вам временный Sandbox-ключ.

Нужна помощь с интеграцией? Свяжитесь с техподдержкой