Convert API (1.0.0 - Deprecated)

Download OpenAPI specification:Download

Move your app forward with the Convert API. The Convert API allows you to manage your Convert Experiences projects using code. The REST API is an interface for managing and extending functionality of Convert. For example, instead of creating and maintaining projects using the Convert Experiences web dashboard you can create an experiment programmatically. Additionally, if you prefer to run custom analysis on experiment results you can leverage the API to pull data from Convert Experiences into your own workflow. If you do not have a Convert account already, sign up for a free developer account at https://www.convert.com/api/.

Note: This API version is deprecated and will be discontinued in the future. Please migrate your clients to Convert API V2

Projects

Once you start using Convert Experiences, you will have a growing number of experiments to manage. Projects help you keep everything organized across multiple sites. Each project has its own tracking code, set of experiments, and set of collaborators. For example, if you run experiments on multiple domains, you can assign a unique project for each domain. Read here some things you need to know about how a project behaves.

List of projects inside the account (own or shared with)

The Projects endpoint returns the list of all projects the authenticated user has access to;

Authorizations:
requestSigning
Request Body schema: application/json
page
integer
Default: 1

Describes the page number of the fetched results. "results_per_page" results are gonna be returned for each page

results_per_page
integer
Default: 50

A value that would be used for setting the number of records that would be returned per page

Responses

Request samples

Content type
application/json
{
  • "page": 1,
  • "results_per_page": 50
}

Response samples

Content type
application/json
[
  • {
    }
]

Returns project by ID

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project to be retrived

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "account_id": "string",
  • "tracking_snippet": "string",
  • "name": "string",
  • "status": "string",
  • "created_at": "string",
  • "reporting_settings": {
    },
  • "include_jquery": 1,
  • "allow_crossdomain_tracking": 1,
  • "data_anonymization": 1,
  • "websites": [
    ],
  • "global_javascript": "string"
}

Creates a new project into the account user is logged in.

Authorizations:
requestSigning
Request Body schema: application/json
id
string

Unique identifier representing a specific project in an user account. The project Id is part of the tracking snippet

account_id
string

The unique ID of the account under which this project is created. Account ID is also part of the tracking snippet

tracking_snippet
string

The tracking code that needs to be placed on site in order to serve experiences from this project.

name
string

Name of the project.

status
string

The project's status, one of active, inactive, suspended.

created_at
string

Date in Y-m-d format of project creation.

object
include_jquery
integer [ 0 .. 1 ]

Wether to include jQuery library or not into the javascript tracking file served by Convert and loaded via the tracking snippet.

allow_crossdomain_tracking
integer [ 0 .. 1 ]

Allow cross domain tracking or not. Cross domain tracking can only happen between domains inside the same project.

data_anonymization
websites
Array of strings

The list of websites included in this project.

global_javascript
string

The global javascript code that will load on all pages where the tracking script is included, prior do processing any of experiences, goals, audiences etc.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "account_id": "string",
  • "tracking_snippet": "string",
  • "name": "string",
  • "status": "string",
  • "created_at": "string",
  • "reporting_settings": {
    },
  • "include_jquery": 1,
  • "allow_crossdomain_tracking": 1,
  • "data_anonymization": 1,
  • "websites": [
    ],
  • "global_javascript": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "account_id": "string",
  • "tracking_snippet": "string",
  • "name": "string",
  • "status": "string",
  • "created_at": "string",
  • "reporting_settings": {
    },
  • "include_jquery": 1,
  • "allow_crossdomain_tracking": 1,
  • "data_anonymization": 1,
  • "websites": [
    ],
  • "global_javascript": "string"
}

Updates an existing project into the account user is logged in.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project to be updated

Request Body schema: application/json

Project object

id
string

Unique identifier representing a specific project in an user account. The project Id is part of the tracking snippet

account_id
string

The unique ID of the account under which this project is created. Account ID is also part of the tracking snippet

tracking_snippet
string

The tracking code that needs to be placed on site in order to serve experiences from this project.

name
string

Name of the project.

status
string

The project's status, one of active, inactive, suspended.

created_at
string

Date in Y-m-d format of project creation.

object
include_jquery
integer [ 0 .. 1 ]

Wether to include jQuery library or not into the javascript tracking file served by Convert and loaded via the tracking snippet.

allow_crossdomain_tracking
integer [ 0 .. 1 ]

Allow cross domain tracking or not. Cross domain tracking can only happen between domains inside the same project.

