---
title: "Get a form A/B setup"
method: GET
path: "/form-ab-setups/{abSetupID}"
tags: ["Form A/B Setups"]
---

# Get a form A/B setup

`GET /form-ab-setups/{abSetupID}`

## Request

- Base URL: `https://api.omnisend.com/api`
- URL: `https://api.omnisend.com/api/form-ab-setups/{abSetupID}`
- Auth: one of:
  - OAuth 2
    - Client credentials
    - Token URL: `https://app.omnisend.com/oauth2/token` scopes: `forms.read`
  - API key in header `Authorization`

Get a single form A/B setup by ID, including its main form, variant forms with their weights, status, lifecycle
timestamps, and the auto-close policy configured when the test was started (if any).

**Scopes:**
`forms.read`

**Rate Limiting:**
This endpoint is rate limited to 400 requests per minute.

## Path parameters

- `abSetupID` string, required

## Headers

- `Omnisend-Version` string, required

## Response `200`

Form A/B setup

- AbSetup: Form A/B setup resource.
  - `autoClose` AbSetupAutoClose: Auto-close policy for a form A/B setup.
    - `endsAt` string: Instant at which the test closes automatically. Must be in the future when the test is started.
    - `stopOnSignificance` boolean: Close the test as soon as one variant is a statistically significant winner.
  - `createdAt` string: A/B setup creation timestamp (read-only)
  - `enabledAt` string: A/B setup enable timestamp (read-only)
  - `id` string: A/B setup unique identifier (read-only)
  - `launchedAt` string: A/B setup launch timestamp (read-only)
  - `mainForm` AbSetupMainFormResponse: Main form of an A/B setup.
    - `formID` string: Form unique identifier (read-only)
    - `name` string: Form name
    - `status` 'enabled' | 'disabled' | 'draft': Form status.
  - `status` 'enabled' | 'draft' | 'disabled': A/B test status of a form. `disabled` is a launched A/B test that is currently paused.
  - `updatedAt` string: A/B setup last update timestamp (read-only)
  - `versions` AbSetupVersionResponse[]: Variant forms of the A/B setup
    - `formID` string: Form unique identifier (read-only)
    - `name` string: Form name
    - `weight` integer: Traffic distribution weight for the variant. Range: 0-100

## Other responses

- `400`: Request contains invalid or missing fields
- `401`: Authentication is missing or invalid
- `403`: Insufficient permissions for this operation
- `404`: Form A/B setup not found
- `410`: API version has been retired
- `429`: Rate limit exceeded
- `500`: Unexpected error occurred

---

[API](https://skmtc.dev/omnisend/apis/forms-api.md) - [All operations](https://skmtc.dev/omnisend/apis/forms-api/llms.txt) - [OpenAPI document](https://skmtc.dev/omnisend/apis/forms-api/revisions/9b53556b2e97?raw)
