Campaigns (Dec 17, 2024, 12:05:39 PM)

Download OpenAPI specification:Download

Welcome to Synerise API Reference! We hope that you'll enjoy your stay here.

If you need help with our services, feel free to contact us at support@synerise.com.

Authentication

JWT

Synerise uses JSON Web Token (JWT) as the authorization method. The token is generated by the auth/login endpoint. You need to include it in the Authorization header of your requests, with a Bearer prefix. See this simplified example of a call:

curl -X GET https://api.synerise.com/v4/clients \
-H 'Accept: application/json' \
-H 'Api-Version: 4.4' \
-H 'Authorization: Bearer eyJhbGdiOiJSzZXIaLCJjdGQiOjE1NTI0NjMzMjg4NjIsImF1dGgiOiJINHNJQUFBQUFBQUFBSXVPQlFBcHUwd05BZ0FBQUE9PSIsIm5tZSI' \
-H 'Content-Type: application/json'

Remember to include a space between Bearer and the token.

By default, the token is valid for one week (see workspace settings). You can request a refreshed key for the session by using the auth/refresh endpoint before the current token expires.

You can verify your JWT signature by using the public key.

Security Scheme Type HTTP
HTTP Authorization Scheme bearer

TrackerKey

Authorization by tracker key sent in a token query parameter. This may be the same key as used in the tracking code of the website. For details, see this article: https://help.synerise.com/developers/web/installation-and-configuration/#creating-a-tracking-code.

Security Scheme Type API Key
Query parameter name: token

Authorization

Methods to authorize and obtain JWT token required by our API endpoints

Log in as User

Authenticate as a User.

Note: To perform operations within a Workspace, you must select a Workspace.

  • This method does not require a Synerise authorization token.
Request Body schema: application/json
username
required
string

The login (email address) of the user

password
required
string

The user's password

deviceId
string

Identifier of user's current device

externalProviderToken
string
externalProviderType
string
Value: "GOOGLE"

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "password": "string",
  • "deviceId": "string",
  • "externalProviderToken": "string",
  • "externalProviderType": "GOOGLE"
}

Response samples

Content type
application/json
{
  • "consumer": {
    },
  • "token": "string"
}

Verify User multi-factor authentication

Authenticate as a User with multi-factor authentication.

Note: To perform operations within a Workspace, you must select a Workspace.


  • API consumer who can use this method: Synerise User

  • This method is available to all authenticated users, before and after multi-factor authentication is confirmed.

Authorizations:
query Parameters
mfaType
required
string
Enum: "TOTP_AUTHENTICATOR" "EMAIL"

Type of multi-factor authentication

Request Body schema: application/json
verificationCode
required
string

Multi-factor verification code

deviceId
string
externalProviderToken
string
externalProviderType
string
Value: "GOOGLE"

Responses

Request samples

Content type
application/json
{
  • "verificationCode": "string",
  • "deviceId": "string",
  • "externalProviderToken": "string",
  • "externalProviderType": "GOOGLE"
}

Response samples

Content type
application/json
{
  • "consumer": {
    },
  • "token": "string"
}

Select Workspace

After logging in as a User, select a Workspace where you want to perform operations.


  • API consumer who can use this method: Synerise User

  • This method is available to all fully-authenticated users (multifactor confirmation required, if enabled).

Authorizations:
path Parameters
businessProfileUUID
required
string <uuid>

UUID of the workspace

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/uauth/auth/login/user/profile/%7BbusinessProfileUUID%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "consumer": {
    },
  • "token": "string"
}

Get Workspaces

Retrieve a list of Workspaces available to the user.


  • API consumer who can use this method: Synerise User

  • This method is available to all fully-authenticated users (multifactor confirmation required, if enabled).

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/uauth/business-profile/ 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Get current Workspace

Retrieve information about the currently selected workspace.


  • API consumer who can use this method: Synerise User

  • This method is available to all fully-authenticated users (multifactor confirmation required, if enabled).

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/uauth/business-profile/current 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "selected": true,
  • "data": {
    }
}

Log in as Workspace

Obtain a new Workspace JWT Token.

  • This method does not require a Synerise authorization token.
Request Body schema: application/json
apiKey
required
string

Workspace API key

WARNING: Workspace API keys can be used to access all customer data and manage the workspace. They should only be used for server-to-server communication in integrations. DO NOT use workspace API keys in your mobile applications or websites.

Responses

Request samples

Content type
application/json
{
  • "apiKey": "64c09614-1b2a-42f7-804d-f647243eb1ab"
}

Response samples

Content type
application/json
{
  • "token": "string"
}

Refresh a Profile token

Retrieve a refreshed JWT Token to prolong the session.

The current token must still be active at the time of the request.


  • API consumers who can use this method: Profile (formerly client), Anonymous profile (formerly client)

  • This method does not require a Synerise authorization token.

Authorizations:
Request Body schema: application/json
apiKey
required
string

Profile (formerly "Client") API key

Responses

Request samples

Content type
application/json
{
  • "apiKey": "string"
}

Response samples

Content type
application/json
{
  • "token": "string",
  • "expiration": 1649283173,
  • "created": 1649277173668,
  • "origin": "SYNERISE",
  • "customId": "card123",
  • "realm": "client"
}

Authenticate as Profile

Obtain a new JWT for a Profile. If an account for the Profile does not exist and the identityProvider is different than SYNERISE, this request creates an account.

  • This method does not require a Synerise authorization token.
Request Body schema: application/json
apiKey
required
string

Profile (formerly "Client") API key

identityProvider
required
string
Enum: "SYNERISE" "FACEBOOK" "OAUTH" "APPLE" "GOOGLE" "UNKNOWN"

The identity provider.

identityProviderToken
string

Third-party authentication token used to authenticate with the Identity Provider. Required if identityProvider is different than SYNERISE.

email
string

Profile email. Required if identityProvider is SYNERISE and email is the unique identifier (default setting).

customId
any