data_anonymization
websites
Array of strings

The list of websites included in this project.

global_javascript
string

The global javascript code that will load on all pages where the tracking script is included, prior do processing any of experiences, goals, audiences etc.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "account_id": "string",
  • "tracking_snippet": "string",
  • "name": "string",
  • "status": "string",
  • "created_at": "string",
  • "reporting_settings": {
    },
  • "include_jquery": 1,
  • "allow_crossdomain_tracking": 1,
  • "data_anonymization": 1,
  • "websites": [
    ],
  • "global_javascript": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "account_id": "string",
  • "tracking_snippet": "string",
  • "name": "string",
  • "status": "string",
  • "created_at": "string",
  • "reporting_settings": {
    },
  • "include_jquery": 1,
  • "allow_crossdomain_tracking": 1,
  • "data_anonymization": 1,
  • "websites": [
    ],
  • "global_javascript": "string"
}

Deletes an existing project into the account user is logged in.

Authorizations:
requestSigning
path Parameters
project_id
required
string

Responses

Experiences

Convert Experiences provides six different experiment types. A/B, Split URL, Multivariate (MVT), Personalization, A/A and Multi-page (funnel) testing. To learn more, see Six experience types in Convert Experiences.

Get a list of all experiences inside a project, which match the filters provided

Authorizations:
requestSigning
path Parameters
project_id
required
string
Request Body schema: application/json
page
integer

Describes the page number of the fetched results. "results_per_page" results are gonna be returned for each page

results_per_page
integer
Default: 50

A value that would be used for setting the number of records that would be returned per page

experience_types
Array of strings
Items Enum: "a/b" "a/a" "mvt" "split_url" "personalization"

The type of the experiences you'd like to be returned; one of the below can be provided

experience_status
Array of strings
Items Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

The status of the experiences you'd like to be returned; one of the below can be provided

search
string

a search string that would be used to search against Experience's name and description

Responses

Request samples

Content type
application/json
{
  • "page": 0,
  • "results_per_page": 50,
  • "experience_types": [
    ],
  • "experience_status": [
    ],
  • "search": "string"
}

Response samples

Content type
application/json
[
  • {
    }
]

Get an experience with a given ID inside a given project ID

Authorizations:
requestSigning
path Parameters
project_id
required
string
experience_id
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Creates an experience inside a give project ID; 'Variations' key shouldn't be provided or otherwise will be ignored.

Authorizations:
requestSigning
path Parameters
project_id
required
string
Request Body schema: application/json
id
string

Experience's ID which identify an experience in the system

name
string

Experience's name

experience_description
string

The description given by the user for the experience. It could be for instance a memo on what the experience is willing to achieve

experience_type
string
Enum: "a/b" "a/a" "mvt" "split_url" "personalization"

The type of the experience

experience_status
string
Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

The status of the experience

start_time
number

The timestamp of the moment when the experience was first started (it's 0 if it wasn't started yet)

end_time
number

The timestamp of the moment when the experience was stopped (it's 0 if it wasn't stopped yet)

global_js
string

Global Experience's JavaScript that will run for this experience before its changes are applied

editor_url
string

The URL loaded inside the Visual Editor in order to create changes visually

keep_winner
boolean

Keep winning variations

stop_looser
boolean

Stop losing variations

minrun
number

Running time - Min days

maxrun
number

Running time - Max days

minordv
number

Transactions outliers - Min Order

maxordv
number

Transactions outliers - Max Order

minconv
number

Minimum per variation - Min Conversion

minvis
number

Minimum per variation - Min Visitors

maxvis
number

Experiment Limits - Max Visitors

confidence
number

Confidence level in percentages

object

The set of rules that decide on which pages is the experiment firing; Both Include and exclude can contain same type of rules. Out of all possible rule elements available only the following subset is allowed for Site Area: url, url_with_query,query_string, page_tag_page_type, page_tag_category_id, page_tag_category_name, page_tag_product_sku, page_tag_product_name, page_tag_product_price, page_tag_customer_id, page_tag_custom_1, page_tag_custom_2, page_tag_custom_3, page_tag_custom_4

Array of objects

The list of goals connected to this experience; experience of type personalization does not have goals attached;

Array of objects

The list of audiences for which this experience is supposed to run

Array of objects

The list of variations of this experience

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Updates an existing experience identified by experience ID inside a given project ID; 'Variations' key shouldn't be provided or otherwise will be ignored.

