Documentation
What is A/B testing?
A/B testing allows business to experiment with two (A and B) or more variants of a UX design (web-page or a user journey).
The data collected for the different variants of the UX design is used to make informed decision about which variant is best for the business.
Server side A/B testing
In server side A/B testing, the decision to present which variant of UX design is taken at the server side.
How does it work?
Two or more variants of a journey are built and the data for both the journeys is collected at a later stage to check which journey resulted in more success so that business can adopt the best journey.
Example use cases for A/B testing:
- Example 1: An application wants to split their users between two different registration journeys, quick registration and traditional registration, to see which journey is getting more success rate. This application can use A/B testing APIs to split the users into two groups where users in group A are sent to the traditional registration journey and users in group B are sent to the quick registration journey.
- Example 2: In a very different example, an application might want to experiment with two differnt versions of the same webpage. In this case, users in group A are shown one version of the page and users in group B the other.
QUECTO A/B TESTING APIs
Create A/B Test
This API can be used to create a new server side A/B test.
Mandatory parameters:
Mandatory parameters:
- A/B Test Name : Name of the test
- Variant groups: A list of variant group name and the percentage of users that should be a part of this variant.
-
Status of this A/B test (abTestStatus) : Allowed values are
- ENABLED: The A/B test is running. This is the default value.
- DISABLED: The A/B test has been temporarily paused. The A/B test can be resumed by updating the status to ENABLED.
- FINISHED: The A/B test has finished.
{
"abTestName": "Registration journey",
"abTestStatus": "ENABLED",
"variants": {
"Quick Registration": 60,
"Traditional Registration": 40
}
}
Update A/B Test
This API can be used to update an existing A/B test. Using this API, we can:
- Add/remove variants
- Update percentage of user that we want to assign to a variant
- Update the status of the A/B test.
- A/B Test Name : Name of the test
- Variant groups: A list of variant group name and the percentage of users that should be a part of this variant.
- Status of this A/B test (abTestStatus) : Allowed values are DISABLED, ENABLED, FINISHED. Defaults to ENABLED if left empty.
{
"abTestName": "Registration journey",
"abTestStatus": "ENABLED",
"variants": {
"Quick Registration": 60,
"Traditional Registration": 40
}
}
Get data for an A/B test
This API can be used to get the data for an A/B test at any point of time.
Mandatory parameters:
- A/B Test Name
Get all A/B tests
Returns a list of all A/B tests.
View A/B test
Retrieve information about an A/B test including its status and variant groups.
Mandatory parameters:
- A/B Test Name
Assign user to a variant of the A/B test
Once a new A/B test has been created, this API can be used to assign user to one of the variants of the A/B test.
If a user has already been assigned to a variant of A/B test, then this API will return information of that variant.
Mandatory parameters:
- A/B Test Name
- User Id of the user who needs to be assigned to one of the variants
{
"abTestName": "Registration journey",
"userId": "new_user@example.com"
}
Remove user from an A/B test
This API can be used to remove a user from a A/B test.
Mandatory parameters:
- A/B Test Name
- User Id of the user who needs to be removed from the A/B test.
{
"abTestName": "Registration journey",
"userId": "new_user@example.com"
}