Profile customId. Required if identityProvider is SYNERISE and customId is the unique identifier (see https://hub.synerise.com/docs/settings/configuration/non-unique-emails/).

password
string

Profile password. Required if identityProvider is SYNERISE.

uuid
string

Profile UUID. Required if identityProvider is SYNERISE.

deviceId
string

Unique Android or iOS device ID

object

This object contains the marketing agreements of the Profile.

You can also pass the values as strings ("true";"True"/"false";"False") or integers (1 for true and 0 for false).

object

This object contains custom attributes that can have any name (except for reserved attributes, see warning below) and data type, as required by your integration.

The attribute names can't include any characters that match the pattern (ECMA flavor): /[\r\n\u2028\u2029\u00AD\u0000\uFE00-\uFE0F]/

String values:

  • can't include variation selectors ([\uFE00-\uFE0F]), unless there are other characters in the string.
  • can't include the "null" control character (\u0000)

If you want to send a date/time attribute for use in analytics, take the following into account:

  • The date/time should be formatted according to ISO 8601.
  • The time zone of the workspace affects dates/times in the attributes that DON'T have a defined timezone. Example:
    • 2023-10-09T12:00:00 doesn't have a timezone indicator and will be considered as a time in the workspace's time zone.
    • 2023-10-09T12:00:00+02:00 has a timezone indicator (+02:00), so the timezone of the workspace doesn't affect it.
    • 2023-10-09T12:00:00Z is a time in the UTC time zone (denoted by the Z at the end), so the timezone of the workspace doesn't affect it.

WARNING: Some attributes are reserved and cannot be sent. If you send them, they are ignored.

Click to expand the list of reserved attributes email
clientId
phone
customId
uuid
firstName
lastName
displayName
company
address
city
province
zipCode
countryCode
birthDate
sex
avatarUrl
anonymous
agreements
tags
businessProfileId
time
ip
source
newsletter_agreement
custom_identify
firstname
lastname
created
updated
last_activity_date
birthdate
external_avatar_url
displayname
receive_smses
receive_push_messages
receive_webpush_messages
receive_btooth_messages
receive_rfid_messages
receive_wifi_messages
confirmation_hash
ownerId
zipCode
anonymous_type
country_id
geo_loc_city
geo_loc_country
geo_loc_as
geo_loc_country_code
geo_loc_isp
geo_loc_lat
geo_loc_lon
geo_loc_org
geo_loc_query
geo_loc_region
geo_loc_region_name
geo_loc_status
geo_loc_timezone
geo_loc_zip
club_card_id
type
confirmed
facebookId
status
tags
Array of strings

Tags can be used to group profiles.

Tag names (strings):

  • can't include variation selectors ([\uFE00-\uFE0F]), unless there are other characters in the string.
  • can't include the "null" control character (\u0000)

Responses

Request samples

Content type
application/json
{
  • "apiKey": "string",
  • "identityProvider": "SYNERISE",
  • "identityProviderToken": "string",
  • "email": "string",
  • "customId": null,
  • "password": "string",
  • "uuid": "string",
  • "deviceId": "string",
  • "agreements": {
    },
  • "attributes": {
    },
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJSUzUxMiJ9.eyJzdinvalidwYmZkM2FkNDg2ZjQ3ZGRiMjE5MSIsImF1ZCI6IkFQSSIsInJsbSI6ImFub255bW91c19jbGllbnQiLCJjdGQiOjE1NTMwMDQxNTkxNTEsImVtbCI6IjYyMjM3NmY4LTAwMDAtMjIyMi1kN2Y5LTA3MGZhOTU2ZTk2M0Bhbm9ueW1vdXMuaW52YWxpZCIsImF1dGgiOiJINHNJQUFBQUFBQUFBSXVPQlFBcHUwd05BZ0FBQUE9PSIsImlzcyI6IlN5bmVyaXNlIiwiYnBpIjo0OCwiY2xJZCI6NDMzMjMwMjg4LCJleHAiOjE1NTMwMDcxNTksImFwayI6IjVBRUFBM0Q1LUUxNDctQzdFQi1ENTlFLUJDRjUwMTA5QTNEMSJ9.QOmSqrneR4mJFv4JdxTYsw_wGcDawDsVQuB-GVTcPPwijiP7lQ_Jzqq2Mypg1BS6WFlfGB8fzqCY9iMF_TdtjmoB4xBrY95ylU8L9qto-9Cw5x5TURkfxq31eryiHe2IteRAEtoVzYg2_s9QhlH6ANVcFOVp8dMno0V9bfMYfeSQa3FkjEbxFsseHkMOiADmp9-tOGtLXO942Ir-2W_Hz3Utlpt4erz0dVJBw8a-mFavPA8EEDWR7ACJNocrVHFkS3wFISh3LqLn6KkXiowaynKlJOEHGctuahzKmF3ZOJ1BvGgKohxF9OXvQs9IdmCfWhYsLr5Q2p04TJJ-MyvTipuggKVioh8mHmOFdfnN-Zused6tXzhZtKPUWTmM8cBKoAOBHExxcMQ8SVSjxnw_7_eLKm7S2wNpu0V-tiPZPCH4wYZXtWBYjmfy0V9ydjXnNunXfgxKixLeFNnONUXxEuqPLvM_xAuonQBXVN4nYrgJv8p8U6_ZlGMPjJq1szfcuBZnzI34LSEWx_nSof0XC5Czm8iG_ihG8naivNWS8h-Q-qKMP_3PPFsLSH4Egh03pH93EJUuNAeSO4RGfUX1wzMvrv1nBC1SM660uFMbq-wkplFBbKnHKMYe-qRs1-lZPG5PwPWJJdpGqOUzbnoMOJYmiq06OHHVQyJSkcEHLCk"
}

Authenticate Profile with a server

Obtain a new JWT for a Profile. This method is designed to be used from a backend server that handles login requests and communicates with Synerise to execute them.
If an account for the Profile does not exist and the identityProvider is different than SYNERISE, this request creates an account.


  • API consumer who can use this method: Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SAUTH_SERVER_LOGIN_CLIENT_CREATE

Request Body schema: application/json
ipAddress
required
string

The IP address of the client device that is logging in.

apiKey
required
string

Profile (formerly "Client") API key

identityProvider
required
string
Enum: "SYNERISE" "FACEBOOK" "OAUTH" "APPLE" "GOOGLE" "UNKNOWN"

The identity provider.

identityProviderToken
string

Third-party authentication token used to authenticate with the Identity Provider. Required if identityProvider is different than SYNERISE.

email
string

Profile email. Required if identityProvider is SYNERISE and email is the unique identifier (default setting).

customId
any

Profile customId. Required if identityProvider is SYNERISE and customId is the unique identifier (see https://hub.synerise.com/docs/settings/configuration/non-unique-emails/).

password
string

Profile password. Required if identityProvider is SYNERISE.

uuid
string

Profile UUID. Required if identityProvider is SYNERISE.

deviceId
string

Unique Android or iOS device ID

object

This object contains the marketing agreements of the Profile.

You can also pass the values as strings ("true";"True"/"false";"False") or integers (1 for true and 0 for false).

object

This object contains custom attributes that can have any name (except for reserved attributes, see warning below) and data type, as required by your integration.

The attribute names can't include any characters that match the pattern (ECMA flavor): /[\r\n\u2028\u2029\u00AD\u0000\uFE00-\uFE0F]/

String values:

  • can't include variation selectors ([\uFE00-\uFE0F]), unless there are other characters in the string.
  • can't include the "null" control character (\u0000)

If you want to send a date/time attribute for use in analytics, take the following into account:

  • The date/time should be formatted according to ISO 8601.
  • The time zone of the workspace affects dates/times in the attributes that DON'T have a defined timezone. Example:
    • 2023-10-09T12:00:00 doesn't have a timezone indicator and will be considered as a time in the workspace's time zone.
    • 2023-10-09T12:00:00+02:00 has a timezone indicator (+02:00), so the timezone of the workspace doesn't affect it.
    • 2023-10-09T12:00:00Z is a time in the UTC time zone (denoted by the Z at the end), so the timezone of the workspace doesn't affect it.

WARNING: Some attributes are reserved and cannot be sent. If you send them, they are ignored.

Click to expand the list of reserved attributes email
clientId
phone
customId
uuid
firstName
lastName
displayName
company
address
city
province
zipCode
countryCode
birthDate
sex
avatarUrl
anonymous
agreements
tags
businessProfileId
time
ip
source
newsletter_agreement
custom_identify
firstname
lastname
created
updated
last_activity_date
birthdate
external_avatar_url
displayname
receive_smses
receive_push_messages
receive_webpush_messages
receive_btooth_messages
receive_rfid_messages
receive_wifi_messages
confirmation_hash
ownerId
zipCode
anonymous_type
country_id
geo_loc_city
geo_loc_country
geo_loc_as
geo_loc_country_code
geo_loc_isp
geo_loc_lat
geo_loc_lon
geo_loc_org
geo_loc_query
geo_loc_region
geo_loc_region_name
geo_loc_status
geo_loc_timezone
geo_loc_zip
club_card_id
type
confirmed
facebookId
status
tags
Array of strings

Tags can be used to group profiles.

Tag names (strings):

  • can't include variation selectors ([\uFE00-\uFE0F]), unless there are other characters in the string.
  • can't include the "null" control character (\u0000)

Responses

Request samples

Content type
application/json
{
  • "ipAddress": "string",
  • "apiKey": "string",
  • "identityProvider": "SYNERISE",
  • "identityProviderToken": "string",
  • "email": "string",
  • "customId": null,
  • "password": "string",
  • "uuid": "string",
  • "deviceId": "string",
  • "agreements": {
    },
  • "attributes": {
    },
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJSUzUxMiJ9.eyJzdinvalidwYmZkM2FkNDg2ZjQ3ZGRiMjE5MSIsImF1ZCI6IkFQSSIsInJsbSI6ImFub255bW91c19jbGllbnQiLCJjdGQiOjE1NTMwMDQxNTkxNTEsImVtbCI6IjYyMjM3NmY4LTAwMDAtMjIyMi1kN2Y5LTA3MGZhOTU2ZTk2M0Bhbm9ueW1vdXMuaW52YWxpZCIsImF1dGgiOiJINHNJQUFBQUFBQUFBSXVPQlFBcHUwd05BZ0FBQUE9PSIsImlzcyI6IlN5bmVyaXNlIiwiYnBpIjo0OCwiY2xJZCI6NDMzMjMwMjg4LCJleHAiOjE1NTMwMDcxNTksImFwayI6IjVBRUFBM0Q1LUUxNDctQzdFQi1ENTlFLUJDRjUwMTA5QTNEMSJ9.QOmSqrneR4mJFv4JdxTYsw_wGcDawDsVQuB-GVTcPPwijiP7lQ_Jzqq2Mypg1BS6WFlfGB8fzqCY9iMF_TdtjmoB4xBrY95ylU8L9qto-9Cw5x5TURkfxq31eryiHe2IteRAEtoVzYg2_s9QhlH6ANVcFOVp8dMno0V9bfMYfeSQa3FkjEbxFsseHkMOiADmp9-tOGtLXO942Ir-2W_Hz3Utlpt4erz0dVJBw8a-mFavPA8EEDWR7ACJNocrVHFkS3wFISh3LqLn6KkXiowaynKlJOEHGctuahzKmF3ZOJ1BvGgKohxF9OXvQs9IdmCfWhYsLr5Q2p04TJJ-MyvTipuggKVioh8mHmOFdfnN-Zused6tXzhZtKPUWTmM8cBKoAOBHExxcMQ8SVSjxnw_7_eLKm7S2wNpu0V-tiPZPCH4wYZXtWBYjmfy0V9ydjXnNunXfgxKixLeFNnONUXxEuqPLvM_xAuonQBXVN4nYrgJv8p8U6_ZlGMPjJq1szfcuBZnzI34LSEWx_nSof0XC5Czm8iG_ihG8naivNWS8h-Q-qKMP_3PPFsLSH4Egh03pH93EJUuNAeSO4RGfUX1wzMvrv1nBC1SM660uFMbq-wkplFBbKnHKMYe-qRs1-lZPG5PwPWJJdpGqOUzbnoMOJYmiq06OHHVQyJSkcEHLCk"
}

Authenticate as Profile (conditional)

Obtain a new JWT token for a Profile.

  • If the account does not exist, an account is not created.

  • If any additional conditions are required for logging in, the response is HTTP200 and lists the conditions.

  • Note that using this endpoint requires authenticating as an anonymous Profile first.

  • This method does not require a Synerise authorization token.

Authorizations:
Request Body schema: application/json
apiKey
required
string

Profile (formerly "Client") API key

identityProvider
required
string
Enum: "SYNERISE" "FACEBOOK" "OAUTH" "APPLE" "GOOGLE" "UNKNOWN"

The identity provider.

identityProviderToken
string

Third-party authentication token used to authenticate with the Identity Provider. Required if identityProvider is different than SYNERISE.

email
string

Profile email. Required if identityProvider is SYNERISE and email is the unique identifier (default setting).

customId
any

Profile customId. Required if identityProvider is SYNERISE and customId is the unique identifier (see https://hub.synerise.com/docs/settings/configuration/non-unique-emails/).

password
string

Profile password. Required if identityProvider is SYNERISE.

uuid
string

Profile UUID. Required if identityProvider is SYNERISE.

deviceId
string

Unique Android or iOS device ID

object

This object contains the marketing agreements of the Profile.

You can also pass the values as strings ("true";"True"/"false";"False") or integers (1 for true and 0 for false).

object

This object contains custom attributes that can have any name (except for reserved attributes, see warning below) and data type, as required by your integration.

The attribute names can't include any characters that match the pattern (ECMA flavor): /[\r\n\u2028\u2029\u00AD\u0000\uFE00-\uFE0F]/

String values:

  • can't include variation selectors ([\uFE00-\uFE0F]), unless there are other characters in the string.
  • can't include the "null" control character (\u0000)

If you want to send a date/time attribute for use in analytics, take the following into account:

  • The date/time should be formatted according to ISO 8601.
  • The time zone of the workspace affects dates/times in the attributes that DON'T have a defined timezone. Example:
    • 2023-10-09T12:00:00 doesn't have a timezone indicator and will be considered as a time in the workspace's time zone.
    • 2023-10-09T12:00:00+02:00 has a timezone indicator (+02:00), so the timezone of the workspace doesn't affect it.
    • 2023-10-09T12:00:00Z is a time in the UTC time zone (denoted by the Z at the end), so the timezone of the workspace doesn't affect it.

WARNING: Some attributes are reserved and cannot be sent. If you send them, they are ignored.

Click to expand the list of reserved attributes email
clientId
phone
customId
uuid
firstName
lastName
displayName
company
address
city
province
zipCode
countryCode
birthDate
sex
avatarUrl
anonymous
agreements
tags
businessProfileId
time
ip
source
newsletter_agreement
custom_identify
firstname
lastname
created
updated
last_activity_date
birthdate
external_avatar_url
displayname
receive_smses
receive_push_messages
receive_webpush_messages
receive_btooth_messages
receive_rfid_messages
receive_wifi_messages
confirmation_hash
ownerId
zipCode
anonymous_type
country_id
geo_loc_city
geo_loc_country
geo_loc_as
geo_loc_country_code
geo_loc_isp
geo_loc_lat
geo_loc_lon
geo_loc_org
geo_loc_query
geo_loc_region
geo_loc_region_name
geo_loc_status
geo_loc_timezone
geo_loc_zip
club_card_id
type
confirmed
facebookId
status
tags
Array of strings

Tags can be used to group profiles.

Tag names (strings):

  • can't include variation selectors ([\uFE00-\uFE0F]), unless there are other characters in the string.
  • can't include the "null" control character (\u0000)

Responses

Request samples

Content type
application/json
{
  • "apiKey": "string",
  • "identityProvider": "SYNERISE",
  • "identityProviderToken": "string",
  • "email": "string",
  • "customId": null,
  • "password": "string",
  • "uuid": "string",
  • "deviceId": "string",
  • "agreements": {
    },
  • "attributes": {
    },
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "conditions": [
    ],
  • "status": "SUCCESS",
  • "token": "string",
  • "expiration": 1649283173,
  • "created": 1649277173668,
  • "origin": "SYNERISE",
  • "customId": "card123",
  • "realm": "client"
}

Authenticate anonymously

Obtain a new JWT for an anonymous Profile. The token can be used and refreshed in the same way as tokens of registered Profiles.

  • This method does not require a Synerise authorization token.
Request Body schema: application/json
apiKey
required
string

Profile (formerly "Client") API key

uuid
required
string

UUID of the Profile. It is a unique identifier.

The value can't include any characters that match the pattern (ECMA flavor): /([\uD800-\uDBFF][\uDC00-\uDFFF])|([\r\n\u2028\u2029\u00AD]|[\uFE00-\uFE0F]|[\u0000])/

deviceId
string

Unique iOS or Android device identifier.

Responses

Request samples

Content type
application/json
{
  • "apiKey": "string",
  • "uuid": "07243772-008a-42e1-ba37-c3807cebde8f",
  • "deviceId": "string"
}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJSUzUxMiJ9.eyJzdinvalidwYmZkM2FkNDg2ZjQ3ZGRiMjE5MSIsImF1ZCI6IkFQSSIsInJsbSI6ImFub255bW91c19jbGllbnQiLCJjdGQiOjE1NTMwMDQxNTkxNTEsImVtbCI6IjYyMjM3NmY4LTAwMDAtMjIyMi1kN2Y5LTA3MGZhOTU2ZTk2M0Bhbm9ueW1vdXMuaW52YWxpZCIsImF1dGgiOiJINHNJQUFBQUFBQUFBSXVPQlFBcHUwd05BZ0FBQUE9PSIsImlzcyI6IlN5bmVyaXNlIiwiYnBpIjo0OCwiY2xJZCI6NDMzMjMwMjg4LCJleHAiOjE1NTMwMDcxNTksImFwayI6IjVBRUFBM0Q1LUUxNDctQzdFQi1ENTlFLUJDRjUwMTA5QTNEMSJ9.QOmSqrneR4mJFv4JdxTYsw_wGcDawDsVQuB-GVTcPPwijiP7lQ_Jzqq2Mypg1BS6WFlfGB8fzqCY9iMF_TdtjmoB4xBrY95ylU8L9qto-9Cw5x5TURkfxq31eryiHe2IteRAEtoVzYg2_s9QhlH6ANVcFOVp8dMno0V9bfMYfeSQa3FkjEbxFsseHkMOiADmp9-tOGtLXO942Ir-2W_Hz3Utlpt4erz0dVJBw8a-mFavPA8EEDWR7ACJNocrVHFkS3wFISh3LqLn6KkXiowaynKlJOEHGctuahzKmF3ZOJ1BvGgKohxF9OXvQs9IdmCfWhYsLr5Q2p04TJJ-MyvTipuggKVioh8mHmOFdfnN-Zused6tXzhZtKPUWTmM8cBKoAOBHExxcMQ8SVSjxnw_7_eLKm7S2wNpu0V-tiPZPCH4wYZXtWBYjmfy0V9ydjXnNunXfgxKixLeFNnONUXxEuqPLvM_xAuonQBXVN4nYrgJv8p8U6_ZlGMPjJq1szfcuBZnzI34LSEWx_nSof0XC5Czm8iG_ihG8naivNWS8h-Q-qKMP_3PPFsLSH4Egh03pH93EJUuNAeSO4RGfUX1wzMvrv1nBC1SM660uFMbq-wkplFBbKnHKMYe-qRs1-lZPG5PwPWJJdpGqOUzbnoMOJYmiq06OHHVQyJSkcEHLCk"
}

Screen views

Screen view campaigns

Generate screen view from feed

When this method is called, the Synerise backend finds all screen view campaigns applicable to the JWT context and returns the screen view with the highest priority (1). Inserts are processed. If an insert can't be processed, the returned data is empty.

IMPORTANT: When the request's context is a Workspace or Synerise User JWT, only screen views with the audience set to ALL ("Everyone" in the Synerise Web Application) can be generated.

If the feed doesn't contain any screen views whose audience matches the JWT context of the request, the response is error 404.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User, Profile (formerly client), Anonymous profile (formerly client)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
feedSlug
required
string

Slug of the screen view feed

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v3/screen-views/%7BfeedSlug%7D/generate 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "19686d84-b10d-4f90-b18e-84fd3fa038fd",
  • "priority": 99,
  • "name": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "audience": {
    },
  • "data": {
    },
  • "path": "/v2/screen-views/f9215cb9-4a7e-410b-88cb-8bc40363cc10"
}

Generate screen view from feed

When this method is called, the Synerise backend finds all screen view campaigns applicable to the JWT context and returns the screen view with the highest priority (1). Inserts are processed. If an insert can't be processed, the returned data is empty.

IMPORTANT: When the request's context is a Workspace or Synerise User JWT, only screen views with the audience set to ALL ("Everyone" in the Synerise Web Application) can be generated.

If the feed doesn't contain any screen views whose audience matches the JWT context of the request, the response is error 404.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User, Profile (formerly client), Anonymous profile (formerly client)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
feedSlug
required
string

Slug of the screen view feed

Request Body schema: application/json
string or number

If you are generating the resource with a context that doesn't have the data for inserts in the resource (for example, a document has a {% customer param %} insert, but you're authenticated with a workspace JWT, so the customer context can't be extracted from the JWT), you can include the parameters in the request body. If an insert can't be processed, the returned content is empty.

Usage example: if the {% customer firstName %} insert is used in a document, you can pass its value by sending "customer.firstName": "Joe"

Because inserts are always encapsulated with quotation marks, inserts that return a number or a boolean value return it as a string.

Responses

Request samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "19686d84-b10d-4f90-b18e-84fd3fa038fd",
  • "priority": 99,
  • "name": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "audience": {
    },
  • "data": {
    },
  • "path": "/v2/screen-views/f9215cb9-4a7e-410b-88cb-8bc40363cc10"
}

