v1

latestOpenAPI 3.0.32026-07-248519153.1 KB

List experiments

Retrieve a paginated list of experiments with optional filters by status, type, and slug.

get/experiments

Query parameters

per_pageinteger

Number of experiments per page

status1 | 2 | 3 | 4 | 5 | 6 | 7

Lifecycle status of an A/B experiment:

  • 1 — Draft — Created but not serving traffic. No new users enrolled.
  • 2 — Active — Running. New users are enrolled and variants are served. Sets start_at on first activation; clears a stale past end_at on reactivation.
  • 3 — Pause — Temporarily halted. No new users enrolled; existing assignments are kept.
  • 4 — Success — Marked as a winning test. Sets end_at when missing. No new users enrolled.
  • 5 — Fail — Marked as a losing test. Sets end_at when missing. No new users enrolled.
  • 6 — Stop — Stopped (no new users). Sets end_at when missing. Differs from Archive — experiment stays in the main list.
  • 7 — Archive — Stopped and archived (cabinet "Stop and move to archive"). Sets end_at when missing.
Example:2

Filter by experiment status

type1 | 2

Filter by experiment type (1 = Quiz, 2 = Paywall)

slugstring

Filter by experiment slug

Headers

api_keystring required

API key for authentication

Response

List of experiments retrieved successfully

current_pageinteger
frominteger
last_pageinteger
per_pageinteger
tointeger
totalinteger

Example response

{
  "current_page": 1,
  "data": [
    {
      "id": 1,
      "project_id": 78,
      "name": "Quiz A/B Test",
      "slug": "quiz-ab-test",
      "type": 1,
      "start_at": "2024-01-15T10:00:00Z",
      "end_at": "2024-02-15T10:00:00Z",
      "status": 2,
      "variants": [
        {
          "model_id": 123,
          "name": "Variant A",
          "percent": 50
        }
      ],
      "experiment_users_count": 150,
      "created_at": "2024-01-15T10:00:00Z",
      "updated_at": "2024-01-15T10:00:00Z"
    }
  ],
  "from": 1,
  "last_page": 1,
  "per_page": 20,
  "to": 5,
  "total": 5
}