Skip to content

Обзор API

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

Преимущества загрузки через API

1. Мониторинг экспериментов на дашборде

На дашборде можно следить за всеми экспериментами. Однако автоматический анализ после каждой отправки обновлённых данных доступен только для экспериментов, которые поставляются через API:

  • Корректность распределения (SRM) — проверка правильности сплита трафика между группами
  • Набранная выборка — текущий размер и процент достижения целевой выборки
  • Прогноз Win Probability — оценка вероятности победы по ключевой метрике

2. Автоматическая синхронизация

С настроенной синхронизацией не нужно вручную выгружать данные, каждый новый эксперимент становится сразу доступен в списке загрузки данных.

Как это работает

Загрузка датасета выполняется одним запросом:

POST /api/v1/datasets/upload/?experiment_id=<id>

Файл загружается напрямую на сервер с проверкой на лету:

  • Проверка размера (лимит 200 МБ)
  • Валидация CSV структуры и кодировки UTF-8

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

python
import requests

API_KEY = 'abn_xxxxxxxxxxxxx'
BASE_URL = 'https://workbench.ab-labz.com/api/v1'
FILE_PATH = 'dataset.csv'

# Одношаговая загрузка с валидацией
with open(FILE_PATH, 'rb') as f:
    response = requests.post(
        f'{BASE_URL}/datasets/upload/',
        params={'experiment_id': 'test_exp_001'},
        headers={
            'Authorization': f'Bearer {API_KEY}',
            'Content-Type': 'text/csv'
        },
        data=f
    )

if response.status_code == 201:
    print(f"Загружено: {response.json()['size_mb']} МБ")

Bash (cURL)

bash
curl -X POST "https://workbench.ab-labz.com/api/v1/datasets/upload/?experiment_id=test_exp" \
  -H "Authorization: Bearer abn_xxxxxxxxxxxxx" \
  -H "Content-Type: text/csv" \
  --data-binary @dataset.csv

После загрузки датасет сразу доступен для анализа в UI через Подготовка данных → Получить по API.

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