Create screen view

Create a screen view.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
priority
required
integer
Default: 99

Priority determines which screen view to show to a customer if their profile matches the conditions of more than one screen view. 1 is the highest priority.

name
string

Name of the screen view

directoryId
required
string <uuid>

UUID of a directory. Directories can be used to organize documents and screen views for display in the Synerise Web Application.

  • If you want to organize documents for screen view campaigns, use document groups instead.
  • If you want to organize screen views for display, use screen view feeds instead.
required
object (With document groups)

Content of the screen view

required
object

The profiles (clients) which have access to this resource

object

Configuration of the schedule

feedId
required
string <uuid>

UUID of the feed where this screen view is assigned.

Responses

Request samples

Content type
application/json
{
  • "priority": 99,
  • "name": "string",
  • "directoryId": "786c2ec1-fb9a-4593-b705-005b34c18c18",
  • "content": {
    },
  • "audience": {
    },
  • "schedule": {
    },
  • "feedId": "30c3a808-1315-453b-94cf-0ccb129b558b"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "description": "string",
  • "status": "DRAFT",
  • "priority": 99,
  • "scheduled": true,
  • "author": {
    },
  • "content": {
    },
  • "audience": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "directory": {
    },
  • "feed": {
    }
}

Initialize screen view

Create a screen view. It is created as a blank, without any conditions.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
name
string

If no name is provided, defaults to "Unnamed document" or Screen View Campaign" (depending on what you are initializing).

directory
string <uuid>

If no directory is provided, the default directory is used.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "directory": "5277859d-f92c-478c-acab-7680a97fea68"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "description": "string",
  • "status": "DRAFT",
  • "priority": 99,
  • "scheduled": true,
  • "author": {
    },
  • "content": {
    },
  • "audience": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "directory": {
    },
  • "feed": {
    }
}

Add content to screen view

Add content to a screen view. This overwrites any existing content.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Request Body schema: application/json
required
object

JSON structure of the screen view. By default, a newly created screen view has the following json value:

"collection": "{% screenviewcollection %}"

The {% screenviewcollection %} insert is used to pick and display the documents from the documents in documents or groups.

If this insert is not used, you must manually insert each document with {% document slug%}.

documents
required
Array of strings

An array of documents. If groups is used, this array must be empty.

groups
required
Array of strings <uuid>

An array of document groups, If documents is used, this array must be empty.

groupsOrder
boolean
Default: false

By default, group are ordered for display by their priority. When this field is set to true, they are displayed according to their order in the groups array instead.

Responses

Request samples

Content type
application/json
{
  • "json": {
    },
  • "documents": [
    ],
  • "groups": [
    ],
  • "groupsOrder": false
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Add audience to screen view

Define the audience for a screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Request Body schema: application/json
targetType
required
string
Enum: "SEGMENT" "QUERY" "ALL"

The method of defining the audience:

  • SEGMENT sets the audience to segmentations whose UUIDs are provided in segments
  • QUERY sets the audience to an analytics query provided in query
  • ALL sets the audience to all profiles in the database
segments
Array of strings

An array of segmentation IDs. Used with targetType: SEGMENT

query
string

Stringified analysis object for the segmentation analytics engine. Used with targetType: QUERY. Refer to the Analytics API Reference.

Responses

Request samples

Content type
application/json
{
  • "targetType": "SEGMENT",
  • "segments": [
    ],
  • "query": "{\"analysis\":{\"title\":\"Unnamed segmentation\",\"description\":\"\",\"unique\":true,\"segments\":[{\"title\":\"Segmentation A\",\"description\":\"\",\"filter\":{\"matching\":true,\"expressions\":[{\"_id\":\"a9b76c8e-34bd-4ac3-be8f-f37041d126bd\",\"name\":\"\",\"type\":\"FUNNEL\",\"matching\":true,\"funnel\":{\"_id\":\"5c759d73-49c6-409f-96a3-b569dff8f8ff\",\"title\":\"Unnamed\",\"completedWithin\":null,\"dateFilter\":{\"type\":\"RELATIVE\",\"offset\":{\"type\":\"DAYS\",\"value\":0},\"duration\":{\"type\":\"DAYS\",\"value\":30}},\"steps\":[{\"_id\":\"78b97ae0-1bc5-45fb-82a4-4f1280cfbdff\",\"title\":\"\",\"action\":{\"id\":944,\"name\":\"page.visit\"},\"eventName\":\"page.visit\",\"expressions\":[]}],\"exact\":false}}]}}]}}"
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Update screen view priority

Update priority in a screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Request Body schema: application/json
integer
Default: 99

Priority determines which screen view to show to a customer if their profile matches the conditions of more than one screen view. 1 is the highest priority.

Responses

Request samples

Content type
application/json
99

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Rename screen view

Update the name of a screen view. You can update the names of active screen views.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Request Body schema: application/json
string (update screenview name)

New name for the screen view

Responses

Request samples

Content type
application/json
"string"

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Preview screen view with a profile context

This endpoint can be used to preview a generated document as a Workspace or Synerise User. To generate the output as a profile (client), use one of the following methods:

When this method is called, the Synerise backend finds all screen view campaigns in the requested feed which are applicable to the profile and returns the screen view with the highest priority (1). Inserts are processed. If an insert can't be processed, the returned data is empty.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
feedSlug
required
string

Slug of the screen view feed

identifierType
required
string
Enum: "id" "uuid" "email" "custom_identify"

Type of the profile identifier. The value is sent in identifierValue in the request body.

Request Body schema: application/json
identifierValue
required
string

Value of the selected identifier. Note that IDs must also be sent as strings.

object

Additional parameters

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "params": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "19686d84-b10d-4f90-b18e-84fd3fa038fd",
  • "priority": 99,
  • "name": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "audience": {
    },
  • "data": {
    },
  • "path": "/v2/screen-views/f9215cb9-4a7e-410b-88cb-8bc40363cc10"
}

List screen view feeds

Returns a list of screen view feeds.


  • API consumers who can use this method: Synerise User, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v2/screen-views/feeds 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Create screen view feed

Create a new screen view feed.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
slug
required
string

Unique slug of the screen view feed

name
required
string

Name of the screen view feed

Responses

Request samples

Content type
application/json
{
  • "slug": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "slug": "string",
  • "name": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "default": true
}

List screen views

Returns a paginated list of screen views.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
query Parameters
page
number <int32> >= 1
Default: 1
limit
number <int32>
Default: 25

Limit of items per page

search
string

A string to search for in resource names

directoryId
string <uuid>

UUID of the directory for filtering the results

status
string
Enum: "DRAFT" "ACTIVE" "SCHEDULED" "PAUSED" "FINISHED"

Filter by status

feedId
string <uuid>

UUID of the screen view feed for filtering the results

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/schema-service/v2/screen-views?page=SOME_NUMBER_VALUE&limit=SOME_NUMBER_VALUE&search=SOME_STRING_VALUE&directoryId=SOME_STRING_VALUE&status=SOME_STRING_VALUE&feedId=SOME_STRING_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": [
    ]
}

Get screen view

Retrieve the details of a screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "description": "string",
  • "status": "DRAFT",
  • "priority": 99,
  • "scheduled": true,
  • "author": {
    },
  • "content": {
    },
  • "audience": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "directory": {
    },
  • "feed": {
    }
}

