Launch a test
Launches a test. Use the same call from draft or from preview.
Before launching, ABConvert checks the test against the rest of your
store. Any error finding returns 422 and the test stays where it
was. These checks include cross-test rules:
- A running theme test blocks shipping, template, and URL redirect
tests, plus any combined test that carries one of those changes,
and a second theme test. Each returns the finding
theme_test_running. A visual editor test returnsvisual_editor_conflict. Price, offer, and checkout tests can launch while a theme test runs. - Two price tests cannot share a product, and two shipping tests
cannot share a delivery zone. Either case returns the finding
resource_claimed, naming the test that already has it. - A theme test in
previewoccupies the store just as a running one does, so previewing a theme test blocks the same launches. Products and delivery zones are claimed only while a test isactive.
Two other outcomes:
- While platform checks are still running on the test,
startreturns 409checks_pending. Retry once they finish; the response lists what you can do meanwhile indetails.allowed_actions. - On a test that is already
active,startreturns 200 and the unchanged test.
Authorizations
Bearer tokens created in the ABConvert admin under
Settings → MCP & API Access. Scopes:
read_experiments and write_experiments (write implies read; the
default is read). See
Authentication for which scope each
request needs.
Path Parameters
The test's numeric ID as a string, for example "3021".
^[0-9]+$"3021"
Response
The updated test. A test that already had the target status also returns 200, unchanged.
"experiment"The test's numeric ID as a string.
"3021"
What the test changes: product prices, shipping rates, the theme a
visitor sees, a page template, the URL a visitor lands on, checkout
delivery and payment methods, or a cart offer. visual_editor is a
storefront edit: custom CSS and JavaScript, which you can write here,
alongside DOM changes authored in the ABConvert visual editor.
combined bundles more than one change type in one test. See
CreatableExperimentType for the ones you can create here.
price, shipping, theme, template, url_redirect, checkout, offer, visual_editor, combined The test's current status. The ABConvert admin labels ended as
Closed; the wire value stays ended. Scheduling isn't a status: a
scheduled test is a draft or preview with a schedule.
draft, preview, active, paused, ended, failed, archived The metric the test is judged on.
revenue_per_visitor, average_order_value, conversion_rate, profit_per_visitor, add_to_cart_rate, reached_checkout_rate "revenue_per_visitor"
Configuration shared by every test group in the test, keyed by
change type. Send exactly the key that matches the test's type. A
combined test carries one key per change type it bundles.
The window the scheduler runs the test in. Send at least one bound.
After launch, only end_at is editable.
Limits the test to visitors who match your filters. Without an
audience, every visitor is eligible. In PATCH, audience: null
turns targeting off.
Filter groups combine with AND: a visitor must match every filter group to enter the test. Filters inside one filter group combine with OR: one match is enough.
To require two filters at once, put each one in its own filter group. The example below enters visitors who are on mobile and new. Putting the same two filters in one filter group would enter visitors who are on mobile or new instead.
A test whose targeting you turn off in the ABConvert admin reads
back with no audience.
True when the test has force-assign rules, which you author in
the ABConvert admin. ABConvert evaluates them only for visitors
who already match audience, and applies the first rule whose
filters all match: that rule either puts the visitor in the test
group it names or keeps them out of the test, in place of the
random split.
Increments whenever visitors are reassigned to test groups, for example after a split change.
The product group attached to this test, or null. Its id is what
product_group_id takes on a custom result query. No
product-group endpoint exists, so read it here.
Present only with ?include=results_summary. Null when no
snapshot has been computed for the test yet.