Authorizations:
requestSigning
path Parameters
project_id
required
string
experience_id
required
string
Request Body schema: application/json
id
string

Experience's ID which identify an experience in the system

name
string

Experience's name

experience_description
string

The description given by the user for the experience. It could be for instance a memo on what the experience is willing to achieve

experience_type
string
Enum: "a/b" "a/a" "mvt" "split_url" "personalization"

The type of the experience

experience_status
string
Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

The status of the experience

start_time
number

The timestamp of the moment when the experience was first started (it's 0 if it wasn't started yet)

end_time
number

The timestamp of the moment when the experience was stopped (it's 0 if it wasn't stopped yet)

global_js
string

Global Experience's JavaScript that will run for this experience before its changes are applied

editor_url
string

The URL loaded inside the Visual Editor in order to create changes visually

keep_winner
boolean

Keep winning variations

stop_looser
boolean

Stop losing variations

minrun
number

Running time - Min days

maxrun
number

Running time - Max days

minordv
number

Transactions outliers - Min Order

maxordv
number

Transactions outliers - Max Order

minconv
number

Minimum per variation - Min Conversion

minvis
number

Minimum per variation - Min Visitors

maxvis
number

Experiment Limits - Max Visitors

confidence
number

Confidence level in percentages

object

The set of rules that decide on which pages is the experiment firing; Both Include and exclude can contain same type of rules. Out of all possible rule elements available only the following subset is allowed for Site Area: url, url_with_query,query_string, page_tag_page_type, page_tag_category_id, page_tag_category_name, page_tag_product_sku, page_tag_product_name, page_tag_product_price, page_tag_customer_id, page_tag_custom_1, page_tag_custom_2, page_tag_custom_3, page_tag_custom_4

Array of objects

The list of goals connected to this experience; experience of type personalization does not have goals attached;

Array of objects

The list of audiences for which this experience is supposed to run

Array of objects

The list of variations of this experience

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Adds a variation to the experience identified by experience ID inside a given project ID;

Authorizations:
requestSigning
path Parameters
project_id
required
string
experience_id
required
string
Request Body schema: application/json
name
string

The given name for the variation

id
string

The ID of the variation

url
string

The url for splitUrl experiences

js
string

The javascript code that was generated inside Visual Editor or was written manually in the same style

customjs
string

The custom javascript code of the variation

css
string

The CSS loaded by the variation

percentage
number

Variation percentage. Optional

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "id": "string",
  • "url": "string",
  • "js": "string",
  • "customjs": "string",
  • "css": "string",
  • "percentage": 0
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Deletes an exising experience's variation identified by variation_id that belongs to an experience ID inside a given project ID;

Authorizations:
requestSigning
path Parameters
project_id
required
string
experience_id
required
string
variation_id
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "experience_description": "string",
  • "experience_type": "a/b",
  • "experience_status": "draft",
  • "start_time": 0,
  • "end_time": 0,
  • "global_js": "string",
  • "editor_url": "string",
  • "keep_winner": true,
  • "stop_looser": true,
  • "minrun": 0,
  • "maxrun": 0,
  • "minordv": 0,
  • "maxordv": 0,
  • "minconv": 0,
  • "minvis": 0,
  • "maxvis": 0,
  • "confidence": 0,
  • "site_area": {
    },
  • "goals": [
    ],
  • "audiences": [
    ],
  • "variations": [
    ]
}

Deletes an existing experience into the given project.

Authorizations:
requestSigning
path Parameters
project_id
required
string
experience_id
required
string

ID of the experience to be delete

Responses

Goals

Goals measure how well your site fulfills your target objectives. A goal represents a completed activity, called a conversion, that contributes to the success of your business. Examples of goals include making a purchase (for an ecommerce site), completing a game level (for a mobile gaming site), or submitting a contact information form (for a marketing or lead generation site). Read more information about Goals.

List of goals stored inside the given project

The Goals endpoint returns the list of all Goals stored under the given project;

Authorizations:
requestSigning
path Parameters
project_id
required
string
Request Body schema: application/json
page
integer
Default: 1

Describes the page number of the fetched results. "results_per_page" results are gonna be returned for each page

results_per_page
integer
Default: 50

A value that would be used for setting the number of records that would be returned per page

search
string

a search string that would be used to search against Goal's name and description

Responses

Request samples

Content type
application/json
{
  • "page": 1,
  • "results_per_page": 50,
  • "search": "string"
}

Response samples