Delete screen view

Delete a screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Copy screen view

Copy a screen view. The copy receives the DRAFT status, regardless of the status of the original screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/copy 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "status": "DRAFT",
  • "hash": "bb6639b2-a98e-49d9-804f-ed6c0e2a0d2f:2019-12-05T08:22:10.094",
  • "parentVersion": "string",
  • "authorId": "string",
  • "businessProfileId": 0,
  • "priority": 99,
  • "name": "string",
  • "description": "string",
  • "isActive": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z"
}

Get predecessors for screen view

Retrieve information about documents or screen views that refer to the requested screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/predecessors 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Get successors for screen view

Retrieve information about documents referenced from the requested screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/successors 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

List screen view directories

Returns a list of screen view directories.


  • API consumers who can use this method: Synerise User, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v2/screen-views/directory 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Add screen view directory

Create a directory for screen views.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
name
required
string

Name of the directory

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "objectType": "EXPRESSION",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "isDefault": true
}

Rename screen view directory

Update the name of a screen view directory.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
directoryId
required
string <uuid>

UUID of the directory

Request Body schema: application/json
name
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "objectType": "EXPRESSION",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "isDefault": true
}

Delete screen view directory

Delete a screen view directory. The contents are moved into the default directory.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
directoryId
required
string <uuid>

UUID of the directory

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/schema-service/v2/screen-views/directory/%7BdirectoryId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "objectType": "EXPRESSION",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "isDefault": true
}

Assign screen view to directory

Assign a screen view to a directory. A screen view can only belong to one directory and using this endpoint overwrites the current assignment.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

directoryId
required
string <uuid>

UUID of the directory

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/directory/%7BdirectoryId%7D/attach 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "docId": "b394169a-e7cd-41ad-9e47-a6d4a11d664b",
  • "name": "string",
  • "status": "DRAFT",
  • "authorId": 0,
  • "directoryId": "786c2ec1-fb9a-4593-b705-005b34c18c18",
  • "scheduled": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z"
}

Assign screen view to feed

Assign a screen view to a feed.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Request Body schema: application/json
string <uuid>

UUID of the feed to which you want to assign the screen view

Responses

Request samples

Content type
application/json
"497f6eca-6276-4993-bfeb-53cbbbba6f08"

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Rename screen view feed

Update the name of a screen view feed.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
feedId
required
string <uuid>

UUID of a screen view feed

Request Body schema: application/json
name
required
string

New name of the feed

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "businessProfileId": 0,
  • "name": "string",
  • "objectType": "EXPRESSION",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "isDefault": true
}

Delete screen view feed

Delete a screen view feed. The screen views currently in this feed are moved to the default feed.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
feedId
required
string <uuid>

UUID of a screen view feed

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/schema-service/v2/screen-views/feeds/%7BfeedId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "slug": "string",
  • "name": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "default": true
}

Schedule object

Add a schedule to a document or screen view.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
externalId
string <uuid>

UUID of the screen view or document that the schedule applies to

type
string
Enum: "SCREENVIEW" "DOCUMENT"

Type of the scheduled object

object

Configuration of the schedule

Responses

Request samples

Content type
application/json
{
  • "externalId": "3200d382-adfe-4314-ab30-798cdd0fcdb5",
  • "type": "SCREENVIEW",
  • "schedule": {
    }
}

Response samples

Content type
application/json
{
  • "active": true,
  • "externalId": "3200d382-adfe-4314-ab30-798cdd0fcdb5",
  • "type": "SCREENVIEW",
  • "finished": true,
  • "schedule": {
    }
}

Get schedule the schedule of an object

Get schedule object.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
objectId
required
string <uuid>

Screen view or document ID

objectType
required
string
Enum: "SCREENVIEW" "DOCUMENT"

Object type

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/scheduler/entry/%7BobjectType%7D/%7BobjectId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "active": true,
  • "externalId": "3200d382-adfe-4314-ab30-798cdd0fcdb5",
  • "type": "SCREENVIEW",
  • "finished": true,
  • "schedule": {
    }
}

Finish screen view

Finish a screen view. A finished document is no longer displayed.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/finish 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Resume screen view

Resume a screen view that was paused.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/resume 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Activate screen view

Activate a screen view. It can be displayed to customers.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/activate 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Pause screen view

Pause a screen view. Until resumed, it can't be displayed to customers.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/pause 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Recommendations

Personalized item recommendations from the AI engine

Personalized recommendations

Retrieve item recommendations for a profile.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_PERSONALIZED_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Recommendations will be generated for the provided profile UUID.

query Parameters
minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

excludePurchasedItems
boolean
Default: false

When true, the recommendation results will include only items that the profile hasn't purchased before.
IMPORTANT: Only the last 250 purchased items are taken into account. Items further back in the purchase history may be included in the recommendation.

excludePurchasedItemsSinceDays
integer

Limits the application of the excludePurchasedItems filter to a specified number of days.

filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

elastic:filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation. The Elastic filter may be dropped if not enough products meet the required criteria.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

itemId
string

Item identifier, equal to itemId from the item feed. It can be used to define the item context of the query.

itemCatalogId
string
Default: "default"

Only items from this item feed will be recommended.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Personalized recommendations

Retrieve item recommendations for a profile.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_PERSONALIZED_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Recommendations will be generated for the provided profile UUID.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Section recommendations

Retrieve item recommendations grouped by attribute.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_SECTION_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Information will be shown for the provided profile UUID.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

metadataCatalogId
string

ID of the catalog which stores attribute metadata

required
Array of objects[ items ]

Slots data

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "metadataCatalogId": "string",
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Attribute recommendations

Retrieve attribute recommendations.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_ATTRIBUTE_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Information will be shown for the provided profile UUID.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

metadataCatalogId
string

ID of the catalog which stores attribute metadata

required
Array of objects[ items ]

Slots data

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "metadataCatalogId": "string",
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Last viewed recommendations

Retrieve recent item recommendations seen by a profile.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_LAST_VIEWED_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Information will be shown for the provided profile UUID.

query Parameters
campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Last viewed recommendations

Retrieve recent item recommendations seen by a profile.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_LAST_VIEWED_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Information will be shown for the provided profile UUID.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Recent interactions recommendations

Retrieve recent interactions recommendations for a profile.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_RECENT_INTERACTIONS_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Information will be shown for the provided profile UUID.

aggregateUUID
required
string

Information will be shown for the provided aggregate UUID.

query Parameters
campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Recent interactions recommendations

Retrieve recent interactions recommendations for a profile.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_RECENT_INTERACTIONS_RECOMMENDATIONS_READ

Authorizations:
path Parameters
clientUuid
required
string

Information will be shown for the provided profile UUID.

aggregateUUID
required
string

Information will be shown for the provided aggregate UUID.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Scoring by metric

Returns items with the highest score of a chosen metric. A list of available metrics can be checked by using this endpoint.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_METRICS_RECOMMENDATIONS_READ

Authorizations:
query Parameters
sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

itemId
string

Item identifier, equal to itemId from the item feed. It can be used to define the item context of the query.

excludePurchasedItems
boolean
Default: false

When true, the recommendation results will include only items that the profile hasn't purchased before.
IMPORTANT: Only the last 250 purchased items are taken into account. Items further back in the purchase history may be included in the recommendation.

excludePurchasedItemsSinceDays
integer

Limits the application of the excludePurchasedItems filter to a specified number of days.

filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

elastic:filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation. The Elastic filter may be dropped if not enough products meet the required criteria.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

itemCatalogId
string
Default: "default"

Only items from this item feed will be recommended.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Scoring by metric

Returns items with the highest score of a chosen metric. A list of available metrics can be checked by using this endpoint.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_METRICS_RECOMMENDATIONS_READ

Authorizations:
Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
required
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
required
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Complementary items for a cart

Show recommendations based on the contents of a cart.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_COMPLEMENTARY_RECOMMENDATIONS_READ

Authorizations:
query Parameters
clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

excludePurchasedItems
boolean
Default: false

When true, the recommendation results will include only items that the profile hasn't purchased before.
IMPORTANT: Only the last 250 purchased items are taken into account. Items further back in the purchase history may be included in the recommendation.

excludePurchasedItemsSinceDays
integer

Limits the application of the excludePurchasedItems filter to a specified number of days.

filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

elastic:filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation. The Elastic filter may be dropped if not enough products meet the required criteria.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

itemId
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

itemCatalogId
string
Default: "default"

Only items from this item feed will be recommended.

boostMetric
string

ID of the metric to boost the results by. Metric scores will be combined with recommendation scores, favoring the best-performing results. The list of available metrics can be checked by using this endpoint.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Complementary items for a cart

Show recommendations based on the contents of a cart.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_COMPLEMENTARY_RECOMMENDATIONS_READ

Authorizations:
Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Complementary items

Returns items complementary to the given items.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_COMPLEMENTARY_PRODUCTS_RECOMMENDATIONS_READ

Authorizations:
path Parameters
itemId
required
string

Item identifier, equal to itemId from the item feed.

query Parameters
minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

excludePurchasedItems
boolean
Default: false

When true, the recommendation results will include only items that the profile hasn't purchased before.
IMPORTANT: Only the last 250 purchased items are taken into account. Items further back in the purchase history may be included in the recommendation.

excludePurchasedItemsSinceDays
integer

Limits the application of the excludePurchasedItems filter to a specified number of days.

filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

elastic:filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation. The Elastic filter may be dropped if not enough products meet the required criteria.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

itemCatalogId
string
Default: "default"

Only items from this item feed will be recommended.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Complementary items

Returns items complementary to the given items.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_COMPLEMENTARY_PRODUCTS_RECOMMENDATIONS_READ

Authorizations:
path Parameters
itemId
required
string

Item identifier, equal to itemId from the item feed.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Similar items

Returns items similar to a given item.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_SIMILAR_RECOMMENDATIONS_READ

Authorizations:
path Parameters
itemId
required
string

Item identifier, equal to itemId from the item feed.

query Parameters
minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

excludePurchasedItems
boolean
Default: false

When true, the recommendation results will include only items that the profile hasn't purchased before.
IMPORTANT: Only the last 250 purchased items are taken into account. Items further back in the purchase history may be included in the recommendation.

excludePurchasedItemsSinceDays
integer

Limits the application of the excludePurchasedItems filter to a specified number of days.

filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

elastic:filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation. The Elastic filter may be dropped if not enough products meet the required criteria.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

itemCatalogId
string
Default: "default"

Only items from this item feed will be recommended.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Similar items

Returns items similar to a given item.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_SIMILAR_RECOMMENDATIONS_READ

Authorizations:
path Parameters
itemId
required
string

Item identifier, equal to itemId from the item feed.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Visually similar

Returns items visually similar to the given items.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_VISUAL_RECOMMENDATIONS_READ

Authorizations:
path Parameters
itemId
required
string

Item identifier, equal to itemId from the item feed.

query Parameters
minNumItems
integer >= 1
Default: 1

The minimal number of returned item recommendations. If the service is not able to return at least this many recommendations, it will return an error.

maxNumItems
integer <= 100
Default: 5

The maximal number of returned item recommendations.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

excludePurchasedItems
boolean
Default: false

When true, the recommendation results will include only items that the profile hasn't purchased before.
IMPORTANT: Only the last 250 purchased items are taken into account. Items further back in the purchase history may be included in the recommendation.

excludePurchasedItemsSinceDays
integer

Limits the application of the excludePurchasedItems filter to a specified number of days.

filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

elastic:filters
string

This string defines the criteria that an item must meet in order to be considered for recommendation. The Elastic filter may be dropped if not enough products meet the required criteria.
For information on building filters, see "Items Query Language (IQL)" in the Developer Guide.

