External AB Testing

This guide outlines the requirements for setting up an External AB Test for the Real-time Segments feature users.

💡 Prerequisite Knowledge

We recommend that you review the following guide:

  • Real-time Segments feature page: This article introduces you to the Real-time Segments feature.
  • Segmentation Setup: This guide illustrates how you can expose segmentations to Discovery and set a state for the segmentations. You'll be testing the same segmentations.

External Test Requirements

You may have use cases where you’d like to test the performance of any segmentation for a subset of site viewers in an External AB Testing tool. This section lists all the prerequisites for testing a segmentation in an external test.

1. The segmentation you wish to test against should be in the Available or Live state.

2. You’ll need to add the following parameters to the Frontend API calls:

Parameter Description Where to find the value in the dashboard
cdp_segments A colon-separated string representing the combination of segmentation_id and segment_id.

It specifies the segmentation_id and segment_id to personalize the ranking on. This can be passed as:

&cdp_segments=segmentation_id:segment_id

Note: All parameter values, including the cdp_segments parameter value must be URL encoded when sending the Frontend API call.

Follow the steps below to get the Segmentation and Segment IDs:
  1. Navigate to Algorithm Customizations > Real-time segments.
  2. Locate the desired segmentation and click the “Configure” button. 1346
  3. The Segmentation ID and Segment ID values are indicated in the visual below. Pass the same in API calls. 1346
personalization. segmentation A string representing the segmentation_id. This parameter is specific to the Real-Time Segments algorithm.
This can be passed in the API call as:

&personalization.segmentation= segmentation_id

Use the Segmentation ID as depicted in the visual above. This must be the same segmentation_id value as used for the cdp_segments parameter.

To summarize, a segmentation you wish to test must meet the following conditions:

  • The segmentation must be in the “Available” or “Live” state.

  • The Segmentation ID should be passed in the cdp_segments parameter.

  • In case an “Available” segmentation needs to be applied, the “Available” Segmentation ID should be passed in the personalization.segmentation parameter.

    In case this parameter is not provided, then the “Live” segmentation will be applied. Therefore the segmentationid of the “Live” segmentation should be used in the cdp_segments parameter.

    On satisfying the above conditions, the Segmentation ID will be applied to display segmented results.

3. You must configure your test variant to point to the following API call:

GET http://core.dxpapi.com/api/v1/core/?
account_id=9699
&auth_key=abcd223
&domain_key=homeoasis
&request_id=7182431795967
&_br_uid_2=uid%3D6646001637145%3Av%3D15.0%3Ats%3D1635534117382%3Ahc%3D35
&url=www.homeoasis.com
&ref_url=www.homeoasis.com
&request_type=search
&rows=10
&start=0
&fl=pid%2Ctitle%2Cbrand%2Cprice%2Csale_price%2Cpromotions%2Cthumb_image%2Csku_thumb_images%2Csku_swatch_images%2Csku_color_group%2Curl%2Cprice_range%2Csale_price_range%2Cdescription
&q=dress
&search_type=keyword
&personalization.segmentation=63a1ede75322418784c619f1 
&cdp_segments=63a1ede75322418784c619f1%3A63a21063733ffea05e1a29ee