Form A/B Setups

Intro

Endpoint: https://api.omnisend.com/api/form-ab-setups

An A/B setup links a main popup, flyout or fullscreen form to two competing variants so you can test which performs better. Variants start as identical copies of the main form at creation time and can be edited independently afterward.

EndpointDescription
POST /api/form-ab-setupsCreate a draft A/B setup from an existing popup, flyout or fullscreen form
GET /api/form-ab-setupsList A/B setups (filterable by status: draft or enabled)
GET /api/form-ab-setups/{abSetupID}Get a single A/B setup
POST /api/form-ab-setups/{abSetupID}/startLaunch the setup so its variants begin serving
POST /api/form-ab-setups/{abSetupID}/winnerSelect a winning variant
DELETE /api/form-ab-setups/{abSetupID}Delete a draft A/B setup

Variant weights and lifecycle

Each variant carries a traffic-distribution weight. When versions is omitted at creation, both variants receive a weight of 50. Weights must each be at least 1 and sum to 100. A/B test version forms cannot be enabled, disabled, or deleted directly — manage them through their A/B setup.

For A/B test performance reports, see the Reports API.

Constraints and pagination

ConstraintValue
IDs (path parameters)24-character hexadecimal
List page size (limit)1–250 (default 100)
A/B setups sort fieldscreatedAt (default), launchedAt, enabledAt, updatedAt
Sort directionasc, desc (default)

List endpoints use cursor-based pagination: pass the after cursor from a response to fetch the next page, or before for the previous page (after and before cannot be combined). See Pagination for details.

Scopes

ScopeGrants
forms.readList and get A/B setups
forms.writeCreate, delete, start, and select the winner of A/B setups