Skip to content
On this page

Обзор API

API позволяет программно загружать датасеты экспериментов в AB-Labz без ручной загрузки через UI.

Преимущества

  • Автоматизация - интеграция через CI/CD или cron jobs
  • Единый endpoint - один интерфейс для всех экспериментов
  • Прямая загрузка - данные загружаются напрямую в Object Storage без нагрузки на сервер
  • Актуальность - всегда свежие данные для анализа

Базовый процесс

Загрузка датасета состоит из трёх шагов:

  1. Инициация - получение presigned URL для загрузки
  2. Загрузка - отправка CSV файла по полученному URL
  3. Подтверждение - проверка успешной загрузки (опционально, но рекомендуется)

Быстрый старт

python
import requests
import os

API_KEY = 'abn_xxxxxxxxxxxxx'
BASE_URL = 'https://your-domain.com/api/v1'
FILE_PATH = 'dataset.csv'

# 1. Инициация
file_size = os.path.getsize(FILE_PATH)
response = requests.post(
    f'{BASE_URL}/datasets/initiate/',
    headers={'Authorization': f'Bearer {API_KEY}'},
    json={
        'experiment_id': 'test_exp_001',
        'content_length': file_size
    }
)
data = response.json()

# 2. Загрузка файла
with open(FILE_PATH, 'rb') as f:
    requests.put(data['upload_url'], data=f)

# 3. Подтверждение
requests.post(
    f'{BASE_URL}/datasets/complete/',
    headers={'Authorization': f'Bearer {API_KEY}'},
    json={'upload_id': data['upload_id']}
)

AB-Labz - Лаборатория продуктовых экспериментов