itemCatalogId
string
Default: "default"

Only items from this item feed will be recommended.

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

object

Distinct filters allow you to specify how many recommended items can have the same value of specified attributes.

includeContextItems
boolean

The recommendation results will include context items from the request.

Responses

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Visually similar

Returns items visually similar to the given items.

Note: The definition of an item encompasses products, but also articles, images, videos, and any other entities stored in catalogs.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_VISUAL_RECOMMENDATIONS_READ

Authorizations:
path Parameters
itemId
required
string

Item identifier, equal to itemId from the item feed.

Request Body schema: application/json

Definition of the requested recommendation

campaignId
string
Default: "defaultCampaign"

The campaignId which will be passed as utm_campaign in a link to the recommended item.

campaignName
string

The campaign name which will be included in the recommendation.generated event.

catalogId
string
Default: "default"

Only items from this item feed will be recommended.

clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

contextItemIds
Array of strings

Item identifiers, equal to itemId from the item feed. They can be used to define the item context of the query.

includeContextItems
boolean
Default: false

The recommendation results will include context items from the request.

object

Filter configuration

displayAttributes
string

Attributes to be returned

object

A/B test context.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

sortMetric
string

ID of the metric to sort the results by. The list of available metrics can be checked by using this endpoint.

object

Result boosting parameters

Array of objects[ items ]

Boosting strategies

required
Array of objects non-empty [ items ]

Slot definitions. To apply default values and fetch all the results as a single slot, send slots as an array with one empty object.

Responses

Request samples

Content type
application/json
{
  • "campaignId": "defaultCampaign",
  • "campaignName": "string",
  • "catalogId": "default",
  • "clientUUID": "string",
  • "contextItemIds": [
    ],
  • "includeContextItems": false,
  • "filterRules": {
    },
  • "displayAttributes": "string",
  • "abTestContext": {
    },
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "sortMetric": "string",
  • "boostingParameters": {
    },
  • "boostingStrategies": [
    ],
  • "slots": [
    ]
}

Response samples

Content type
application/json
{
  • "extras": {
    },
  • "data": [
    ]
}

Get recommendations by campaign

This method allows you to retrieve recommendations based on a campaignID or a slug and a context. The context is built based on:

  • campaign identifier (required)
  • profile UUID
  • items (for example, items currently in the basket)
  • item exclusions

This is the recommended and simplest way to fetch recommendations.

Before you use this method, you must to create a recommendations campaign in Synerise. All the recommendation filters and parameters will be handled for you automatically according to a campaign's configuration.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: API_MATERIALIZER_V2_RECOMMEND_CAMPAIGNS_RECOMMENDATIONS_READ

Authorizations:
path Parameters
campaignIdentifier
required
string

Recommendation campaign identifier - a campaignID or a slug

query Parameters
clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

itemId
string

Item ID or item IDs for the recommendation context. This parameter is:

  • required for similar/complementary items campaigns.

  • optional for personalized campaigns.

This parameter can be passed in all recommendations. In recommendations which don't use the context item as part of the recommendation model, the context item can only be used to create filters.

You can repeat this parameter in order to pass a number of context-creating items, for example, in a cart recommendation campaign.

This overrides the itemsSource settings of the campaign definition.

Alternatively, you can pass the itemsSourceType and itemsSourceId parameters to use context items from source (aggregate or expression). These parameters can't be used at the same request with itemId.

itemsSourceType
string
Enum: "aggregate" "expression"

Item ID or item IDs source type for the recommendation context.

Must be used with itemSourceId. This overrides the itemsSource settings of the campaign definition.

In recommendations whose models doesn't use the item context, the attributes of those items can only be used in filters.

If the items' source type is 'aggregate', the aggregate result will be used as context items. If the items' source type is 'expression', the expression result will be used as context items.

The item ID source (aggregate or expression) should return a string or an array of strings. If it returns numerical values, the recommendations engine attempts to convert them into strings while processing the request.

Alternatively, you can pass the itemId parameter to define context items directly. Only one of these options is allowed at the same time.

itemsSourceId
string

Source of item IDs for the recommendation context. In recommendations whose models doesn't use the item context, the attributes of those items can only be used in filters.

Must be used with itemsSourceType.

If the items' source type is 'aggregate', this is the aggregate's ID. If the items' source type is 'expression', this is the expression's ID.

The item ID source (aggregate or expression) should return a string or an array of strings. If it returns numerical values, the recommendations engine attempts to convert them into strings while processing the request.

Alternatively, you can pass the itemId parameter to define context items directly. Only one of these options is allowed at the same time.

itemIdExcluded
string

IDs of items that will be excluded from the generated recommendations. For example, items already added to the basket.

additionalFilters
string
Example: additionalFilters=effectivePrice>300 AND effectivePrice<400

IMPORTANT:
  • The filtersJoiner attribute is REQUIRED when additionalFilters is included. If filtersJoiner is missing, the additional filters do not work.
  • Do NOT send multiple instances of this parameter.

Additional filters. These are merged with the campaign's own filters according to the logic in filtersJoiner.

This parameter must include all the additional filters as a single string, for example additionalFilters=effectivePrice>300 AND effectivePrice<400 (the spaces are required).

filtersJoiner
string
Enum: "AND" "OR" "REPLACE"

Defines the logic of merging additionalFilters with the campaign's existing filters.

  • REPLACE replaces the campaign's filters with your filters.
  • AND matches if both your filters and the campaign filters are met.
  • OR matches if at least one of the filters is met.
additionalElasticFilters
string
Example: additionalElasticFilters=effectivePrice>300 AND effectivePrice<400

IMPORTANT:
  • The elasticFiltersJoiner attribute is REQUIRED when additionalElasticFilters is included. If elasticFiltersJoiner is missing, the additional filters do not work.
  • Do NOT send multiple instances of this parameter.

Additional elastic filters. These are merged with the campaign's own elastic filters according to the logic in elasticFiltersJoiner.

This parameter must include all the additional filters as a single string, for example additionalElasticFilters=effectivePrice>300 AND effectivePrice<400 (the spaces are required).

elasticFiltersJoiner
string
Enum: "AND" "OR" "REPLACE"

Defines the logic of merging additionalElasticFilters with the campaign's existing elastic filters.

  • REPLACE replaces the campaign's filters with your filters.
  • AND matches if both your filters and the campaign filters are met.
  • OR matches if at least one of the filters is met.
displayAttribute
string

Item attribute whose value will be returned in the recommendation response. The parameter value will be merged with the configuration of the recommendation. This parameter can be passed multiple times.

includeContextItems
boolean

When true, the recommendation response will include context items metadata.

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/recommendations/v2/recommend/campaigns/%7BcampaignIdentifier%7D?clientUUID=SOME_STRING_VALUE&itemId=SOME_STRING_VALUE&itemsSourceType=SOME_STRING_VALUE&itemsSourceId=SOME_STRING_VALUE&itemIdExcluded=SOME_STRING_VALUE&additionalFilters=SOME_STRING_VALUE&filtersJoiner=SOME_STRING_VALUE&additionalElasticFilters=SOME_STRING_VALUE&elasticFiltersJoiner=SOME_STRING_VALUE&displayAttribute=SOME_STRING_VALUE&includeContextItems=SOME_BOOLEAN_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "extras": {
    }
}

Get recommendations by campaign

This method allows you to retrieve recommendations based on a campaignID or slug and a context. The context is built based on:

  • campaign ID or slug (one of those is required)
  • profile UUID
  • items (for example, items currently in the basket)
  • item exclusions

This is the recommended and simplest way to fetch recommendations.

Before you use this method, you must to create a recommendations campaign in Synerise. All the recommendation filters and parameters will be handled for you automatically according to a campaign's configuration.


  • API consumers who can use this method: AI API key (legacy), Web SDK tracker, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: API_MATERIALIZER_V2_RECOMMEND_CAMPAIGNS_RECOMMENDATIONS_READ

Authorizations:
Request Body schema: application/json
clientUUID
string

Profile UUID. This parameter is required for these recommendation types:

  • Personalized
  • Last seen
  • Recent interactions
  • Section
  • Attribute

This parameter can be passed in all recommendations. In recommendations which don't require the customer context, it can still be used to create filters.

campaignId
string

Campaign ID for establishing the context

slug
string

Slug for establishing the context

items
Array of strings

An array of item identifiers (itemId in the item feed) for the context. This could be, for example, the current basket, or the item that is currently being viewed.

This overrides the itemsSource settings of the campaign definition.

This parameter can be passed in all recommendations. In recommendations which don't use the context item as part of the recommendation model, the context item can only be used to create filters.

Alternatively, you can use the itemsSource object to get item IDs from an aggregate or expression. items and itemsSource can't be used at the same time.

object

Source of the Item ID or item IDs for the recommendation context.

This overrides the itemsSource settings of the campaign definition.

This parameter can be passed in all recommendations. In recommendations which don't use the context item as part of the recommendation model, the context item can only be used to create filters.

The item ID source (aggregate or expression) should return a string or an array of strings. If it returns numerical values, the recommendations engine attempts to convert them into strings while processing the request.

Alternatively, you can pass the itemId parameter to define context items directly. Only one of these options is allowed at the same time.

itemsExcluded
Array of strings >= 0 items

Items (identified by itemId in the item feed) that will be excluded from the generated recommendations. For example, items already added to the basket.

additionalFilters
string

IMPORTANT:
  • The filtersJoiner attribute is REQUIRED when additionalFilters is included. If filtersJoiner is missing, the additional filters do not work.
  • Do NOT send multiple instances of this parameter.

Additional filters. These are merged with the campaign's own filters according to the logic in filtersJoiner.

This parameter must include all the additional filters as a single string, for example additionalFilters=effectivePrice>300 AND effectivePrice<400 (the spaces are required).

filtersJoiner
string
Enum: "AND" "OR" "REPLACE"

Defines the logic of merging additionalFilters with the campaign's existing filters.

  • REPLACE replaces the campaign's filters with your filters.
  • AND matches if both your filters and the campaign filters are met.
  • OR matches if at least one of the filters is met.
additionalElasticFilters
string

IMPORTANT:
  • The elasticFiltersJoiner attribute is REQUIRED when additionalElasticFilters is included. If elasticFiltersJoiner is missing, the additional filters do not work.
  • Do NOT send multiple instances of this parameter.

Additional elastic filters. These are merged with the campaign's own elastic filters according to the logic in elasticFiltersJoiner.

This parameter must include all the additional filters as a single string, for example additionalElasticFilters=effectivePrice>300 AND effectivePrice<400 (the spaces are required).

elasticFiltersJoiner
string
Enum: "AND" "OR" "REPLACE"

Defines the logic of merging additionalElasticFilters with the campaign's existing elastic filters.

  • REPLACE replaces the campaign's filters with your filters.
  • AND matches if both your filters and the campaign filters are met.
  • OR matches if at least one of the filters is met.
displayAttributes
Array of strings >= 0 items

An array of item attributes which value will be returned in a recommendation response. The array will be merged together with the configuration of the recommendation.

includeContextItems
boolean

When true, the recommendation response will include context items metadata.

Responses

Request samples

Content type
application/json
{
  • "clientUUID": "string",
  • "campaignId": "string",
  • "slug": "string",
  • "items": [
    ],
  • "itemsSource": {
    },
  • "itemsExcluded": [
    ],
  • "additionalFilters": "effectivePrice>300 AND effectivePrice<400",
  • "filtersJoiner": "AND",
  • "additionalElasticFilters": "effectivePrice>300 AND effectivePrice<400",
  • "elasticFiltersJoiner": "AND",
  • "displayAttributes": [
    ],
  • "includeContextItems": true
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "extras": {
    }
}

Get recommendations by campaign and profile identifier

