User Export API

The Marketing Cloud Personalization User Export API enables you to export user data such as segments, engagement scores, change in engagement scores, and user activity from Personalization datasets for use in other systems.

GET /api/dataset/<datasetId>/users.< json | csv >

https://<accountName>.<instance>.evergage.com/api/dataset/<datasetId>/users.< json | csv >

URL ParameterRequired?Description
accountNameYesYour Personalization account name. You can retrieve it by accessing Gears from the Personalization UI and reviewing the URL. For example, if your Gears URL is https://demo.us-1.evergage.com/, then your account name is demo.
instanceYesYour Personalization instance identifier. You can retrieve it by accessing Gears from the Personalization UI and reviewing the URL. For example, if your Gears URL is https://demo.us-1.evergage.com/, then your instance identifier is us-1.
datasetIdYesName or identifier of the Personalization dataset you’re exporting account data from.
filterNoOptional Segment name or ID
startNoOptional start time in epoch milliseconds used for engagement statistics
endNoOptional end time in epoch milliseconds used for engagement statistics
segmentationIdNoOptional segmentation identifier
segmentIdNoOptional segment identifier
pageSizeNoNumber of records to return. Returns all records unless specified.
pageNoPage number of records to show, starting at zero for the first page. Starts at zero unless specified.
includeGeoNoSet as true to include user location details

Authorization: Basic <base64-encoded-API-token>

The User Export API uses API tokens to authenticate requests. Your API token must be a strict Base64 encoding of your API Key ID and its API Secret Key, separated by a colon. You can use an existing API token if it has the required permissions or ask an account administrator to generate a new one from the Personalization UI. An account administrator can generate a new API token by navigating to Security > API Tokens > Create Token. For more information on API tokens, see Personalization API Tokens on Salesforce Help.

Alternatively, if you use cURL to interact with the API, you can send your API Key ID and its API Key Secret using the -u "apiKeyId:apiKeySecret" command-line option. cURL automatically converts the apiKeyId:apiKeySecret pair into a Base64-encoded string and adds the Authorization: Basic <base64-encoded-API-token> to the request header. For an example of how to pass your API credentials in a cURL request, refer to the Example section in this article.

The following is an example GET request sent using cURL that retrieves user data in the JSON format from the specified Personalization dataset.

The following example request passes API credentials using the -u command-line option.

The preceding example cURL request generates the following example response in the JSON format.

The following is an example of how you can use the User Export API. In this example, the fetchEvergageData() function is called with the appropriate parameters to log user data from the specified Personalization dataset to the console.

Exporting a large number of users can result in duplicate entries for the same user, especially if the user is updated just before or while the export is being processed. In such cases, the most current record for that user is always the last one in the export.