HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Migrate Server-to-server API 1.3 to 1.4

Describes changes between versions 1.3 and 1.4 of the Server-to-Server API, used for recommendations features in Optimizely.

Request message reference

To use version 1.4, specify the correct version number in the request URL, as shown in the following example.


Tracking request

IP address

Sending the IP address is optional in the tracking request, as shown in the following example.

"ip": ""

User ID

Server-to-Server API version 1.4 replaces email addresses with a pseudonymized user ID.

A user’s email and name are removed from the tracking request, as shown in the following examples.

"user" : { 
               "name"  : "[email protected]", 
               "email" : "[email protected]" 

They are replaced by a pseudonymized user id:

"user" : { 
               "id" : "abcd1234efgh" 

Session ID and CUID

The format of session and cuid was changed from v1.3 to v1.4.

The forward slash (/) in their values in v1.3...

"session" : "155780550/hKugo5RQsqecUpmlWE6EpFWqmalVrJU",
    "cuid"    : "143159800/hKugo5RQsqecUpmlWE6Eo1OklrJYp5U"

...was changed to a pipe (|) in v1.4.

"session" : "123456789012|a1b2c3d4e5A6B7C8D9E0f1g2h3i4j5F1G2H3I4J5k1l",
    "cuid"    : "09876543210|Z0Y9X8W7V6z5y4x3w2v1U0T9S8R7Q6u5t4s3r2q1P0O"



Optimizely Product Recommendations – To prevent user behavior from being lost, send Optimizely an up-to-date mapping between email addresses and pseudonymized user IDs. Provide this once so that Optimizely Recommendations can replace existing customer email addresses with their corresponding pseudonymized user ID.

Optimizely Email Product Recommendations – Provide an up-to-date mapping between email addresses and pseudonymized user IDs to your Email Service Provider (ESP) . Your ESP should create a new placeholder (mail merge variable) that represents the pseudonymized user ID. Then you replace the email address placeholder from all your Mail campaigns with this new placeholder.

Optimizely Triggered Messages – Your ESP must handle pseudonymized user IDs. Currently, in Triggered Messages, this functionality is provided only by Optimizely Campaign. Ask your ESP to provide an API extension that lets Optimizely call methods that accept the pseudonymized user ID instead of email address. Also, provide and maintain a mapping between pseudonymized user ID and customer email address that your ESP can use to lookup, to send the email to the appropriate customer based on their pseudonymized user ID.

(Legacy) Optimizely Promote – If provided, Optimizely Recommendations can use the visitor's IP address, within their session, to look up a geolocation to identify the approximate location of the visitor for a personalized online experience. IP addresses, if provided, are not stored, so they cannot be used for analytics and reporting.