Content type
application/json
[
  • {
    }
]

Returns a goal by ID

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the goal is stored

goal_id
required
string

ID of the goal to be retrieven

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "goal_id": "string",
  • "goal_name": "string",
  • "triggering_rule": {
    },
  • "goal_type": "advanced",
  • "dom_interaction": [
    ]
}

Creates a new Goal into the project gived as parramenter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the goal is to be stored

Request Body schema: application/json
description
string

A given description for the goal to easily identify it later

goal_id
string

The ID of the goal; it should be ommited when creating a new goal

goal_name
string

A name given to the goal to identify it easily

object (RuleObject)

This one describes a logical rule that is being used inside the app for triggering goals, matching audiences etc

goal_type
string
Enum: "advanced" "DOM_interaction" "visits_page" "revenue" "clicks_link" "submits_form" "clicks_element" "dom_interaction" "scroll_percentage" "ga_import" "code_trigger"

The goal type, one of below. For DOM_intraction type, the field dom_interaction would be filled with both event and selector of DOM element to trigger goal

Array of objects

Array of Events to be tracked by this goal

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "goal_id": "string",
  • "goal_name": "string",
  • "triggering_rule": {
    },
  • "goal_type": "advanced",
  • "dom_interaction": [
    ]
}

Response samples

Content type
application/json
{
  • "description": "string",
  • "goal_id": "string",
  • "goal_name": "string",
  • "triggering_rule": {
    },
  • "goal_type": "advanced",
  • "dom_interaction": [
    ]
}

Updates an existing Goal stored into the project given as parrameter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the goal is to be stored

goal_id
required
string

ID of the goal to be updated

Request Body schema: application/json
description
string

A given description for the goal to easily identify it later

goal_id
string

The ID of the goal; it should be ommited when creating a new goal

goal_name
string

A name given to the goal to identify it easily

object (RuleObject)

This one describes a logical rule that is being used inside the app for triggering goals, matching audiences etc

goal_type
string
Enum: "advanced" "DOM_interaction" "visits_page" "revenue" "clicks_link" "submits_form" "clicks_element" "dom_interaction" "scroll_percentage" "ga_import" "code_trigger"

The goal type, one of below. For DOM_intraction type, the field dom_interaction would be filled with both event and selector of DOM element to trigger goal

Array of objects

Array of Events to be tracked by this goal

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "goal_id": "string",
  • "goal_name": "string",
  • "triggering_rule": {
    },
  • "goal_type": "advanced",
  • "dom_interaction": [
    ]
}

Response samples

Content type
application/json
{
  • "description": "string",
  • "goal_id": "string",
  • "goal_name": "string",
  • "triggering_rule": {
    },
  • "goal_type": "advanced",
  • "dom_interaction": [
    ]
}

Deletes an existing goal into the given project.

Authorizations:
requestSigning
path Parameters
project_id
required
string
goal_id
required
string

ID of the goal to be delete

Responses

Hypotheses

A hypothesis is an assumption that a proposed change in your website would lead to visitors taking the action that you want them to. Read more information about Hypotheses.

List of hypotheses stored inside the given project

The Goals endpoint returns the list of all Hypotheses stored under the given project;

Authorizations:
requestSigning
path Parameters
project_id
required
string
Request Body schema: application/json
page
integer
Default: 1

Describes the page number of the fetched results. "results_per_page" results are gonna be returned for each page

results_per_page
integer
Default: 50

A value that would be used for setting the number of records that would be returned per page

search
string

a search string that would be used to search against hypotheses's name or description

status
Array of strings
Items Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

The status of the hypotheses you'd like to be returned; one of the below can be provided

scoreMax
number
Enum: "0" "1" "2" "3" "4" "5"

The maximum score for hypotheses which you would like to retrieve

scoreMin
number
Enum: "0" "1" "2" "3" "4" "5"

The minimum score for hypotheses which you would like to retrieve

Responses

Request samples

Content type
application/json
{
  • "page": 1,
  • "results_per_page": 50,
  • "search": "string",
  • "status": [
    ],
  • "scoreMax": "0",
  • "scoreMin": "0"
}

Response samples

Content type
application/json
[
  • {
    }
]

Returns a hypothesis by ID

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the hypothesis is stored

hypothesis_id
required
string