Before you use this method: you must create a recommendations campaign in Synerise. All the recommendation filters and parameters will be handled for you automatically according to a campaign's configuration.

The method allows you to retrieve recommendations based on a campaignID or a slug, profile's identifier name (the value of the identifier is provided in the request body), and a context. The context is built based on:

  • campaign identifier (required)
  • identifierName (required)
  • identifierValue (required)
  • items (for example, items currently in the basket)
  • item exclusions

  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: API_MATERIALIZER_V2_RECOMMEND_WITH_CUSTOM_ID_RECOMMENDATIONS_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
path Parameters
campaignIdentifier
required
string

Recommendation campaign identifier - a campaignID or a slug

identifierName
required
string
Enum: "id" "uuid" "email" "custom_identify"

The name of the profile identifier to use for the request. By default, the allowed identifier types are id, uuid, email, and custom_identify. This may be changed in the workspace configuration.

Request Body schema: application/json
identifierValue
required
string

Value of the identifier selected in the path attributes

items
Array of strings

An array of item identifiers (itemId in the item feed) for the context. This could be, for example, the current basket, or the item that is currently being viewed.

This overrides the itemsSource settings of the campaign definition.

This parameter can be passed in all recommendations. In recommendations which don't use the context item as part of the recommendation model, the context item can only be used to create filters.

Alternatively, you can use the itemsSource object to get item IDs from an aggregate or expression. items and itemsSource can't be used at the same time.

object

Source of the Item ID or item IDs for the recommendation context.

This overrides the itemsSource settings of the campaign definition.

This parameter can be passed in all recommendations. In recommendations which don't use the context item as part of the recommendation model, the context item can only be used to create filters.

The item ID source (aggregate or expression) should return a string or an array of strings. If it returns numerical values, the recommendations engine attempts to convert them into strings while processing the request.

Alternatively, you can pass the itemId parameter to define context items directly. Only one of these options is allowed at the same time.

itemsExcluded
Array of strings >= 0 items

Items (identified by itemId in the item feed) that will be excluded from the generated recommendations. For example, items already added to the basket.

additionalFilters
string

IMPORTANT:
  • The filtersJoiner attribute is REQUIRED when additionalFilters is included. If filtersJoiner is missing, the additional filters do not work.
  • Do NOT send multiple instances of this parameter.

Additional filters. These are merged with the campaign's own filters according to the logic in filtersJoiner.

This parameter must include all the additional filters as a single string, for example additionalFilters=effectivePrice>300 AND effectivePrice<400 (the spaces are required).

filtersJoiner
string
Enum: "AND" "OR" "REPLACE"

Defines the logic of merging additionalFilters with the campaign's existing filters.

  • REPLACE replaces the campaign's filters with your filters.
  • AND matches if both your filters and the campaign filters are met.
  • OR matches if at least one of the filters is met.
additionalElasticFilters
string

IMPORTANT:
  • The elasticFiltersJoiner attribute is REQUIRED when additionalElasticFilters is included. If elasticFiltersJoiner is missing, the additional filters do not work.
  • Do NOT send multiple instances of this parameter.

Additional elastic filters. These are merged with the campaign's own elastic filters according to the logic in elasticFiltersJoiner.

This parameter must include all the additional filters as a single string, for example additionalElasticFilters=effectivePrice>300 AND effectivePrice<400 (the spaces are required).

elasticFiltersJoiner
string
Enum: "AND" "OR" "REPLACE"

Defines the logic of merging additionalElasticFilters with the campaign's existing elastic filters.

  • REPLACE replaces the campaign's filters with your filters.
  • AND matches if both your filters and the campaign filters are met.
  • OR matches if at least one of the filters is met.
displayAttributes
Array of strings >= 0 items

An array of item attributes which value will be returned in a recommendation response. The array will be merged together with the configuration of the recommendation.

includeContextItems
boolean

When true, the recommendation response will include context items metadata.

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "items": [
    ],
  • "itemsSource": {
    },
  • "itemsExcluded": [
    ],
  • "additionalFilters": "effectivePrice>300 AND effectivePrice<400",
  • "filtersJoiner": "AND",
  • "additionalElasticFilters": "effectivePrice>300 AND effectivePrice<400",
  • "elasticFiltersJoiner": "AND",
  • "displayAttributes": [
    ],
  • "includeContextItems": true
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "extras": {
    }
}

Recommendation campaigns

AI-powered marketing campaigns

Get all recommendation campaigns

Fetch all recommendation campaigns.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_MANY_CAMPAIGN_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
query Parameters
page
integer
Default: 0

Page number

limit
integer
Default: 50

Maximum number of campaigns on a page

sortBy
string
Default: "createdAt"
Enum: "createdAt" "updatedAt" "startDate" "endDate" "state" "type"

Name of the field by which data will be sorted

ordering
string
Default: "desc"
Enum: "asc" "desc"

Sorting order

includeMeta
boolean
Default: false

If true, a meta JSON block with pagination data is included in the response body. If false, the pagination data is included in the response headers.

type
string

Filters the results by campaign type.

state
Array of strings
Items Enum: "draft" "active" "paused"

Shows only results with states matching this parameter. When this parameter is omitted, all campaigns are returned regardless of state.

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/recommendations/v2/campaigns?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE&sortBy=SOME_STRING_VALUE&ordering=SOME_STRING_VALUE&includeMeta=SOME_BOOLEAN_VALUE&type=SOME_STRING_VALUE&state=SOME_ARRAY_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": [
    ],
  • "extras": {
    }
}

Create a recommendation campaign

Create a new recommendation campaign.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_CAMPAIGN_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
Request Body schema: application/json

All the details of a campaign

One of
type
required
string
Value: "similar"

Campaign type

object

Parameters that apply to this campaign

title
required
string

Campaign title

slug
string

Unique identifier of the campaign. Can be used for fetching campaigns instead of the ID. Create meaningful, human-readable slugs for easier work with recommendation campaigns.

description
string

Campaign description

startDate
string

Start date for the campaign

endDate
string

End date for the campaign

state
string
Enum: "draft" "active" "paused" "deleted"

Campaign status

object

Filters that apply to this campaign. If the filters contain an attribute used in the default filters of the recommendation model (Settings > AI Configuration), that default filter is ignored.

itemsCatalogId
required
string

Only items from this catalog will be recommended.

required
Array of objects non-empty [ items ]

Recommendation slots. Must contain at least one slot with a non-empty name.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

Array of objects[ items ]

Recommendation boosting strategies

object

The source of item ID or IDs for the recommendation context. This parameter can be passed in all recommendations. In recommendations which don't use item context as part of the recommendation model, the context item can be used only to create filters.

The item ID source (aggregate or expression) should return a string or an array of strings. If it returns numerical values, the recommendations engine attempts to convert them into strings while processing the request.

Alternatively, you can pass the itemId or itemsSource parameter when making a request to generate a recommendation from this campaign. The parameter overrides the settings defined here.

Responses

Request samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "title": "string",
  • "slug": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    }
}

Response samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "campaignId": "string",
  • "title": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "createdAt": "string",
  • "updatedAt": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "additionalResponseAttributes": [
    ],
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    },
  • "abTest": {
    }
}

Get recommendation campaign details

Retrieve the details of a single campaign.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_SINGLE_CAMPAIGN_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
path Parameters
campaignId
required
string

ID of the campaign

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/recommendations/v2/campaigns/%7BcampaignId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "campaignId": "string",
  • "title": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "createdAt": "string",
  • "updatedAt": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "additionalResponseAttributes": [
    ],
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    },
  • "abTest": {
    }
}

Update a recommendation campaign

Update a recommendation campaign by changing the parameters or copying the definition from another campaign.

When you copy from another campaign:

  • the following campaign data is NOT updated:
    • title
    • state
    • start_date
    • end_date
    • campaignId
    • createdAt
  • modified_by_user_id changes to the user who performed the update

  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_CAMPAIGN_UPDATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
path Parameters
campaignId
required
string

ID of the campaign

Request Body schema: application/json

Definition of the updated campaign.

One of
One of
type
required
string
Value: "similar"

Campaign type

object

Parameters that apply to this campaign

campaignId
string

Campaign ID

title
required
string

Campaign title

description
string

Campaign description

startDate
required
string

Start date for the campaign

endDate
string

End date for the campaign

createdAt
string

Date when the campaign was created

updatedAt
string

Date when the campaign was last updated

state
required
string
Enum: "draft" "active" "paused" "deleted"

Campaign status

object

Filters that apply to this campaign. If the filters contain an attribute used in the default filters of the recommendation model (Settings > AI Configuration), that default filter is ignored.

itemsCatalogId
required
string

Only items from this catalog will be recommended.

additionalResponseAttributes
Array of strings

An array of addtional response attributes.

Array of objects non-empty [ items ]

Recommendation slots. Must contain at least one slot with a non-empty name.

keepSlotsOrder
boolean
Default: true
  • When true, the data array in the response is sorted according to slots. Within each slot, the items are sorted by their score (default) or metric (if selected). For example, if you have 3 slots of 2 items each, the first 2 items in data are from the first slot, the second 2 are from the second slot, and the last 2 are from the third slot.
  • When false, the data array in the response is sorted only according to score (default) or metric (if selected). Slots have no effect.

The additional extras.slots object always shows slots and items as if this setting was true.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

personalizeSlotsOrder
boolean
Default: false

Sort the slots by average personalized slot score. This parameter applies only to personalized and attribute recommendation campaigns.

If you want to set personalizeSlotsOrder to true, keepSlotsOrder must also be true.

Array of objects[ items ]

Recommendation boosting strategies

object

The source of item ID or IDs for the recommendation context. This parameter can be passed in all recommendations. In recommendations which don't use item context as part of the recommendation model, the context item can be used only to create filters.

The item ID source (aggregate or expression) should return a string or an array of strings. If it returns numerical values, the recommendations engine attempts to convert them into strings while processing the request.

Alternatively, you can pass the itemId or itemsSource parameter when making a request to generate a recommendation from this campaign. The parameter overrides the settings defined here.

object

Information whether campaign is part of an a/b test

Responses

Request samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "campaignId": "string",
  • "title": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "createdAt": "string",
  • "updatedAt": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "additionalResponseAttributes": [
    ],
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    },
  • "abTest": {
    }
}

Response samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "campaignId": "string",
  • "title": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "createdAt": "string",
  • "updatedAt": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "additionalResponseAttributes": [
    ],
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    },
  • "abTest": {
    }
}

Delete a recommendation campaign

Delete a recommendation campaign. This operation is irreversible.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_CAMPAIGN_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
path Parameters
campaignId
required
string

ID of the campaign

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/recommendations/v2/campaigns/%7BcampaignId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "campaignId": "string",
  • "title": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "createdAt": "string",
  • "updatedAt": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "additionalResponseAttributes": [
    ],
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    },
  • "abTest": {
    }
}

Change campaigns' states

Change the status of one or more campaigns.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_STATE_CAMPAIGN_UPDATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
Request Body schema: application/json

List of updated campaign IDs and new states.

state
required
string
Enum: "draft" "active" "paused" "deleted"

Campaign status

ids
required
Array of strings [ 1 .. 10 ] items

An array of campaign IDs.

Responses

Request samples

Content type
application/json
{
  • "state": "draft",
  • "ids": [
    ]
}

Response samples

Content type
application/json
[
  • "string"
]

Copy a recommendation campaign

Copy a campaign. The copied campaign's state will be draft and slug will be undefined.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_COPY_CAMPAIGN_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
path Parameters
campaignId
required
string

