← К документации

REST API

Все возможности DataScoop доступны через REST API

Аутентификация

Передайте API-ключ в заголовке Authorization:

curl -H "Authorization: Bearer ds_your_api_key_here" \
     https://api.datascoop.ru/api/v1/parsers

API-ключ создаётся в личном кабинете. Ключ показывается только один раз при создании.

Rate Limiting

Запросы по API-ключу ограничены до 1 запроса в минуту.

Заголовки ответа содержат информацию о лимитах:

X-RateLimit-Limit: 1
X-RateLimit-Remaining: 0
Retry-After: 45

При превышении лимита возвращается код 429.

Эндпоинты

Задачи
POST/api/v1/tasksСоздать задачу
GET/api/v1/tasksСписок задач (с пагинацией и фильтрацией по статусу)
GET/api/v1/tasks/{id}Статус задачи (прогресс, ETA)
GET/api/v1/tasks/{id}/result?format=xlsx|csv|jsonСкачать результат
DELETE/api/v1/tasks/{id}Отменить задачу
Парсеры
GET/api/v1/parsersСписок доступных парсеров
GET/api/v1/parsers/{id}Информация о парсере (поля, локации)
Баланс
GET/api/v1/balanceТекущий баланс (доступно, заблокировано)
GET/api/v1/transactionsИстория транзакций
Периодические задачи
POST/api/v1/schedulesСоздать периодическую задачу
GET/api/v1/schedulesСписок периодических задач
PATCH/api/v1/schedules/{id}Обновить (пауза/возобновление)
DELETE/api/v1/schedules/{id}Удалить периодическую задачу
GET/api/v1/results/{static_token}Статическая ссылка на последний результат (без авторизации)
API-ключи
POST/api/v1/api-keysСоздать API-ключ
GET/api/v1/api-keysСписок API-ключей
DELETE/api/v1/api-keys/{id}Отозвать API-ключ
Пример: создание задачи

Запрос:

curl -X POST https://api.datascoop.ru/api/v1/tasks \
  -H "Authorization: Bearer ds_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parser_id": "uuid-парсера",
    "urls": [
      "https://example.com/product/1",
      "https://example.com/product/2"
    ],
    "priority": "normal"
  }'

Ответ (201 Created):

{
  "id": "task-uuid",
  "status": "pending",
  "total_pages": 2,
  "loaded_pages": 0,
  "failed_pages": 0,
  "cost": "10.00",
  ...
}
Пример: скачивание результатов
# Проверить статус задачи
curl -H "Authorization: Bearer ds_..." \
  https://api.datascoop.ru/api/v1/tasks/{task_id}

# Скачать результат в формате XLSX
curl -H "Authorization: Bearer ds_..." \
  -o result.xlsx \
  "https://api.datascoop.ru/api/v1/tasks/{task_id}/result?format=xlsx"

# Или в JSON
curl -H "Authorization: Bearer ds_..." \
  "https://api.datascoop.ru/api/v1/tasks/{task_id}/result?format=json"