Update an existing experience

Modifies the configuration of an existing experience. This can include changing its name, description, status (e.g., from 'draft' to 'active', or 'active' to 'paused'), URL, traffic distribution, audiences, locations, goals, variations, and integration settings. The Knowledge Base article "How Can I Change Variations After Experiment Started?" notes that variations cannot be added/removed after start, but other settings can be updated.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
integer
required

ID of the account that owns the retrieved/saved data

integer
required

ID of the project to which save/retrieved data is connected

integer
required

The ID of the updated experience

Query Params
include
array of objects

Specifies the list of optional objects which would be included in the response.

Read more in the section related to Expanding Fields

include
expand
array of objects

Specifies the list of objects which would be expanded in the response. Otherwise, only their id would be returned.

Read more in the section related to Expanding Fields

expand
Body Params

Request body for updating an existing experience. Provide only the fields that need to be changed. The variations, audiences, locations, goals, tags, and multipage_pages arrays, if provided, will replace the existing corresponding lists for the experience.

string
length ≤ 500

An optional, detailed explanation of the experience's purpose, hypothesis, or specific changes being tested.

integer | null

Unix timestamp (UTC) indicating when the experience was first activated (status changed to 'active'). Null or 0 if the experience has never been started.

integer | null

Unix timestamp (UTC) indicating when the experience was last stopped (e.g., paused or completed). Null or 0 if the experience is currently active or has never been stopped.

string

Custom JavaScript code that will be executed for all visitors bucketed into this experience, before any variation-specific code is applied. Useful for setting up common functionalities or variables needed by multiple variations. KB: "Project, Experience, Variation Javascript" - "Global Experience JavaScript".

string

Custom CSS rules that will be applied for all visitors bucketed into this experience, before any variation-specific CSS. Useful for common styling adjustments needed across all variations.

string
length ≤ 100

A user-defined, friendly name for the experience (e.g., "Homepage Headline Test", "Checkout Funnel Optimization Q3"). This name is prominent in the Convert UI and reports.

string
length ≤ 32

A unique, machine-readable key or identifier for this experience within the project. Often auto-generated from the name if not specified, but can be user-defined for easier programmatic reference (e.g., in Full Stack SDKs or API calls). Example: "homepage_headline_test_q3".

integer

The ID of the main conversion goal this experience is intended to optimize. Performance against this primary goal often determines the "winner" of an A/B test and is highlighted in reports. KB: "Experiment Report" - "Primary Goal".

string | null

A detailed statement outlining the objective of this experience. This often includes the hypothesis being tested, the problem it aims to solve, the proposed solution (the variations), and the expected impact on key metrics. Connects to the "Hypotheses (Compass)" feature.

settings
object

Comprehensive settings governing how an experience's results are reported and analyzed.

site_area
object | null

(Deprecated) The legacy way to define on which pages the experience should run, using a set of include/exclude rules based on URL components or page tags. Modern experiences should use the locations array instead for more flexible targeting.

number
0 to 100

The percentage of total eligible website traffic (matching audience and location criteria) that will be directed into this entire experience. For example, a value of 50 means 50% of eligible visitors will participate, while the other 50% will see the default website content and not be tracked for this experience. The traffic within the experience is then further split among its variations based on variations[].traffic_distribution. KB: "What is an Traffic Distribution?".

string
enum

The type of optimization activity:

  • a/b: Standard A/B test comparing an original page/element against one or more variations. Changes made via Visual Editor or code. KB: "What is an Experiment?".
  • a/a: Tests the original page against an identical copy of itself to validate tracking setup and ensure no inherent bias. KB: "A/A Experiments".
  • mvt: Multivariate test, testing combinations of changes across multiple sections of a page. KB: "Creating a Multivariate Experiment".
  • split_url: Redirects traffic between different URLs to test entirely different page versions. KB: "How do Split URL Experiments work?".
  • multipage: Tests a consistent set of changes across a sequence of pages (funnel). KB: "Create Multipage Experiences".
  • deploy: Rolls out a specific set of changes to a targeted audience without A/B comparison reporting. KB: "What about Deployments?".
  • a/b_fullstack: An A/B test conducted using a Full Stack SDK, potentially involving server-side changes. KB: "Full Stack Experiments on Convert".
  • feature_rollout: A Full Stack experience for gradually rolling out a new feature, often using feature flags.
uri
length ≤ 2048

The primary URL used to load the page in Convert's Visual Editor when creating or editing this experience's variations. For Split URL tests, this is typically the URL of the original (control) page.

number

An internal version number for the experience, incremented upon certain modifications.

integrations
array

A list of configurations for third-party integrations enabled for this experience (e.g., Google Analytics, Hotjar, Mixpanel). Each object specifies the provider and any provider-specific settings (like a GA Custom Dimension index).

integrations
environments
array of strings
deprecated

(Deprecated) List of environment names where this experience will run. Use the singular environment field instead.

environments
string

The specific environment (e.g., "production", "staging", "development") within the project where this experience is intended to run. This must match one of the environments defined at the project level. If not set, it typically defaults to the project's default environment (often "production"). KB: "The Environments Feature".

string | null

A server-generated hash that represents the object's state at the time of retrieval. When included in an update request, the operation will only succeed if the object hasn't been modified since this key was obtained. If another update has occurred in the meantime, the request will fail with a conflict error, requiring you to fetch the latest version and retry your update with the new concurrency_key. This implements optimistic concurrency control to prevent lost updates in concurrent scenarios.

multipage_pages
array of objects

An array of page objects, each with an id (unique within this experience, e.g., 'p1'), name, and url. Changes for each of these pages are then defined within the changes array of each variation, referencing the page_id. When updating, this list replaces all existing pages; pages not in the list will be removed.

multipage_pages
string
enum

The set of statuses a caller may set when creating or updating an experience.

Allowed:
audiences
array of integers

A list of Audience IDs to associate with the experience. Visitors must match criteria from these audiences (according to settings.matching_options.audiences) to be eligible.

audiences
locations
array of integers

A list of Location IDs to associate with the experience. The experience will run on pages/conditions defined by these locations (according to settings.matching_options.locations).

locations
goals
array of integers

A list of Goal IDs to attach to the experience for conversion tracking. The first goal in this list is often implicitly considered the primary_goal unless explicitly set otherwise. Not applicable for 'deploy' type experiences.

goals
tags
array of objects

The list of tags connected to this experience

tags
customizations
array of objects
length ≤ 100

A list of user-defined key-value pairs for customizing UI elements or behavior related to this experience within the Convert application itself. These do not affect the live experiment seen by visitors.

customizations
variations
array of objects

The list of variations of this experience

variations
Responses

Language
Credentials
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json