ID of the hypothesis to be retrieve

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "project_id": 0,
  • "name": "string",
  • "objective": "string",
  • "prioritization_score": "string",
  • "prioritization_score_type": "PIE",
  • "prioritization_score_attributes": {
    },
  • "status": "draft",
  • "start_date": "string",
  • "end_date": "string",
  • "tags": [
    ],
  • "summary": "string",
  • "created_at": "string"
}

Creates a new Hypothesis into the project give as parameter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the hypothesis is to be stored

Request Body schema: application/json
name
string

A name given to the hypothesis to identify it easily

objective
string

A given description for the hypothesis to easily identify it later

prioritization_score
number

A score calculated based on prioritization score attributes

prioritization_score_type
string
Enum: "PIE" "ICE"

A given description of prioritizing model

prioritization_score_attributes
object
Enum: {"$ref":"#/components/schemas/PIE_Attributes"} {"$ref":"#/components/schemas/ICE_Attributes"}

Attributes according to selected prioritization score type

status
string
Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

Status of hypothesis

start_date
string

The date in format YYYY-MM-DD. Can be a past date when you or your colleagues actually came up to this hypothesis

end_date
string

The date in format YYYY-MM-DD. Can be the date when you expect that the hypothesis is turned into an experience

Array of objects (TagObject)

An array of tag objects to make the Hypothesis easily searchable

summary
string

Summary of your hypothesis

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "objective": "string",
  • "prioritization_score": 0,
  • "prioritization_score_type": "PIE",
  • "prioritization_score_attributes": {
    },
  • "status": "draft",
  • "start_date": "string",
  • "end_date": "string",
  • "tags": [
    ],
  • "summary": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "project_id": 0,
  • "name": "string",
  • "objective": "string",
  • "prioritization_score": "string",
  • "prioritization_score_type": "PIE",
  • "prioritization_score_attributes": {
    },
  • "status": "draft",
  • "start_date": "string",
  • "end_date": "string",
  • "tags": [
    ],
  • "summary": "string",
  • "created_at": "string"
}

Updates an existing Hypothesis stored into the project given as parameter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the hypothesis is to be stored

hypothesis_id
required
string

ID of the hypothesis to be updated

Request Body schema: application/json
name
string

A name given to the hypothesis to identify it easily

objective
string

A given description for the hypothesis to easily identify it later

prioritization_score
number

A score calculated based on prioritization score attributes

prioritization_score_type
string
Enum: "PIE" "ICE"

A given description of prioritizing model

prioritization_score_attributes
object
Enum: {"$ref":"#/components/schemas/PIE_Attributes"} {"$ref":"#/components/schemas/ICE_Attributes"}

Attributes according to selected prioritization score type

status
string
Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

Status of hypothesis

start_date
string

The date in format YYYY-MM-DD. Can be a past date when you or your colleagues actually came up to this hypothesis

end_date
string

The date in format YYYY-MM-DD. Can be the date when you expect that the hypothesis is turned into an experience

Array of objects (TagObject)

An array of tag objects to make the Hypothesis easily searchable

summary
string

Summary of your hypothesis

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "objective": "string",
  • "prioritization_score": 0,
  • "prioritization_score_type": "PIE",
  • "prioritization_score_attributes": {
    },
  • "status": "draft",
  • "start_date": "string",
  • "end_date": "string",
  • "tags": [
    ],
  • "summary": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "project_id": 0,
  • "name": "string",
  • "objective": "string",
  • "prioritization_score": "string",
  • "prioritization_score_type": "PIE",
  • "prioritization_score_attributes": {
    },
  • "status": "draft",
  • "start_date": "string",
  • "end_date": "string",
  • "tags": [
    ],
  • "summary": "string",
  • "created_at": "string"
}

Updates an existing Hypothesis's status stored into the project given as parameter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the hypothesis is to be stored

hypothesis_id
required
string

ID of the hypothesis to be updated

Request Body schema: application/json
status
string
Enum: "draft" "active" "paused" "completed" "scheduled" "archived"

Responses

Request samples

Content type
application/json
{
  • "status": "draft"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "project_id": 0,
  • "name": "string",
  • "objective": "string",
  • "prioritization_score": "string",
  • "prioritization_score_type": "PIE",
  • "prioritization_score_attributes": {
    },
  • "status": "draft",
  • "start_date": "string",
  • "end_date": "string",
  • "tags": [
    ],
  • "summary": "string",
  • "created_at": "string"
}

Deletes an existing hypothesis into the given project.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the hypothesis is to be stored

hypothesis_id
required
string

ID of the hypothesis to be delete

Responses

