Get personalizations

Retrieve all personalizations (experiences) for a specific website, including their configuration, targeting rules, variants, and status information.

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

Overview

The Get Personalizations endpoint retrieves all personalizations (experiences) configured for a specific website. This includes information about targeting rules, variants, component settings, scheduling, and current status.

Endpoint

GET /public/personalizations

Authentication

This endpoint requires authentication via the x-api-key header.

Headers

HeaderTypeRequiredDescription
x-api-keystringYesYour API key. See: Account Settings

Parameters

ParameterTypeRequiredDescription
accountIdstringYesYour account ID. See: Account Settings
websiteIdstringYesThe website ID to retrieve personalizations for

Response

The endpoint returns an array of personalization objects. Each personalization object contains the following fields:

Personalization Object

FieldTypeDescription
accountIdstring | nullThe account ID that owns this personalization
assigneestring | nullUser assigned to this personalization
changedboolean | nullWhether the personalization has been modified
componentAccountIdstring | nullAccount ID for component-based personalizations
componentPackageNamestring | nullPackage name for component-based personalizations
componentSettingsstring | nullJSON string containing component configuration
componentTypestring | nullType of component used
componentVersionnumber | nullVersion of the component
createdAtnumber | nullTimestamp when personalization was created
createdDatenumber | nullCreation date timestamp
delayOptionstring | nullDelay trigger option (e.g., "seconds", "pageviews")
delayValuenumber | nullDelay value for trigger timing
diffUrlstring | nullURL for viewing changes diff
disabledboolean | nullWhether the personalization is disabled
endDatenumber | nullTimestamp when personalization should stop running
excludedRulestring | nullRules for excluding visitors
exclusiveboolean | nullWhether this personalization is exclusive
hideOptionstring | nullOption for hiding the personalization
hideValuenumber | nullValue for hide timing
isComponentboolean | nullWhether this is a component-based personalization
isHiddenAiComponentboolean | nullWhether this is a hidden AI component
javascriptTriggerstring | nullJavaScript trigger code
javascriptTriggerParsedstring | nullParsed JavaScript trigger
longurlstring | nullExtended URL information
maxValuenumber | nullMaximum value for certain triggers
personalizationTagsstring[] | nullArray of tags associated with this personalization
prionumber | nullPriority level (higher numbers = higher priority)
recipestring | nullPersonalization recipe/template
redirectUrlstring | nullURL for redirect-type personalizations
rulestring | nullTargeting rules in JSON format
startDatenumber | nullTimestamp when personalization should start running
statestring | nullCurrent state (e.g., "running", "paused", "draft")
targetTemplateDomainstring | nullTarget domain for template
targetTemplatePathstring | nullTarget path for template
testModestring | nullTest mode configuration
updatedDatenumber | nullTimestamp of last update
variantsVariant[] | nullArray of personalization variants
variationIdstring | nullID of the variation
variationNamestring | nullName of the variation
webPagePathstring | nullWeb page path where personalization applies
websiteIdstring | nullWebsite ID this personalization belongs to

Example Request

curl --location 'https://rest-endpoint.unless.com/api/v1/public/personalizations?accountId=your-account-id&websiteId=your-website-id' \
--header 'x-api-key: your-api-key'

Example Response

[
  {
    "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "variationId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "variationName": "Homepage Hero Optimization",
    "state": "running",
    "disabled": false,
    "prio": 100,
    "rule": "{\"and\":[{\"field\":\"url\",\"operator\":\"equals\",\"value\":\"/\"}]}",
    "startDate": 1640995200000,
    "endDate": null,
    "createdAt": 1640995200000,
    "updatedDate": 1641081600000,
    "webPagePath": "/",
    "personalizationTags": ["homepage", "hero", "conversion"],
    "testMode": "live",
    "exclusive": false,
    "isComponent": false,
    "variants": [
      {
        "id": "control",
        "name": "Control",
        "weight": 50
      },
      {
        "id": "variation-1",
        "name": "New Hero Design",
        "weight": 50
      }
    ]
  }
]

Response Status Codes

CodeDescription
200Successful response with array of personalizations
400Bad request - invalid parameters
401Unauthorized - invalid API key
403Forbidden - insufficient permissions
404Not found - invalid account or website ID

Use Cases

  • Dashboard Overview: Retrieve all personalizations for management interface
  • Performance Monitoring: Get current state and configuration of all experiences
  • Bulk Operations: Fetch personalizations for batch updates or analysis
  • Integration: Sync personalization data with external systems
  • Reporting: Generate reports on personalization coverage and status

Notes

  • All timestamp fields are in Unix timestamp format (milliseconds)
  • Rules are stored as JSON strings and need to be parsed
  • Priority (prio) determines execution order when multiple personalizations could apply
  • Component-based personalizations have additional fields for component configuration
  • The variants array contains the different variations being tested
Response
200
Language
LoadingLoading…