ID of the campaign

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/recommendations/v2/campaigns/%7BcampaignId%7D/copy 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
Example
{
  • "type": "similar",
  • "parameters": {
    },
  • "campaignId": "string",
  • "title": "string",
  • "description": "string",
  • "startDate": "string",
  • "endDate": "string",
  • "createdAt": "string",
  • "updatedAt": "string",
  • "state": "draft",
  • "filterRules": {
    },
  • "itemsCatalogId": "string",
  • "additionalResponseAttributes": [
    ],
  • "slots": [
    ],
  • "keepSlotsOrder": true,
  • "personalizeSlotsOrder": false,
  • "boostingStrategies": [
    ],
  • "itemsSource": {
    },
  • "abTest": {
    }
}

Get simplified recommendation campaigns

Fetch simplified recommendation campaign data.


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: RECOMMENDATIONS_V2_MANY_SIMPLIFIED_CAMPAIGN_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: CAMPAIGNS_RECOMMENDATIONS

Authorizations:
query Parameters
type
Array of strings

Filter by campaign type.

state
Array of strings
Items Enum: "draft" "active" "paused"

Filter by states.

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/recommendations/v2/campaigns/simplified?type=SOME_ARRAY_VALUE&state=SOME_ARRAY_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Templates

Templates used in campaigns

List templates

Returns all templates from a Workspace, with an option to filter by type.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_BACKEND_TEMPLATE_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
query Parameters
type
string
Enum: "SMS" "MOBILE_PUSH" "WEB_PUSH" "DYNAMIC_CONTENT" "LANDING_PAGE" "EMAIL" "SOCIAL_MEDIA" "IN_APP"

The type of templates to return

search
string

Searched phrase

limit
number
offset
number
approved
boolean
Default: false

When approval-service enabled it filters for approved templates

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/template-backend/template?type=SOME_STRING_VALUE&search=SOME_STRING_VALUE&limit=SOME_NUMBER_VALUE&offset=SOME_NUMBER_VALUE&approved=SOME_BOOLEAN_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Create template

Create a new template.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: application/json

Template to create

name
string or null

Name of the template

type
string or null
Enum: "SMS" "MOBILE_PUSH" "WEB_PUSH" "DYNAMIC_CONTENT" "LANDING_PAGE" "EMAIL" "SOCIAL_MEDIA" "IN_APP" null

Template type

subtype
string or null
Enum: "BANNER" "TOP_BAR" "BOTTOM_BAR" "MODAL" null

Template subtype. Currently accepted subtypes are

  • BANNER (can be used with mobile push)
  • TOP_BAR, BOTTOM_BAR, MODAL (can be used with in app notifications)
  • null.
contentType
string
Enum: "TEMPLATE" "BLOCK"
directory
required
string <uuid>

UUID of the directory where the template will be saved

content
required
string

Template content as a stringified, escaped object.

This includes HTML, JS, CSS, and other data, depending on the template type.

source
required
integer <int64>

Information about used editor. Currently accepted builder are

  • LACK_OF_INFORMATION = 0
  • BEE_FREE_EDITOR = 1
  • TRIO_CODE_EDITOR = 2
  • MAIL_EDITOR = 3
  • SMS_EDITOR = 4
  • WEB_PUSH_EDITOR = 5
  • MOBILE_SIMPLE_PUSH_EDITOR = 6
  • JSON_EDITOR = 7
  • MOBILE_BANNER_EDITOR = 8
  • MOBILE_WALKTHROUGH_EDITOR = 9
  • MOBILE_WELCOME_SCREEN_EDITOR = 10
  • MOBILE_FIRST_RUN_MESSAGE_EDITOR = 11
  • MOBILE_MANDATORY_UPGRADE_EDITOR = 12
  • FACEBOOK_POST_EDITOR = 13
  • IMPORT_FROM_ZIP = 14
  • IMPORT_FROM_URL = 15
  • GRAPES_EDITOR = 16
  • VISUAL_BUILDER = 17
  • LANDING_PAGE_CODE_EDITOR = 18
  • WEB_BEE_FREE_EDITOR = 19
  • MOBILE_SIMPLE_PUSH_CODE_EDITOR = 20
  • LANDING_PAGE_ADVANCED_DRAG_AND_DROP = 21
  • LANDING_PAGE_BASIC_DRAG_AND_DROP = 22
hidden
boolean or null
Default: false

Define if the template is hidden

temporal
boolean or null
Default: false

Define if template can be deleted if was not used in any place

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "type": "EMAIL",
  • "subtype": "BANNER",
  • "contentType": "TEMPLATE",
  • "directory": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "content": "{\"json\":\"\",\"html\":\"<p>some text</p>\",\"css\":\"p {\\n font-weight: bold\\n}\",\"js\":\"console.log(\\\"test\\\")\",\"raw\":\"<html><head><style type=\\\"text/css\\\">p {\\n font-weight: bold\\n}</style></head><body><p>some text</p></body></html>\",\"source\":2}",
  • "source": 0,
  • "hidden": false,
  • "temporal": false
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "businessProfileId": 0,
  • "name": "string",
  • "templateContent": "{\"json\":\"\",\"html\":\"<p>some text</p>\",\"css\":\"p {\\n font-weight: bold\\n}\",\"js\":\"console.log(\\\"test\\\")\",\"raw\":\"<html><head><style type=\\\"text/css\\\">p {\\n font-weight: bold\\n}</style></head><body><p>some text</p></body></html>\",\"source\":2}",
  • "type": "EMAIL",
  • "subtype": "BANNER",
  • "contentType": "TEMPLATE",
  • "thumbnailUrl": "https://foo.bar",
  • "directory": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-03-21T12:31:26Z",
  • "parsedData": {
    },
  • "parsedContent": "string",
  • "functionType": "Password Change",
  • "author": {
    },
  • "status": "DRAFT",
  • "source": 0
}

Get template by UUID

Return the details of a template identified by its UUID.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
path Parameters
templateUuid
required
string <uuid>
Example: e0326a2d-7697-4ae9-b490-31f97041adcb

Template UUID

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/template-backend/template/%7BtemplateUuid%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": 0,
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "businessProfileId": 0,
  • "name": "string",
  • "templateContent": "{\"json\":\"\",\"html\":\"<p>some text</p>\",\"css\":\"p {\\n font-weight: bold\\n}\",\"js\":\"console.log(\\\"test\\\")\",\"raw\":\"<html><head><style type=\\\"text/css\\\">p {\\n font-weight: bold\\n}</style></head><body><p>some text</p></body></html>\",\"source\":2}",
  • "type": "EMAIL",
  • "subtype": "BANNER",
  • "contentType": "TEMPLATE",
  • "thumbnailUrl": "https://foo.bar",
  • "directory": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-03-21T12:31:26Z",
  • "parsedData": {
    },
  • "parsedContent": "string",
  • "functionType": "Password Change",
  • "author": {
    },
  • "status": "DRAFT",
  • "source": 0
}

Patch a template

Change template content.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_UPDATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
path Parameters
templateUuid
required
string <uuid>
Example: e0326a2d-7697-4ae9-b490-31f97041adcb

Template UUID

Request Body schema: application/json
name
string or null

Name of the template

content
string

Template content as a stringified, escaped object.

This includes HTML, JS, CSS, and other data, depending on the template type.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "content": "{\"json\":\"\",\"html\":\"<p>some text</p>\",\"css\":\"p {\\n font-weight: bold\\n}\",\"js\":\"console.log(\\\"test\\\")\",\"raw\":\"<html><head><style type=\\\"text/css\\\">p {\\n font-weight: bold\\n}</style></head><body><p>some text</p></body></html>\",\"source\":2}"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "businessProfileId": 0,
  • "name": "string",
  • "templateContent": "{\"json\":\"\",\"html\":\"<p>some text</p>\",\"css\":\"p {\\n font-weight: bold\\n}\",\"js\":\"console.log(\\\"test\\\")\",\"raw\":\"<html><head><style type=\\\"text/css\\\">p {\\n font-weight: bold\\n}</style></head><body><p>some text</p></body></html>\",\"source\":2}",
  • "type": "EMAIL",
  • "subtype": "BANNER",
  • "contentType": "TEMPLATE",
  • "thumbnailUrl": "https://foo.bar",
  • "directory": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-03-21T12:31:26Z",
  • "parsedData": {
    },
  • "parsedContent": "string",
  • "functionType": "Password Change",
  • "author": {
    },
  • "status": "DRAFT",
  • "source": 0
}

Create functional template

Create a new functional template. Functional templates are used for cases not covered by the Create template endpoint, such as a password change page.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_FUNCTIONAL_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: application/json

Functional template to create

name
string

Template name

content
required
string

Template content

functionType
required
string

Function type

directory
required
string <uuid>

UUID of the directory where the template will be saved

Responses

Request samples

Content type
application/json
{
  • "name": "name",
  • "content": "<html><h1>Content</h1></html>",
  • "functionType": "Password Change",
  • "directory": "e0326a2d-7697-4ae9-b490-31f97041adcb"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "businessProfileId": 0,
  • "type": "EMAIL",
  • "subtype": "BANNER",
  • "functionType": "Password Change",
  • "thumbnailUrl": "https://foo.bar",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "createdBy": {
    }
}

Move templates to another directory

Move templates to another directory.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_UPDATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: application/json
templateHashIds
required
Array of strings <uuid>

List of templates to move, identified by hashIds (UUIDs)

directoryHash
required
string

UUID of the directory where the template will be moved

Responses

Request samples

Content type
application/json
{
  • "templateHashIds": [
    ],
  • "directoryHash": "2ede34f8-1c27-4131-bfb1-5c88856882e1"
}

Response samples

Content type
application/json
12

Remove templates

Delete templates. This operation is irreversible.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: application/json

List of template UUIDs to remove

Array
string

Template hashId (UUID)

Responses

Request samples

Content type
application/json
[
  • "e0326a2d-7697-4ae9-b490-31f97041adcb"
]

Response samples

Content type
application/json
12

Get template by ID

Retrieve a template identified by ID.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
path Parameters
id
required
integer <int64>
Example: 12

Template ID

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/template-backend/template/getById/%7Bid%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": 0,
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "businessProfileId": 0,
  • "name": "string",
  • "templateContent": "{\"json\":\"\",\"html\":\"<p>some text</p>\",\"css\":\"p {\\n font-weight: bold\\n}\",\"js\":\"console.log(\\\"test\\\")\",\"raw\":\"<html><head><style type=\\\"text/css\\\">p {\\n font-weight: bold\\n}</style></head><body><p>some text</p></body></html>\",\"source\":2}",
  • "type": "EMAIL",
  • "subtype": "BANNER",
  • "contentType": "TEMPLATE",
  • "thumbnailUrl": "https://foo.bar",
  • "directory": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-03-21T12:31:26Z",
  • "parsedData": {
    },
  • "parsedContent": "string",
  • "functionType": "Password Change",
  • "author": {
    },
  • "status": "DRAFT",
  • "source": 0
}

Create template from ZIP

Create new template from ZIP file.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: multipart/form-data

ZIP file with template

filename
required
string <binary>

ZIP file

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/template-backend/upload/zip 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_' 
  --header 'content-type: multipart/form-data'

Response samples

Content type
application/json
{
  • "html": "string",
  • "css": "string",
  • "date": "2019-08-24T14:15:22Z"
}

Create template from URL

Create new template from URL.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: TEMPLATE_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: application/json
url
required
string

URL of the template

Responses

Request samples

Content type
application/json
{
  • "url": "string"
}

Response samples

Content type
application/json
[
  • {
    }
]

Template directories

Directories let you organize templates

Get directories

Retrieve a list of all directories in the Workspace.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: DIRECTORY_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/template-backend/directory 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Create directory

Create a new directory for templates. A directory can store only one type of templates.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: DIRECTORY_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
Request Body schema: application/json

Directory to create

name
required
string
analyticType
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "analyticType": "string"
}

Response samples