Audiences

Audiences let you segment your users in the ways that are important to your business. You can segment by event (e.g., session_start or level_up) and by user property (e.g., Browser/OS, Geo, Language), and combine events, parameters, and properties to include practically any subset of users. Read more information about Audiences.

List of audiences stored inside the given project

The audiences endpoint returns the list of all audiences stored under the given project;

Authorizations:
requestSigning
path Parameters
project_id
required
string
Request Body schema: application/json
page
integer
Default: 1

Describes the page number of the fetched results. "results_per_page" results are gonna be returned for each page

results_per_page
integer
Default: 50

A value that would be used for setting the number of records that would be returned per page

search
string

a search string that would be used to search against audience's name or description

isSegment
boolean

It indicates wherever retrieved audiences are marked as segments or not

isUsed
boolean

It indicates wherever retrieved audiences are used or not inside experiences

Responses

Request samples

Content type
application/json
{
  • "page": 1,
  • "results_per_page": 50,
  • "search": "string",
  • "isSegment": true,
  • "isUsed": true
}

Response samples

Content type
application/json
[
  • {
    }
]

Returns an audience by ID

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the audience is stored

audience_id
required
string

ID of the audience to be retrieven

Responses

Response samples

Content type
application/json
{
  • "audience_id": "string",
  • "audience_name": "string",
  • "description": "string",
  • "firing_rule": {
    },
  • "audience_type": "string"
}

Creates a new audience into the project gived as parramenter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the audience is to be stored

Request Body schema: application/json
audience_id
string

ID of the audience as identified into the database; it won't be provide for adding a new goal

audience_name
string

a name given to the audience in order to easily identify it

description
string

A description given to the audience in order to easily identify it

object (RuleObject)

This one describes a logical rule that is being used inside the app for triggering goals, matching audiences etc

audience_type
string

Audience type. Should be one of the following permanent, segmentation, transient

Responses

Request samples

Content type
application/json
{
  • "audience_id": "string",
  • "audience_name": "string",
  • "description": "string",
  • "firing_rule": {
    },
  • "audience_type": "string"
}

Response samples

Content type
application/json
{
  • "audience_id": "string",
  • "audience_name": "string",
  • "description": "string",
  • "firing_rule": {
    },
  • "audience_type": "string"
}

Updates an existing audience stored into the project given as parrameter.

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project into which the audience is to be stored

audience_id
required
string

ID of the audience to be updated

Request Body schema: application/json
audience_id
string

ID of the audience as identified into the database; it won't be provide for adding a new goal

audience_name
string

a name given to the audience in order to easily identify it

description
string

A description given to the audience in order to easily identify it

object (RuleObject)

This one describes a logical rule that is being used inside the app for triggering goals, matching audiences etc

audience_type
string

Audience type. Should be one of the following permanent, segmentation, transient

Responses

Request samples

Content type
application/json
{
  • "audience_id": "string",
  • "audience_name": "string",
  • "description": "string",
  • "firing_rule": {
    },
  • "audience_type": "string"
}

Response samples

Content type
application/json
{
  • "audience_id": "string",
  • "audience_name": "string",
  • "description": "string",
  • "firing_rule": {
    },
  • "audience_type": "string"
}

Deletes an existing audience into the given project.

Authorizations:
requestSigning
path Parameters
project_id
required
string
audience_id
required
string

ID of the audience to be delete

Responses

Reports

Reports allow you to see your experiences performance and explore your visitors behavior. You can use the results on the Report to make key business decisions based on the data you see. Fundamentally, on the Report page you are looking at how each variation performed, measured by each each goal in your experience. The variation that was most successful at achieving the goal is the winner.

Gets the partial report for the given experience/goal id pair

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project

experience_id
required
string

ID of the experience

goal_id
required
string

ID of goal tracked

Request Body schema: application/json
start_timestamp
number

Unix timestamp

end_timestamp
number

Unix timestamp

Responses

Request samples

Content type
application/json
{
  • "start_timestamp": 0,
  • "end_timestamp": 0
}

Gets the full report for the given experience, returning all the goals connected to that experience

Authorizations:
requestSigning
path Parameters
project_id
required
string

ID of the project

experience_id
required
string

ID of the experience

Request Body schema: application/json
start_timestamp
number

Unix timestamp

end_timestamp
number

Unix timestamp

Responses

Request samples

Content type
application/json
{
  • "start_timestamp": 0,
  • "end_timestamp": 0
}