# List personalization variants by page

Retrieves all personalization variants defined for a specific page, including IDs, names, creation dates, and associated variants.

Endpoint: GET /api/v2/personalization/by-page/{pageId}
Version: v2.0
Security: HTTPBearer

## Path parameters:

  - `pageId` (string, required)
    The unique identifier of the page for which to retrieve personalization versions. To get this ID, use List pages of a site.
    Example: "3f2504e0-4f89-11d3-9a0c-0305e82c3301"

## Query parameters:

  - `language` (any)
    The language version of the page.
    Example: "en"

## Header parameters:

  - `x-sc-job-id` (any)
    A unique identifier for the job, used to trace, audit, and revert actions performed by an AI agent through the Agent API.
    Example: "job-1234"

## Response 200 fields (application/json):

  - `page_id` (string, required)
    The unique identifier of the page.
    Example: "3f2504e0-4f89-11d3-9a0c-0305e82c3301"

  - `variant_name` (string, required)
    The name of the variant.
    Example: "Variant A"

  - `audience_name` (string, required)
    The name of the audience targeted by the variant.
    Example: "Returning Visitors"

  - `template` (string, required)
    The template used for the variant.
    Example: "Default Template"

  - `condition_groups` (array)
    A list of condition groups for the personalization variant.

  - `condition_groups.conditions` (array, required)
    A list of conditions in this condition group.

  - `condition_groups.conditions.templateId` (string, required)
    The unique identifier of the condition template.
    Example: "cond-6c54-4b01-90e6-d701748f0851"

  - `condition_groups.conditions.params` (object, required)
    A key-value map of parameters for the condition.

  - `condition_groups.unionType` (any)
    Union type for combining conditions. Either AND or OR. First group should not have a unionType.

## Response 422 fields (application/json):

  - `detail` (array)

  - `detail.loc` (array, required)
    The location of the error in the request.

  - `detail.msg` (string, required)
    The error message.

  - `detail.type` (string, required)
    The type of error.

  - `detail.input` (any)
    The input that caused the error.

  - `detail.ctx` (object)
    The context in which the error occurred.