Content type
application/json
{
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "name": "string",
  • "readOnly": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "type": "EMAIL",
  • "contentType": "TEMPLATE",
  • "default": true,
  • "predefined": true
}

Get directories by type

Retrieve a list of directories of a single type.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: DIRECTORY_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
query Parameters
type
required
string
Enum: "SMS" "MOBILE_PUSH" "WEB_PUSH" "DYNAMIC_CONTENT" "LANDING_PAGE" "EMAIL" "SOCIAL_MEDIA" "IN_APP"

The type of directories to return (directory types match the template types stored in them).

Directories with null type are always returned.

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/template-backend/directory/byType?type=SOME_STRING_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
[
  • {
    }
]

Remove directory

Remove a directory. Only empty directories can be removed.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: DIRECTORY_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
path Parameters
directoryUUID
required
string <uuid>
Example: e0326a2d-7697-4ae9-b490-31f97041adcb

Directory UUID

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/template-backend/directory/%7BdirectoryUUID%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Rename directory

Rename a directory.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: DIRECTORY_UPDATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: TEMPLATES

Authorizations:
path Parameters
directoryUUID
required
string <uuid>
Example: e0326a2d-7697-4ae9-b490-31f97041adcb

Directory UUID

Request Body schema: application/json
name
string

New name of the directory. If not sent, the name of the directory is set to null.

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "hashId": "e0326a2d-7697-4ae9-b490-31f97041adcb",
  • "name": "string",
  • "readOnly": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "type": "EMAIL",
  • "contentType": "TEMPLATE",
  • "default": true,
  • "predefined": true
}

Screen views (legacy)

Deprecated endpoints for screen view campaigns

Get all screen views Deprecated

Retrieve a paginated list of all screen view campaigns in the workspace.


  • API consumers who can use this method: Synerise User, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
query Parameters
limit
required
string

The maximum number of items to retrieve for pagination

page
required
integer

The number of the page to retrieve

status
string
Enum: "DRAFT" "ACTIVE" "SCHEDULED" "PAUSED" "FINISHED"

Filter the results by screen view status

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/schema-service/screenViews?limit=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&status=SOME_STRING_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

Get screen views by keys Deprecated

Retrieve list of screen view campaigns by keys in the workspace.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

Get screen view Deprecated

Retrieve the details of a single screen view campaign.


  • API consumers who can use this method: Synerise User, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/screenViews/single/%7BscreenViewId%7D/%7BscreenViewVersion%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "parentVersion": "string",
  • "businessProfileId": 0,
  • "name": "string",
  • "description": "string",
  • "status": "DRAFT",
  • "priority": 99,
  • "scheduled": true,
  • "author": {
    },
  • "content": {
    },
  • "audience": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "directory": {
    },
  • "feed": {
    }
}

Get screen view versions Deprecated

Retrieve all versions of a screen view campaign.


  • API consumers who can use this method: Synerise User, Workspace (formerly Business Profile)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_READ

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

query Parameters
limit
required
string

The maximum number of items to retrieve for pagination

page
required
integer

The number of the page to retrieve

Responses

Request samples

curl --request GET 
  --url 'https://api.synerise.com/schema-service/screenViews/versions/%7BscreenViewId%7D?limit=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE' 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "draft": {
    },
  • "currentlyPublished": {
    },
  • "previouslyPublished": {
    }
}

Generate screen view Deprecated

When this method is called, the Synerise backend finds all screen view campaigns applicable to the profile and returns the screen view with the highest priority (1).


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User, Profile (formerly client), Anonymous profile (formerly client)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/screenViews/generate 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{ }

Generate screen view Deprecated

When this method is called, the Synerise backend finds all screen view campaigns applicable to the profile and returns the screen view with the highest priority (1).


  • API consumers who can use this method: Workspace (formerly Business Profile), Synerise User, Profile (formerly client), Anonymous profile (formerly client)

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:

Responses

Request samples

curl --request GET 
  --url https://api.synerise.com/schema-service/v2/screenViews/generate 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "parentVersion": "string",
  • "name": "string",
  • "priority": 99,
  • "audience": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "hash": "bb6639b2-a98e-49d9-804f-ed6c0e2a0d2f:2019-12-05T08:22:10.094",
  • "path": "/screenView",
  • "data": { }
}

Initialize screen view Deprecated

Create a new screen view campaign. It is created as a blank, without any conditions.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/screenViews/createNew 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "status": "DRAFT",
  • "hash": "bb6639b2-a98e-49d9-804f-ed6c0e2a0d2f:2019-12-05T08:22:10.094",
  • "parentVersion": "string",
  • "authorId": "string",
  • "businessProfileId": 0,
  • "priority": 99,
  • "name": "string",
  • "description": "string",
  • "isActive": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z"
}

Copy content Deprecated

Copy content to a screen view draft from another screen view.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Request Body schema: application/json
screenViewId
string <uuid>

UUID of the screen view

screenViewVersion
string

Version of the screen view

Responses

Request samples

Content type
application/json
{
  • "screenViewId": "481855c5-f86e-453f-a0fa-d34b5a2be745",
  • "screenViewVersion": "string"
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Add content Deprecated

Add content to a screen view draft.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Request Body schema: application/json
required
object

JSON structure of the screen view. By default, a newly created screen view has the following json value:

"collection": "{% screenviewcollection %}"

The {% screenviewcollection %} insert is used to pick and display the documents from the documents in documents or groups.

If this insert is not used, you must manually insert each document with {% document slug%}.

documents
required
Array of strings

An array of documents. If groups is used, this array must be empty.

groups
required
Array of strings <uuid>

An array of document groups, If documents is used, this array must be empty.

groupsOrder
boolean
Default: false

By default, group are ordered for display by their priority. When this field is set to true, they are displayed according to their order in the groups array instead.

Responses

Request samples

Content type
application/json
{
  • "json": {
    },
  • "documents": [
    ],
  • "groups": [
    ],
  • "groupsOrder": false
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Add audience Deprecated

Define the audience for a screen view draft.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Request Body schema: application/json
targetType
required
string
Enum: "SEGMENT" "QUERY" "ALL"

The method of defining the audience:

  • SEGMENT sets the audience to segmentations whose UUIDs are provided in segments
  • QUERY sets the audience to an analytics query provided in query
  • ALL sets the audience to all profiles in the database
segments
Array of strings

An array of segmentation IDs. Used with targetType: SEGMENT

query
string

Stringified analysis object for the segmentation analytics engine. Used with targetType: QUERY. Refer to the Analytics API Reference.

Responses

Request samples

Content type
application/json
{
  • "targetType": "SEGMENT",
  • "segments": [
    ],
  • "query": "{\"analysis\":{\"title\":\"Unnamed segmentation\",\"description\":\"\",\"unique\":true,\"segments\":[{\"title\":\"Segmentation A\",\"description\":\"\",\"filter\":{\"matching\":true,\"expressions\":[{\"_id\":\"a9b76c8e-34bd-4ac3-be8f-f37041d126bd\",\"name\":\"\",\"type\":\"FUNNEL\",\"matching\":true,\"funnel\":{\"_id\":\"5c759d73-49c6-409f-96a3-b569dff8f8ff\",\"title\":\"Unnamed\",\"completedWithin\":null,\"dateFilter\":{\"type\":\"RELATIVE\",\"offset\":{\"type\":\"DAYS\",\"value\":0},\"duration\":{\"type\":\"DAYS\",\"value\":30}},\"steps\":[{\"_id\":\"78b97ae0-1bc5-45fb-82a4-4f1280cfbdff\",\"title\":\"\",\"action\":{\"id\":944,\"name\":\"page.visit\"},\"eventName\":\"page.visit\",\"expressions\":[]}],\"exact\":false}}]}}]}}"
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Publish screen view Deprecated

Make the screen view accessible to customers.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Request Body schema: application/json
overwrite
required
boolean

Currently unused

Responses

Request samples

Content type
application/json
{
  • "overwrite": true
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Copy draft from existing screen view Deprecated

Copy a duplicate of an active screen view. The duplicate is in draft status.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
screenViewId
string <uuid>

UUID of the screen view

screenViewVersion
string

Version of the screen view

Responses

Request samples

Content type
application/json
{
  • "screenViewId": "481855c5-f86e-453f-a0fa-d34b5a2be745",
  • "screenViewVersion": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "status": "DRAFT",
  • "hash": "bb6639b2-a98e-49d9-804f-ed6c0e2a0d2f:2019-12-05T08:22:10.094",
  • "parentVersion": "string",
  • "authorId": "string",
  • "businessProfileId": 0,
  • "priority": 99,
  • "name": "string",
  • "description": "string",
  • "isActive": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z"
}

Create draft from existing screen view Deprecated

Create a duplicate of an active screen view. The duplicate is in draft status.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
Request Body schema: application/json
screenViewId
string <uuid>

UUID of the screen view

screenViewVersion
string

Version of the screen view

Responses

Request samples

Content type
application/json
{
  • "screenViewId": "481855c5-f86e-453f-a0fa-d34b5a2be745",
  • "screenViewVersion": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "status": "DRAFT",
  • "hash": "bb6639b2-a98e-49d9-804f-ed6c0e2a0d2f:2019-12-05T08:22:10.094",
  • "parentVersion": "string",
  • "authorId": "string",
  • "businessProfileId": 0,
  • "priority": 99,
  • "name": "string",
  • "description": "string",
  • "isActive": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z"
}

Update screen view description Deprecated

Update the description of a screen view. You can update the descriptions of active screen views.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Request Body schema: application/json
string (update screenview description)

New description of the screen view

Responses

Request samples

Content type
application/json
"string"

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Update screen view priority Deprecated

Update the priority of a screen view. You can update the priorities of active screen views.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Request Body schema: application/json
integer (update screenview priority)

New priority of the screen view

Responses

Request samples

Content type
application/json
0

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Discard changes Deprecated

Discard the changes made in a version of a screen view.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_CREATE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Responses

Request samples

curl --request POST 
  --url https://api.synerise.com/schema-service/screenViews/discardChanges/%7BscreenViewId%7D/%7BscreenViewVersion%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "version": "string",
  • "parentVersion": "string",
  • "businessProfileId": 0,
  • "name": "string",
  • "description": "string",
  • "status": "DRAFT",
  • "priority": 99,
  • "scheduled": true,
  • "author": {
    },
  • "content": {
    },
  • "audience": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "directory": {
    },
  • "feed": {
    }
}

Delete screen view Deprecated

Delete a screen view and all its versions. This operation is irreversible.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/schema-service/screenViews/delete/%7BscreenViewId%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}

Delete screen view version Deprecated

Delete a version of a screen view.


  • API consumer who can use this method: Synerise User

  • API key Permissions are assigned to API keys (for Profile and Workspace scopes) and dictate which operations are available when using a particular API key. In the application, you can manage those permissions in Settings > API Keys. Remember that Profile and Workspace API keys are separate entities.permission required: SCHEMA_SERVICE_SCHEMA_DELETE

  • User permissions are grouped and assigned to user roles. For each group, you can set separate permissions for the following operations: read, execute, create, edit, delete. In the application, they are available in Settings > Roles. To edit a role's permissions, hover over the role and click the "Permissions" button.User role permission group which allows access to this method: ASSETS_DOCS

Authorizations:
path Parameters
screenViewId
required
string <uuid>

UUID of the screen view

screenViewVersion
required
string

Version of the screen view

Responses

Request samples

curl --request DELETE 
  --url https://api.synerise.com/schema-service/screenViews/single/delete/%7BscreenViewId%7D/%7BscreenViewVersion%7D 
  --header 'Authorization: Bearer _YOUR_JWT_TOKEN_'

Response samples

Content type
application/json
{
  • "status": "string",
  • "body": "string"
}