Asset Management — API Reference
Manage resources used across the system
161 endpoints across 8 tags.
Documents
GET /schema-service/v2/documents/{slug}/generate — Generate document (slug)
/api-reference/asset-management#tag/Documents/operation/generateDocumentBySlugGet
Generate a document. Inserts are processed. If an insert can't be processed, the returned content is empty.
If the document includes inserts with a context (for example, {% customer param %}), you must authenticate the request with a JWT that provides the context.
If you want to authenticate with a JWT that doesn't provide the required context, you can use the POST /v2/documents/{slug}/generate endpoint to provide the parameter values in the request body.
IMPORTANT: When the request's context is a Workspace or Synerise User JWT, only documents with the audience set to ALL ("Everyone" in the Synerise Web Application) can be generated.
API consumers: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile, Incognito Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Slug of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/%7Bslug%7D/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{slug}/generate — Generate document (slug)
/api-reference/asset-management#tag/Documents/operation/generateDocumentBySlug
Generate a document. Inserts are processed. If an insert can't be processed, the returned content is empty.
IMPORTANT: When the request's context is a Workspace or Synerise User JWT, only documents with the audience set to ALL ("Everyone" in the Synerise Web Application) can be generated.
API consumers: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile, Incognito Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Slug of the document |
Request body
application/json · object
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7Bslug%7D/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"customer.firstName":"Joe"}'
POST /schema-service/v2/documents/{documentId}/generate — Generate document (document UUID)
/api-reference/asset-management#tag/Documents/operation/generateDocumentByIdPost
Generate a document. Inserts are processed. If an insert can't be processed, the returned content is empty.
IMPORTANT: When the request's context is a Workspace or Synerise User JWT, only documents with the audience set to ALL ("Everyone" in the Synerise Web Application) can be generated.
API consumers: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Request body
application/json · object
Responses
| Status | Description |
|---|---|
200 application/json | Processed document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"customer.firstName":"Joe"}'
POST /schema-service/v2/documents/create — Create document
/api-reference/asset-management#tag/Documents/operation/createDocumentPost
Create a new document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body
application/json · schema-service-CreateDocumentRequest
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Document name |
priority | integer | required | Priority of the document |
content | required | Content of the document. It can contain inserts. | |
slug | string | required | Slug of the document |
schema | string | optional | Schema of the document (called "Type" in the Synerise Web Application) |
groupId | string | optional | UUID of a document group. Groups can be used to organize documents. When creating a screen view campaign, entire groups can be included instead of selecting each document separately. |
audience | object | required | The profiles (clients) which have access to this resource |
schedule | object | optional | Configuration of the schedule |
directoryId | string | required | 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. |
Responses
| Status | Description |
|---|---|
200 application/json | Document created |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/create \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string","priority":100,"content":{"someBoolean":true,"someString":"Lorem ipsum","aNestedDocument":"{% document exampleslug %}"},"slug":"basket","schema":"containers","groupId":"eb54e96e-21b8-4f54-9cd4-80fccbd06f55","audience":{"targetType":"SEGMENT","segments":["string"],"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}}]}}]}}"},"schedule":{"enabled":true,"endDate":"2019-08-24T14:15:22Z","endType":"NEVER","parts":[{"startDay":1,"startTime":"08:18:03","endDay":1,"endTime":44283}],"periodType":"ENTIRE","startDate":"2019-08-24T14:15:22Z","startType":"NOW","timezone":"Europe/Warsaw"},"directoryId":"786c2ec1-fb9a-4593-b705-005b34c18c18"}'
POST /schema-service/v2/documents/createNew — Initialize document
/api-reference/asset-management#tag/Documents/operation/initializeDocumentPost
Create a new document. It is created as a blank, without any conditions.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body (required)
application/json · schema-service-CreateRequest
| Field | Type | Required | Description |
|---|---|---|---|
name | string | optional | If no name is provided, defaults to "Unnamed document" or Screen View Campaign" (depending on what you are initializing). |
directory | string | optional | If no directory is provided, the default directory is used. |
Responses
| Status | Description |
|---|---|
200 application/json | Document initialized |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/createNew \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string","directory":"5277859d-f92c-478c-acab-7680a97fea68"}'
POST /schema-service/v2/documents/{documentId}/audience — Add audience to document
/api-reference/asset-management#tag/Documents/operation/createDocumentAudience
Define the audience for a document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Request body
application/json · schema-service-Audience
| Field | Type | Required | Description |
|---|---|---|---|
targetType | enum<"SEGMENT", "QUERY", "ALL"> | required | 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<string> | optional | An array of segmentation IDs. Used with targetType: SEGMENT
|
query | string | optional | Stringified analysis object for the segmentation analytics engine. Used with targetType: QUERY. Refer to the Analytics API Reference.
|
Responses
| Status | Description |
|---|---|
200 application/json | Audience defined |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/audience \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"targetType":"SEGMENT","segments":["string"],"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}}]}}]}}"}'
POST /schema-service/v2/documents/{documentId}/content — Add content to document
/api-reference/asset-management#tag/Documents/operation/createDocumentContent
Add content and configuration (priority, schema, and so on) to a document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Request body
application/json · schema-service-DocumentContent
| Field | Type | Required | Description |
|---|---|---|---|
priority | integer | required | Priority of the document |
content | object | required | JSON structure of the document |
slug | string | required | Slug of the document |
schema | string | required | Schema of the document (called "Type" in the Synerise Web Application) |
groupId | string | optional | UUID of the group |
Responses
| Status | Description |
|---|---|
200 application/json | Content added |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/content \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"priority":100,"content":{"property1":null,"property2":null},"slug":"basket","schema":"containers","groupId":"43c97b25-4a10-45d0-99b7-d472eea2bb24"}'
PUT /schema-service/v2/documents/{documentId}/name — Rename document
/api-reference/asset-management#tag/Documents/operation/updateDocumentName
Rename a document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Request body
application/json · string
Responses
| Status | Description |
|---|---|
200 application/json | Document renamed |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/name \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '"string"'
PUT /schema-service/v2/documents/{documentId}/priority — Update priority in document
/api-reference/asset-management#tag/Documents/operation/updateDocumentPriority
Update priority in a document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Request body
application/json · integer
Responses
| Status | Description |
|---|---|
200 application/json | Priority changed |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/priority \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data 0
POST /schema-service/v2/documents/preview/by/{identifierType} — Preview document content for a profile
/api-reference/asset-management#tag/Documents/operation/previewDocumentByIdentifierPost
Preview document content in context of a profile. Inserts are processed. If an insert can't be processed, the returned content is empty.
This method should not be used in production implementations, its purpose is to test the content. Use the "generate document" endpoints for implementation.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifierType | path | enum<"id", "uuid", "email", "custom_identify"> | required | Type of the profile identifier. The value is sent in identifierValue in the request body.
|
Request body
application/json · schema-service-PreviewDocumentByProfile
| Field | Type | Required | Description |
|---|---|---|---|
identifierValue | string | required | Value of the profile identifier selected in identifierType (profile ID is sent as a string)
|
content | required | Content of the document. It can contain inserts. | |
params | object | optional | Additional parameters |
Responses
| Status | Description |
|---|---|
200 application/json | Processed document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/preview/by/%7BidentifierType%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"identifierValue":"string","content":{"someBoolean":true,"someString":"Lorem ipsum","aNestedDocument":"{% document exampleslug %}"},"params":{"property1":"string","property2":"string"}}'
POST /schema-service/v2/documents/{documentIdentifier}/generate/by/{identifierType} — Generate document for a profile
/api-reference/asset-management#tag/Documents/operation/generateDocumentWithProfileContextPost
Generate a document in context of a profile. Inserts are processed. If an insert can't be processed, the returned content is empty.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentIdentifier | path | string | required | UUID or slug of the document |
identifierType | path | enum<"id", "uuid", "email", "custom_identify"> | required | Type of the profile identifier. The value is sent in identifierValue in the request body.
|
Request body
application/json · schema-service-generateDocumentWithIdReq
| Field | Type | Required | Description |
|---|---|---|---|
identifierValue | string | required | Value of the profile identifier selected in identifierType (profile ID is sent as a string)
|
params | object | optional | Additional parameters |
Responses
| Status | Description |
|---|---|
200 application/json | Processed document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentIdentifier%7D/generate/by/%7BidentifierType%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"identifierValue":"string","params":{"property1":"string","property2":"string"}}'
POST /schema-service/v2/documents/preview/grouped-by/groups/list — List grouped documents
/api-reference/asset-management#tag/Documents/operation/previewListOfDocumentsGroupedByGroup
Retrieve a group or groups of documents with information about the documents in those groups and relations between them. The response is an array of arrays (groups) of objects (documents).
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Request body
application/json · array<schema-service-groupUuid>
Responses
| Status | Description |
|---|---|
200 application/json | List of document groups |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/preview/grouped-by/groups/list \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '["497f6eca-6276-4993-bfeb-53cbbbba6f08"]'
GET /schema-service/v2/documents — List documents
/api-reference/asset-management#tag/Documents/operation/documents-list
Returns a paginated list of documents.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
page | query | number | optional | |
limit | query | number | optional | Limit of items per page |
search | query | string | optional | A string to search for in resource names |
directoryId | query | string | optional | UUID of the directory for filtering the results |
groupId | query | string | optional | UUID of the document group for filtering the results |
status | query | enum<"DRAFT", "ACTIVE", "SCHEDULED", "PAUSED", …> | optional | |
schema | query | string | optional | Name of the document schema (type) for filtering the results |
Responses
| Status | Description |
|---|---|
200 application/json | List of documents |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/schema-service/v2/documents?page=SOME_NUMBER_VALUE&limit=SOME_NUMBER_VALUE&search=SOME_STRING_VALUE&directoryId=SOME_STRING_VALUE&groupId=SOME_STRING_VALUE&status=SOME_STRING_VALUE&schema=SOME_STRING_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/preview/list — List documents from groups
/api-reference/asset-management#tag/Documents/operation/previewListOfDocumentsByGroup
Retrieve a list of documents from a group or groups. The response includes information about relations between documents. The response is an array of objects (documents) without sorting them by group.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Request body
application/json · array<schema-service-groupUuid>
Responses
| Status | Description |
|---|---|
200 application/json | List of documents from the requested groups, without sorting into groups |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/preview/list \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '["497f6eca-6276-4993-bfeb-53cbbbba6f08"]'
GET /schema-service/v2/documents/{slug} — Get document by slug
/api-reference/asset-management#tag/Documents/operation/get-document-by-slug
Retrieve a document and its metadata. The content isn't processed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Slug of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Details of the document (content isn't processed) |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/%7Bslug%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/documents/by/slug/{slug}/predecessors — Get predecessors for document
/api-reference/asset-management#tag/Documents/operation/document-predecessors-by-slug-get
Retrieve information about documents or screen views that refer to the requested document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Slug of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Documents which refer to the requested document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/by/slug/%7Bslug%7D/predecessors \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/documents/{documentId}/predecessors — Get predecessors for document
/api-reference/asset-management#tag/Documents/operation/document-predecessors-get
Retrieve information about documents or screen views that refer to the requested document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Documents which refer to the requested document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/predecessors \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/documents/by/slug/{slug}/successors — Get successors for document
/api-reference/asset-management#tag/Documents/operation/document-successors-by-slug-get
Retrieve information about documents referenced from the requested document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Slug of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Documents referenced from the requested document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/by/slug/%7Bslug%7D/successors \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/documents/{documentId}/successors — Get successors for document
/api-reference/asset-management#tag/Documents/operation/document-successors-get
Retrieve information about documents referenced from the requested document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Documents referenced from the requested document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/successors \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/documents/{documentId} — Get document by UUID
/api-reference/asset-management#tag/Documents/operation/get-document
Retrieve a document and its metadata. The content isn't processed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Details of the document (content isn't processed) |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{documentId} — Update document
/api-reference/asset-management#tag/Documents/operation/updateDocumentPost
Update a document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Request body
application/json · schema-service-UpdateDocumentRequest
| Field | Type | Required | Description |
|---|---|---|---|
name | string | optional | Name of the document |
priority | integer | optional | Priority of the document |
content | optional | Content of the document. It can contain inserts. | |
schema | string | optional | Schema of the document (called "Type" in the Synerise Web Application) |
groupId | string | optional | UUID of the group |
audience | object | optional | The profiles (clients) which have access to this resource |
schedule | object | optional | Configuration of the schedule |
directoryId | string | optional | 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. |
Responses
| Status | Description |
|---|---|
200 application/json | Updated document |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string","priority":100,"content":{"someBoolean":true,"someString":"Lorem ipsum","aNestedDocument":"{% document exampleslug %}"},"schema":"containers","groupId":"43c97b25-4a10-45d0-99b7-d472eea2bb24","audience":{"targetType":"SEGMENT","segments":["string"],"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}}]}}]}}"},"schedule":{"enabled":true,"endDate":"2019-08-24T14:15:22Z","endType":"NEVER","parts":[{"startDay":1,"startTime":"08:18:03","endDay":1,"endTime":44283}],"periodType":"ENTIRE","startDate":"2019-08-24T14:15:22Z","startType":"NOW","timezone":"Europe/Warsaw"},"directoryId":"786c2ec1-fb9a-4593-b705-005b34c18c18"}'
DELETE /schema-service/v2/documents/{documentId} — Delete document
/api-reference/asset-management#tag/Documents/operation/delete-document
Delete a document. This operation is irreversible.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{documentId}/copy — Copy document
/api-reference/asset-management#tag/Documents/operation/copy-document
Copy a document.The copy receives the DRAFT status, regardless of the status of the original document.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Data of the created copy |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/copy \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{documentId}/directory/{directoryId}/attach — Assign document to directory
/api-reference/asset-management#tag/Documents/operation/attach-document-to-directory
Assign a document to a directory. A document can only belong to one directory and using this endpoint overwrites the current assignment.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
directoryId | path | string | required | UUID of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Document assigned to directory |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/directory/%7BdirectoryId%7D/attach \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/directory/{directoryId} — Rename document directory
/api-reference/asset-management#tag/Documents/operation/documents-update-name-directory
Update a document directory name.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryId | path | string | required | UUID of the directory |
Request body
application/json · schema-service-RenameDirectory
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | New name for the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Directory renamed |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/directory/%7BdirectoryId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
DELETE /schema-service/v2/documents/directory/{directoryId} — Delete document directory
/api-reference/asset-management#tag/Documents/operation/documents-delete-directory
Delete a directory. The contents are moved into the default directory.
API consumer: Synerise User
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryId | path | string | required | UUID of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Directory deleted |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/v2/documents/directory/%7BdirectoryId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/documents/directory — List document directories
/api-reference/asset-management#tag/Documents/operation/documents-directory-list
Returns a list of directories.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Responses
| Status | Description |
|---|---|
200 application/json | List of directories |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/documents/directory \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/directory — Add document directory
/api-reference/asset-management#tag/Documents/operation/documents-add-directory
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body
application/json · schema-service-NewDirectory
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Name of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Directory created |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/directory \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
DELETE /schema-service/v2/groups/{groupId} — Delete document group
/api-reference/asset-management#tag/Documents/operation/deleteGroup
Delete a document group. The documents that were in this group are no longer assigned to any group.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
groupId | path | string | required |
Responses
| Status | Description |
|---|---|
200 application/json | Success, details of the deleted group are returned in the response |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/v2/groups/%7BgroupId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/groups — List groups
/api-reference/asset-management#tag/Documents/operation/groups-list
Returns a list of groups.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Responses
| Status | Description |
|---|---|
200 application/json | List of groups |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/groups \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/groups — Add group
/api-reference/asset-management#tag/Documents/operation/addGroup
Create a new document group.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body
application/json · object
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Name of the group |
Responses
| Status | Description |
|---|---|
200 application/json | Created group |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/groups \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
POST /schema-service/v2/documents/{documentId}/status/finish — Finish document
/api-reference/asset-management#tag/Documents/operation/finishDocument
Finish a document.
Finished documents are no longer displayed to recipients.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/status/finish \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{documentId}/status/activate — Activate document
/api-reference/asset-management#tag/Documents/operation/activateDocument
Activate a document. It can now be displayed to recipients.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/status/activate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{documentId}/status/resume — Resume document
/api-reference/asset-management#tag/Documents/operation/resumeDocument
Resume a document that was paused.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/status/resume \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/documents/{documentId}/status/pause — Pause document
/api-reference/asset-management#tag/Documents/operation/pauseDocument
Pause a document to temporarily stop displaying it to recipients
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
documentId | path | string | required | UUID of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/documents/%7BdocumentId%7D/status/pause \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/schemaTypes — Get schema types
/api-reference/asset-management#tag/Documents/operation/getSchemaTypes
Retrieve a list of all schema types in the workspace.
Schema types can be used to inform your application about the type of
content included in the document's body.
In the Synerise Web Application, they are called "Type".
API consumer: Synerise User
User role permission required: assets_docs: read
Responses
| Status | Description |
|---|---|
200 application/json | List of schema types |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/schemaTypes \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/schemaTypes — Add schema type
/api-reference/asset-management#tag/Documents/operation/addSchemaType
Create a new schema type.
Schema types can be used to inform your application about the type of
content included in the document's body.
In the Synerise Web Application, they are called "Type".
API consumer: Synerise User
User role permission required: assets_docs: create
Request body (required)
application/json · string
Responses
| Status | Description |
|---|---|
200 application/json | Schema created |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/schemaTypes \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '"string"'
DELETE /schema-service/schemaTypes — Delete schema types
/api-reference/asset-management#tag/Documents/operation/deleteSchemaTypes
Delete one or more schema types. This operation is irreversible.
API consumer: Synerise User
User role permission required: assets_docs: delete
Request body (required)
application/json · array<string>
Responses
| Status | Description |
|---|---|
200 application/json | Deletion status |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/schemaTypes \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '["string"]'
Screen views
GET /schema-service/v3/screen-views/{feedSlug}/generate — Generate screen view from feed
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/generateScreenViewByFeedGetV2
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: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile, Incognito Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
feedSlug | path | string | required | Slug of the screen view feed |
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v3/screen-views/%7BfeedSlug%7D/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v3/screen-views/{feedSlug}/generate — Generate screen view from feed
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/generateScreenViewByFeedPostV2
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: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile, Incognito Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
feedSlug | path | string | required | Slug of the screen view feed |
Request body
application/json · object
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v3/screen-views/%7BfeedSlug%7D/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"property1":"string","property2":"string"}'
POST /schema-service/screen-views/create — Create screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/create-screen-view
Create a screen view.
API consumer: Synerise User
User role permission required: assets_docs: create
Request body
application/json · schema-service-CreateScreenViewRequest
| Field | Type | Required | Description |
|---|---|---|---|
priority | integer | required | 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 | optional | Name of the screen view |
directoryId | string | required | 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. |
content | object | required | Content of the screen view |
audience | object | required | The profiles (clients) which have access to this resource |
schedule | object | optional | Configuration of the schedule |
feedId | string | required | UUID of the feed where this screen view is assigned. |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screen-views/create \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"priority":99,"name":"string","directoryId":"786c2ec1-fb9a-4593-b705-005b34c18c18","content":{"json":{"property1":null,"property2":null},"documents":["string"],"data":[{"slug":"basket"}],"groups":["43c97b25-4a10-45d0-99b7-d472eea2bb24"],"groupsOrder":false},"audience":{"targetType":"SEGMENT","segments":["string"],"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}}]}}]}}"},"schedule":{"enabled":true,"endDate":"2019-08-24T14:15:22Z","endType":"NEVER","parts":[{"startDay":1,"startTime":"08:18:03","endDay":1,"endTime":44283}],"periodType":"ENTIRE","startDate":"2019-08-24T14:15:22Z","startType":"NOW","timezone":"Europe/Warsaw"},"feedId":"30c3a808-1315-453b-94cf-0ccb129b558b"}'
POST /schema-service/v2/screen-views/createNew — Initialize screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/create-new-screen-view
Create a screen view. It is created as a blank, without any conditions.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body (required)
application/json · schema-service-CreateRequest
| Field | Type | Required | Description |
|---|---|---|---|
name | string | optional | If no name is provided, defaults to "Unnamed document" or Screen View Campaign" (depending on what you are initializing). |
directory | string | optional | If no directory is provided, the default directory is used. |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/createNew \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string","directory":"5277859d-f92c-478c-acab-7680a97fea68"}'
POST /schema-service/v2/screen-views/{screenViewId}/content — Add content to screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/create-screen-view-content
Add content to a screen view. This overwrites any existing content.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Request body
application/json · schema-service-ScreenViewContent
| Field | Type | Required | Description |
|---|---|---|---|
json | object | required | 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 | array<string> | required | An array of documents. If groups is used, this array must be empty.
|
data | array<any> | optional | An array of documents or Brickworks records |
groups | array<schema-service-DocumentGroupId> | required | An array of document groups, If documents is used, this array must be empty.
|
groupsOrder | boolean | optional | 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
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/content \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"json":{"property1":null,"property2":null},"documents":["string"],"data":[{"slug":"basket"}],"groups":["43c97b25-4a10-45d0-99b7-d472eea2bb24"],"groupsOrder":false}'
POST /schema-service/v2/screen-views/{screenViewId}/audience — Add audience to screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/create-screen-view-audience
Define the audience for a screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Request body
application/json · schema-service-Audience
| Field | Type | Required | Description |
|---|---|---|---|
targetType | enum<"SEGMENT", "QUERY", "ALL"> | required | 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<string> | optional | An array of segmentation IDs. Used with targetType: SEGMENT
|
query | string | optional | Stringified analysis object for the segmentation analytics engine. Used with targetType: QUERY. Refer to the Analytics API Reference.
|
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/audience \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"targetType":"SEGMENT","segments":["string"],"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}}]}}]}}"}'
PUT /schema-service/v2/screen-views/{screenViewId}/priority — Update screen view priority
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/updateScreenViewPriority
Update priority in a screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Request body
application/json · schema-service-screenViewPriority
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/priority \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data 99
PUT /schema-service/v2/screen-views/{screenViewId}/name — Rename screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/updateNameOfScreenView
Update the name of a screen view. You can update the names of active screen views.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Request body (required)
application/json · string
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/name \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '"string"'
POST /schema-service/v2/screen-views/{feedSlug}/generate/by/{identifierType} — 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: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
feedSlug | path | string | required | Slug of the screen view feed |
identifierType | path | enum<"id", "uuid", "email", "custom_identify"> | required | Type of the profile identifier. The value is sent in identifierValue in the request body.
|
Request body
application/json · object
| Field | Type | Required | Description |
|---|---|---|---|
identifierValue | string | required | Value of the profile identifier selected in identifierType (profile ID is sent as a string)
|
params | object | optional | Additional parameters |
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BfeedSlug%7D/generate/by/%7BidentifierType%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"identifierValue":"string","params":{"property1":"string","property2":"string"}}'
GET /schema-service/v2/screen-views/feeds — List screen view feeds
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/feed-list
Returns a list of screen view feeds.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Responses
| Status | Description |
|---|---|
200 application/json | List of feeds |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/screen-views/feeds \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/feeds — Create screen view feed
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/add-feed
Create a new screen view feed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body
application/json · schema-service-ScreenViewFeed
| Field | Type | Required | Description |
|---|---|---|---|
slug | string | required | Unique slug of the screen view feed |
name | string | required | Name of the screen view feed |
Responses
| Status | Description |
|---|---|
200 application/json | Feed created |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/feeds \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"slug":"string","name":"string"}'
GET /schema-service/v2/screen-views — List screen views
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/screen-views-list
Returns a paginated list of screen views.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
page | query | number | optional | |
limit | query | number | optional | Limit of items per page |
search | query | string | optional | A string to search for in resource names |
directoryId | query | string | optional | UUID of the directory for filtering the results |
status | query | enum<"DRAFT", "ACTIVE", "SCHEDULED", "PAUSED", …> | optional | |
feedId | query | string | optional |
Responses
| Status | Description |
|---|---|
200 application/json | List of screen views |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
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 REPLACE_BEARER_TOKEN'
GET /schema-service/v2/screen-views/{screenViewId} — Get screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/get-screen-view
Retrieve the details of a screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Details of the screen view |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /schema-service/v2/screen-views/{screenViewId} — Delete screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/delete-screen-view
Delete a screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Screen view deleted |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/copy — Copy screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/copy-screen-view
Copy a screen view. The copy receives the DRAFT status, regardless of the status of the original screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Data of the created copy |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/copy \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/screen-views/{screenViewId}/predecessors — Get predecessors for screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/screenview-predecessors-get
Retrieve information about documents or screen views that refer to the requested screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Entities which refer to the requested screen view |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/predecessors \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/screen-views/{screenViewId}/successors — Get successors for screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/screenview-successors-get
Retrieve information about documents referenced from the requested screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Documents referenced from the requested screen view |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/successors \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/screen-views/directory — List screen view directories
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/directory-list
Returns a list of screen view directories.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Responses
| Status | Description |
|---|---|
200 application/json | List of directories |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/screen-views/directory \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/directory — Add screen view directory
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/add-directory
Create a directory for screen views.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body
application/json · schema-service-NewDirectory
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Name of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Directory created |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/directory \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
POST /schema-service/v2/screen-views/directory/{directoryId} — Rename screen view directory
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/update-name-directory
Update the name of a screen view directory.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryId | path | string | required | UUID of the directory |
Request body
application/json · object
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/directory/%7BdirectoryId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
DELETE /schema-service/v2/screen-views/directory/{directoryId} — Delete screen view directory
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/deleteDirectory
Delete a screen view directory. The contents are moved into the default directory.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryId | path | string | required | UUID of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/v2/screen-views/directory/%7BdirectoryId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/directory/{directoryId}/attach — Assign screen view to directory
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/attach-screen-views-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: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
directoryId | path | string | required | UUID of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/directory/%7BdirectoryId%7D/attach \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/feed — Assign screen view to feed
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/create-screen-view-feed
Assign a screen view to a feed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Request body
application/json · string
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/feed \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '"497f6eca-6276-4993-bfeb-53cbbbba6f08"'
POST /schema-service/v2/screen-views/feeds/{feedId} — Rename screen view feed
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/update-name-feed
Update the name of a screen view feed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
feedId | path | string | required | UUID of a screen view feed |
Request body
application/json · object
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | New name of the feed |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/feeds/%7BfeedId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
DELETE /schema-service/v2/screen-views/feeds/{feedId} — Delete screen view feed
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/deleteFeed
Delete a screen view feed. The screen views currently in this feed are moved to the default feed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_DELETE
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
feedId | path | string | required | UUID of a screen view feed |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/v2/screen-views/feeds/%7BfeedId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/scheduler/entry — Schedule object
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/schedule-object
Add a schedule to a document or screen view.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Request body
application/json · schema-service-SchedulerRequest
| Field | Type | Required | Description |
|---|---|---|---|
externalId | string | optional | UUID of the screen view or document that the schedule applies to |
type | enum<"SCREENVIEW", "DOCUMENT"> | optional | Type of the scheduled object |
schedule | object | optional | Configuration of the schedule |
Responses
| Status | Description |
|---|---|
200 application/json | Schedule added |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/scheduler/entry \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"externalId":"3200d382-adfe-4314-ab30-798cdd0fcdb5","type":"SCREENVIEW","schedule":{"enabled":true,"endDate":"2019-08-24T14:15:22Z","endType":"NEVER","parts":[{"startDay":1,"startTime":"08:18:03","endDay":1,"endTime":44283}],"periodType":"ENTIRE","startDate":"2019-08-24T14:15:22Z","startType":"NOW","timezone":"Europe/Warsaw"}}'
GET /schema-service/scheduler/entry/{objectType}/{objectId} — Get schedule the schedule of an object
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/getschedule-object
Get schedule object.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
objectId | path | string | required | Screen view or document ID |
objectType | path | enum<"SCREENVIEW", "DOCUMENT"> | required | Object type |
Responses
| Status | Description |
|---|---|
200 application/json | Schedule details |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | Object has no schedule; or an exception occurred. |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/scheduler/entry/%7BobjectType%7D/%7BobjectId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/status/finish — Finish screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/finish-screen-view
Finish a screen view. A finished document is no longer displayed.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/finish \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/status/resume — Resume screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/resume-screen-view
Resume a screen view that was paused.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/resume \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/status/activate — Activate screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/activate-screen-view
Activate a screen view. It can be displayed to customers.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/activate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/v2/screen-views/{screenViewId}/status/pause — Pause screen view
/api-reference/loyalty-and-engagement#tag/Screen-views/operation/pause-screen-view
Pause a screen view. Until resumed, it can't be displayed to customers.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/v2/screen-views/%7BscreenViewId%7D/status/pause \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
Catalogs
GET /catalogs/bags/{catalogId}/csv — Get all items as CSV file
/api-reference/data-management#tag/Catalogs/operation/getItemsCSV
Download a CSV with all items in the catalog. The unique identifier of an item is saved in the item_key column.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
delimiter | query | string | optional | The delimiter to use in csv. You can use ; or ,. Default: ,
|
Responses
| Status | Description |
|---|---|
200 text/csv | CSV file. The unique identifier of an item is in the item_key column.
|
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/csv?delimiter=SOME_STRING_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /catalogs/bags/{catalogId}/items/upload — Add items from CSV
/api-reference/data-management#tag/Catalogs/operation/uploadItems
Upload items to a catalog from a CSV file
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_UPDATE
User role permission required: assets_catalogs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body
multipart/form-data · object
| Field | Type | Required | Description |
|---|---|---|---|
itemKey | string | required | The name of the CSV column that contains unique identifiers. Slashes (/) are not allowed in the identifier values.
|
file | string | required | CSV file |
Responses
| Status | Description |
|---|---|
200 application/json | Upload status |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/upload \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: multipart/form-data' \
--form itemKey=string \
--form file=string
GET /catalogs/bags — Get catalogs
/api-reference/data-management#tag/Catalogs/operation/getBags
Retrieve all catalogs from the Workspace. You can filter and sort the results.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
searchBy | query | string | optional | A search string. You can search the catalogs by their name or the first or last name of the author. |
orderBy | query | enum<"id", "author", "lastModified", "creationDate"> | optional | The parameter to order the results by. Order is always ascending. |
offset | query | integer | optional | The offset for the search. For example, if your limit is 10 and you want to retrieve the third page of items, set the offset to 20. Items with indexes 20 to 29 are returned (the first item on the first page has the index 0).
|
limit | query | integer | optional | The maximum number of items to include in the response. offset must be defined. Default: 100
|
Responses
| Status | Description |
|---|---|
200 application/json | List of catalogs |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/catalogs/bags?searchBy=SOME_STRING_VALUE&orderBy=SOME_STRING_VALUE&offset=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /catalogs/bags — Add catalog
/api-reference/data-management#tag/Catalogs/operation/addBag
Create a new, empty catalog.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_CREATE
User role permission required: assets_catalogs: create
Request body (required)
application/json · catalogs-addBag
| Field | Type | Required | Description |
|---|---|---|---|
name | string | optional | Catalog name |
Responses
| Status | Description |
|---|---|
200 application/json | Details of the created catalog |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/bags \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"string"}'
DELETE /catalogs/bags — Delete catalogs
/api-reference/data-management#tag/Catalogs/operation/deleteBagByIds
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Request body (required)
application/json · array<string>
Responses
| Status | Description |
|---|---|
200 application/json | Deletion status |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/bags \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '[1199,1200,1201]'
GET /catalogs/bags/{catalogId}/keys — Get catalog keys
/api-reference/data-management#tag/Catalogs/operation/getKeysByBag
Retrieve the list of keys from a catalog.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Responses
| Status | Description |
|---|---|
200 application/json | List of keys |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/keys \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /catalogs/bags/{catalogId} — Get catalog info
/api-reference/data-management#tag/Catalogs/operation/getBagById
Retrieve the metadata of a catalog
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Responses
| Status | Description |
|---|---|
200 application/json | Details of the catalog |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /catalogs/bags/{catalogId} — Delete catalog
/api-reference/data-management#tag/Catalogs/operation/deleteBagById
Delete a single catalog. This operation is irreversible.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Responses
| Status | Description |
|---|---|
200 application/json | Deletion status |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /catalogs/bags/{catalogId}/items — Get items from catalog
/api-reference/data-management#tag/Catalogs/operation/getItemsByBag
Retrieve the entries from a single catalog.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
itemKey | query | string | optional | Filter by the value of the unique identifier of the item (exact match) |
offset | query | integer | optional | The offset for the search. For example, if your limit is 10 and you want to retrieve the third page of items, set the offset to 20. Items with indexes 20 to 29 are returned (the first item on the first page has the index 0).
|
limit | query | integer | optional | The maximum number of items to include in the response. offset must be defined. Default: 100
|
Responses
| Status | Description |
|---|---|
200 application/json | A list of items in the catalog |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items?itemKey=SOME_STRING_VALUE&offset=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /catalogs/bags/{catalogId}/items — Add item
/api-reference/data-management#tag/Catalogs/operation/addItems
Add a single item to the catalog.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_ITEM_BATCH_CATALOG_CREATE
User role permission required: assets_catalogs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body (required)
application/json · catalogs-addItem
JSON object with any number of key/value pairs
| Field | Type | Required | Description |
|---|---|---|---|
itemKey | string | required | The value of the unique key of the item.
Slashes (/) are not allowed in the value.
In the Synerise Portal, this value is saved under Primary key.
|
value | object | required | Properties of the item. Can be an empty object. |
Responses
| Status | Description |
|---|---|
200 application/json | Upload status |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"itemKey":"sku1357","value":{"itemCategory":"smartphone","itemColor":"blue"}}'
POST /catalogs/bags/{catalogId}/items/batch — Batch add items
/api-reference/data-management#tag/Catalogs/operation/addItemsBatch
Add a number of items at once.
For better performance, we recommend using the /v1/async/bags/{catalogId}/items endpoint.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_ITEM_BATCH_CATALOG_CREATE
User role permission required: assets_catalogs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body (required)
application/json · array<catalogs-addItem>
An array of JSON objects with any number of key/value pairs
Responses
| Status | Description |
|---|---|
200 application/json | Upload status |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/batch \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '[{"itemKey":"sku1357","value":{"itemCategory":"smartphone","itemColor":"blue"}}]'
PATCH /catalogs/bags/{catalogId}/enrichment/fields — Update enrichment fields
/api-reference/data-management#tag/Catalogs/operation/updateEnrichmentFields
Change enrichment fields for given mapping
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_MAPPING_CATALOG_CREATE
User role permission required: assets_catalogs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body
application/json · catalogs-enrichmentUpdateRequest
| Field | Type | Required | Description |
|---|---|---|---|
action | string | optional | |
paramKey | string | optional | |
enrichmentFields | array<string> | optional |
Responses
| Status | Description |
|---|---|
200 application/json | Upload status |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/enrichment/fields \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"action":"string","paramKey":"string","enrichmentFields":["string"]}'
GET /catalogs/bags/{catalogId}/items/itemKey/{itemKey} — Get single item by itemKey
/api-reference/data-management#tag/Catalogs/operation/getItemByKey
Retrieve a single item from a catalog by using the item key (unique identifier of an item in the catalog, for example a product's SKU) of the entry in the Synerise database.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
itemKey | path | string | required | itemKey parameter of the item to retrieve
|
Responses
| Status | Description |
|---|---|
200 application/json | A single item |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/itemKey/%7BitemKey%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /catalogs/bags/{catalogId}/items/itemKey/{itemKey} — Delete single item by itemKey
/api-reference/data-management#tag/Catalogs/operation/deleteItemByItemKey
Delete a single item by itemKey (unique identifier of an item in the catalog, for example a product's SKU).
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
itemKey | path | string | required | itemKey parameter of the item to delete
|
Responses
| Status | Description |
|---|---|
200 application/json | Success |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/itemKey/%7BitemKey%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /catalogs/bags/{catalogId}/items/{itemId} — Get single item by database ID
/api-reference/data-management#tag/Catalogs/operation/getItem
Retrieve a single item from a catalog by using the ID of the entry in the Synerise database. If you want to retrieve an item by its unique identifier in the catalog, use /bags/{catalogId}/items/itemKey/{itemKey}.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
itemId | path | integer | required | ID of the item. This is the ID of the entry in the Synerise
database, not the unique identifier that you're using in your
catalog. The itemId is available in the id field of the catalog item when you retrieve items from a catalog:
{
"creationDate": "2020-09-30T11:31:16.314Z",
"id": 73753, // this is the itemId
"itemKey": "uniqueValue",
"lastModified": null,
"value": "{\"exampleKey\":\"uniqueValue\",\"exampleKey2\":\"exampleValue\"}",
"bag": {
"author": "authorName",
"creationDate": "2020-09-30T10:52:31.264Z",
"id": 1053, // this is the ID of the catalog
"lastModified": "2020-09-30T11:41:11.808Z",
"name": "sampleCatalog"
}
},
|
Responses
| Status | Description |
|---|---|
200 application/json | A single item |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/%7BitemId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /catalogs/bags/{catalogId}/items/{itemId} — Update single item by database ID
/api-reference/data-management#tag/Catalogs/operation/updateItem
Update a single item from a catalog by using the ID of the entry in the Synerise database.
Update requests are processed according to the time they reach the service.
This means that updates from the synchronous /bags/{catalogId}/items/{itemId} endpoint may overwrite asynchronous operations (see /v1/async/* endpoints) which were sent earlier and queued due to high traffic.
This behavior also applies to requests from Automation and AI feed synchronization, which use the asynchronous mechanism.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_UPDATE
User role permission required: assets_catalogs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
itemId | path | integer | required | ID of the item. This is the ID of the entry in the Synerise
database, not the unique identifier that you're using in your
catalog. The itemId is available in the id field of the catalog item when you retrieve items from a catalog:
{
"creationDate": "2020-09-30T11:31:16.314Z",
"id": 73753, // this is the itemId
"itemKey": "uniqueValue",
"lastModified": null,
"value": "{\"exampleKey\":\"uniqueValue\",\"exampleKey2\":\"exampleValue\"}",
"bag": {
"author": "authorName",
"creationDate": "2020-09-30T10:52:31.264Z",
"id": 1053, // this is the ID of the catalog
"lastModified": "2020-09-30T11:41:11.808Z",
"name": "sampleCatalog"
}
},
|
Request body
application/json · object
JSON object with any number of key/value pairs
Responses
| Status | Description |
|---|---|
200 application/json | A single item |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/%7BitemId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"property1":null,"property2":null}'
DELETE /catalogs/bags/{catalogId}/items/{itemId} — Delete single item by database ID
/api-reference/data-management#tag/Catalogs/operation/deleteItem
Delete a single item by ID.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
itemId | path | integer | required | ID of the item. This is the ID of the entry in the Synerise
database, not the unique identifier that you're using in your
catalog. The itemId is available in the id field of the catalog item when you retrieve items from a catalog:
{
"creationDate": "2020-09-30T11:31:16.314Z",
"id": 73753, // this is the itemId
"itemKey": "uniqueValue",
"lastModified": null,
"value": "{\"exampleKey\":\"uniqueValue\",\"exampleKey2\":\"exampleValue\"}",
"bag": {
"author": "authorName",
"creationDate": "2020-09-30T10:52:31.264Z",
"id": 1053, // this is the ID of the catalog
"lastModified": "2020-09-30T11:41:11.808Z",
"name": "sampleCatalog"
}
},
|
Responses
| Status | Description |
|---|---|
200 application/json | Success |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/items/%7BitemId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /catalogs/items — Get all items
/api-reference/data-management#tag/Catalogs/operation/getItemsByBusinessProfileid
Retrieve all items from all catalogs in the Workspace.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
offset | query | integer | optional | The offset for the search. For example, if your limit is 10 and you want to retrieve the third page of items, set the offset to 20. Items with indexes 20 to 29 are returned (the first item on the first page has the index 0).
|
limit | query | integer | optional | The maximum number of items to include in the response. offset must be defined. Default: 100
|
Responses
| Status | Description |
|---|---|
200 application/json | A list of items in the Workspace |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/catalogs/items?offset=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /catalogs/bags/{catalogId}/mappings — Add mapping
/api-reference/data-management#tag/Catalogs/operation/addMapping
Add a new mapping. Mappings can be used to enrich events with data from catalogs.
For example, you can map the product's SKU from the "product.buy" event to the column in the catalog that includes the SKU. Whenever someone purchases an item with that SKU, you can extract data from the catalog (for example, the product's brand and category) and show that additional in the event log in the Synerise GUI.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_MAPPING_CATALOG_CREATE
User role permission required: assets_catalogs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body
application/json · catalogs-eventData
| Field | Type | Required | Description |
|---|---|---|---|
action | string | optional | The action field of the event
|
paramKey | string | optional | The parameter in the event that corresponds to the catalog column with the unique identifiers |
Responses
| Status | Description |
|---|---|
200 application/json | Mapping data |
400 text/plain | Invalid or insufficient data |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/bags/%7BcatalogId%7D/mappings \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"action":"transaction.charge","paramKey":"sku"}'
GET /catalogs/mappings — Get all mappings
/api-reference/data-management#tag/Catalogs/operation/getMappingsByBP
Retrieve all mappings from the Workspace.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_MAPPING_CATALOG_READ
User role permission required: assets_catalogs: read
Responses
| Status | Description |
|---|---|
200 application/json | List of mappings |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/catalogs/mappings \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /catalogs/mappings/{bpActionParamKey} — Delete mapping
/api-reference/data-management#tag/Catalogs/operation/deleteMappingBykey
Delete a single mapping.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_MAPPING_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
bpActionParamKey | path | string | required | The unique identifier of the mapping |
Responses
| Status | Description |
|---|---|
200 application/json | Deletion status |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/mappings/%7BbpActionParamKey%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /catalogs/itemDetail — Get single item by unique key
/api-reference/data-management#tag/Catalogs/operation/getItemDetailByKey
Retrieve a single item from a catalog by using the value of the unique identifier (key) in the catalog. If you want to retrieve an item by its ID in the Synerise database, use /bags/{catalogId}/items/{itemId}.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: ITEMS_COLLECTOR_CATALOG_READ
User role permission required: assets_catalogs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogName | query | string | required | Name of the catalog |
key | query | string | required | Value of the unique identifier of the item in the catalog. When you retrieve an item using this endpoint, the identifier is in the itemKey field.
{
"creationDate": "2020-09-30T11:31:16.314Z",
"id": 73753,
"itemKey": "uniqueValue", // this is the value of the key
"lastModified": null,
"value": "{\"exampleKey\":\"uniqueValue\",\"exampleKey2\":\"exampleValue\"}",
"bag": {
"author": "authorName",
"creationDate": "2020-09-30T10:52:31.264Z",
"id": 1053,
"lastModified": "2020-09-30T11:41:11.808Z",
"name": "sampleCatalog"
}
},
|
Responses
| Status | Description |
|---|---|
200 application/json | A single item |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/catalogs/itemDetail?catalogName=SOME_STRING_VALUE&key=SOME_STRING_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /catalogs/v2/bags/{catalogId}/items — Delete all items from a catalog
/api-reference/data-management#tag/Catalogs/operation/deleteBagsItemsV2
Delete all the contents of a catalog.
Information about the keys (columns) remains.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Responses
| Status | Description |
|---|---|
200 application/json | Items deleted. The metaData object always shows a totalCount of 1, regardless of the number of deleted items.
|
4xx application/json | A problem occurred. See the error message for details. |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/v2/bags/%7BcatalogId%7D/items \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /catalogs/v2/bags/{catalogId}/items/batch — Delete items by itemKeys
/api-reference/data-management#tag/Catalogs/operation/deleteItemsByItemKeys
Delete items by itemKeys (unique identifier of an item in the catalog, for example a product's SKU). In the Synerise Portal, it's called the Primary key.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_DELETE
User role permission required: assets_catalogs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body
application/json · array<string>
Array of itemKeys
Responses
| Status | Description |
|---|---|
204 | No Content |
401 application/json | Unauthorized: token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden: insufficient permissions; wrong consumer scope |
404 text/plain | Entity not found |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/catalogs/v2/bags/%7BcatalogId%7D/items/batch \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '["string"]'
PATCH /catalogs/v2/bags/{catalogId}/enable/filtering — Enable filtering
/api-reference/data-management#tag/Catalogs/operation/enableFilteringV2
Enable filtering for a catalog on selected fields
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_UPDATE
User role permission required: assets_catalogs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body
application/json · catalogs-enableFilteringRequest
| Field | Type | Required | Description |
|---|---|---|---|
fields | array<string> | optional |
Responses
| Status | Description |
|---|---|
200 application/json | Upload status |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/catalogs/v2/bags/%7BcatalogId%7D/enable/filtering \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"fields":["string"]}'
PATCH /catalogs/v2/bags/{catalogId}/disable/filtering — Disable filtering
/api-reference/data-management#tag/Catalogs/operation/disableFilteringV2
Disable filtering for a catalog on selected fields
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: CATALOGS_CATALOG_UPDATE
User role permission required: assets_catalogs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body
application/json · catalogs-disableFilteringRequest
| Field | Type | Required | Description |
|---|---|---|---|
removeFilters | boolean | optional |
Responses
| Status | Description |
|---|---|
200 application/json | Number of rows changed |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/catalogs/v2/bags/%7BcatalogId%7D/disable/filtering \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"removeFilters":true}'
POST /catalogs/v1/async/bags/{catalogId}/item — Add or update item asynchronously
/api-reference/data-management#tag/Catalogs/operation/addItemAsync
Add a single item asynchronously to the catalog. If the item already exists, it's entirely overwritten by the item you send.
Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints (for example, /bags/{catalogId}/items/{itemId} may overwrite asynchronous operations which were sent earlier and queued due to high traffic.
This behavior also applies to requests from Automation and AI feed synchronization, which use the asynchronous mechanism.
The request body can't exceed 256KB.
API consumers: Synerise User, Workspace (Business Profile)
API key permissions required (at least one): CATALOGS_ITEM_BATCH_CREATE, CATALOGS_ITEM_BATCH_CATALOG_CREATE
User role permission required: assets_catalogs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body (required)
application/json · catalogs-addItem
JSON object with any number of key/value pairs
| Field | Type | Required | Description |
|---|---|---|---|
itemKey | string | required | The value of the unique key of the item.
Slashes (/) are not allowed in the value.
In the Synerise Portal, this value is saved under Primary key.
|
value | object | required | Properties of the item. Can be an empty object. |
Responses
| Status | Description |
|---|---|
204 | Operation added to queue |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/v1/async/bags/%7BcatalogId%7D/item \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"itemKey":"sku1357","value":{"itemCategory":"smartphone","itemColor":"blue"}}'
PATCH /catalogs/v1/async/bags/{catalogId}/item — Add or update (partial) item asynchronously
/api-reference/data-management#tag/Catalogs/operation/updateItemAsync
Update a single item asynchronously to the catalog. If the item doesn't exist, it will be created.
This endpoint allows you to perform partial updates - you can send only the properties that you want to add/modify, instead of sending the entire item.
Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints (for example, /bags/{catalogId}/items/{itemId} may overwrite asynchronous operations which were sent earlier and queued due to high traffic.
This behavior also applies to requests from Automation and AI feed synchronization, which use the asynchronous mechanism.
The request body can't exceed 256KB.
API consumers: Synerise User, Workspace (Business Profile)
API key permissions required (at least one): CATALOGS_ITEM_BATCH_UPDATE, CATALOGS_ITEM_BATCH_CATALOG_UPDATE
User role permission required: assets_catalogs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body (required)
application/json · catalogs-addItem
JSON object with any number of key/value pairs
| Field | Type | Required | Description |
|---|---|---|---|
itemKey | string | required | The value of the unique key of the item.
Slashes (/) are not allowed in the value.
In the Synerise Portal, this value is saved under Primary key.
|
value | object | required | Properties of the item. Can be an empty object. |
Responses
| Status | Description |
|---|---|
204 | Operation added to queue |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/catalogs/v1/async/bags/%7BcatalogId%7D/item \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"itemKey":"sku1357","value":{"itemCategory":"smartphone","itemColor":"blue"}}'
POST /catalogs/v1/async/bags/{catalogId}/items — Batch add or update items asynchronously
/api-reference/data-management#tag/Catalogs/operation/addItemsBatchAsync
Add a number of items asynchronously at once. If an item already exists, it's entirely overwritten by the item you send.
Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints (for example, /bags/{catalogId}/items/{itemId} may overwrite asynchronous operations which were sent earlier and queued due to high traffic.
This behavior also applies to requests from Automation and AI feed synchronization, which use the asynchronous mechanism.
The request body can't exceed 256KB.
API consumers: Synerise User, Workspace (Business Profile)
API key permissions required (at least one): CATALOGS_ITEM_BATCH_CREATE, CATALOGS_ITEM_BATCH_CATALOG_CREATE
User role permission required: assets_catalogs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body (required)
application/json · array<catalogs-addItem>
JSON object with any number of key/value pairs
Responses
| Status | Description |
|---|---|
204 | Operation added to queue |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/catalogs/v1/async/bags/%7BcatalogId%7D/items \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '[{"itemKey":"sku1357","value":{"itemCategory":"smartphone","itemColor":"blue"}}]'
PATCH /catalogs/v1/async/bags/{catalogId}/items — Batch add or update (partial) items asynchronously
/api-reference/data-management#tag/Catalogs/operation/updateItemsBatchAsync
Update a number of items asynchronously at once. If an item doesn't exist, it will be created.
This endpoint allows you to perform partial updates - you can send only the properties that you want to add/modify, instead of sending the entire item.
Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints (for example, /bags/{catalogId}/items/{itemId} may overwrite asynchronous operations which were sent earlier and queued due to high traffic.
This behavior also applies to requests from Automation and AI feed synchronization, which use the asynchronous mechanism.
The request body can't exceed 256KB.
API consumers: Synerise User, Workspace (Business Profile)
API key permissions required (at least one): CATALOGS_ITEM_BATCH_UPDATE, CATALOGS_ITEM_BATCH_CATALOG_UPDATE
User role permission required: assets_catalogs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
catalogId | path | integer | required | ID of the catalog |
Request body (required)
application/json · array<catalogs-addItem>
JSON object with any number of key/value pairs
Responses
| Status | Description |
|---|---|
204 | Operation added to queue |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/catalogs/v1/async/bags/%7BcatalogId%7D/items \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '[{"itemKey":"sku1357","value":{"itemCategory":"smartphone","itemColor":"blue"}}]'
Asset tags
GET /tags-collector/directories — Get all directories
/api-reference/data-management#tag/Asset-tags/operation/getTagDirectories
Gets all tag directories from the Workspace.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_READ
User role permission required: assets_tags: read
Responses
| Status | Description |
|---|---|
200 application/json | OK |
401 | Unauthorized |
403 | Forbidden |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/tags-collector/directories
POST /tags-collector/directories — Create directory
/api-reference/data-management#tag/Asset-tags/operation/createDirectory
Creates a directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_CREATE
User role permission required: assets_tags: create
Request body (required)
application/json · tags-collector-DirectoryCreateRequest-collector
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Name of the directory |
params | object | optional | Free-form parameters |
type | string | optional | HashID of the directory type |
Responses
| Status | Description |
|---|---|
201 application/json | Created |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/tags-collector/directories \
--header 'content-type: application/json' \
--data '{"name":"string","params":{"property1":"string","property2":"string"},"type":"string"}'
GET /tags-collector/directories/types — Get directory types
/api-reference/data-management#tag/Asset-tags/operation/getDirectoryTypes
Gets all directory types.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_READ
User role permission required: assets_tags: read
Responses
| Status | Description |
|---|---|
200 application/json | OK |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/tags-collector/directories/types
POST /tags-collector/directories/types — Create directory type
/api-reference/data-management#tag/Asset-tags/operation/createDirectoryType
Creates a directory type.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_UPDATE
User role permission required: assets_tags: update
Request body (required)
application/json · tags-collector-DirectoryTypeCreateRequest-collector
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Name of the directory type |
Responses
| Status | Description |
|---|---|
201 application/json | Created |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/tags-collector/directories/types \
--header 'content-type: application/json' \
--data '{"name":"string"}'
PATCH /tags-collector/directories/{directoryHash} — Update directory
/api-reference/data-management#tag/Asset-tags/operation/updateDirectory
Updates a directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_UPDATE
User role permission required: assets_tags: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryHash | path | string | required | Hash ID of the directory |
Request body (required)
application/json · tags-collector-DirectoryUpdateRequest-collector
| Field | Type | Required | Description |
|---|---|---|---|
name | string | optional | Name of the directory |
params | object | optional | Free-form parameters |
Responses
| Status | Description |
|---|---|
200 application/json | OK |
204 | No Content |
401 | Unauthorized |
403 | Forbidden |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/tags-collector/directories/%7BdirectoryHash%7D \
--header 'content-type: application/json' \
--data '{"name":"string","params":{"property1":"string","property2":"string"}}'
DELETE /tags-collector/directories/{directoryHash} — Delete directory
/api-reference/data-management#tag/Asset-tags/operation/deleteDirectory
Deletes a directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_DELETE
User role permission required: assets_tags: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryHash | path | string | required | Hash ID of the directory |
Responses
| Status | Description |
|---|---|
200 | OK |
204 | No Content |
401 | Unauthorized |
403 | Forbidden |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/tags-collector/directories/%7BdirectoryHash%7D
GET /tags-collector/directories/{directoryHash}/tags — Get tags from directory
/api-reference/data-management#tag/Asset-tags/operation/getTagsUsingGET
Retrieve tags from a directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_READ
User role permission required: assets_tags: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryHash | path | string | required | Hash ID of the directory |
Responses
| Status | Description |
|---|---|
200 application/json | OK |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/tags-collector/directories/%7BdirectoryHash%7D/tags
POST /tags-collector/directories/{directoryHash}/tags — Assign tags to directory
/api-reference/data-management#tag/Asset-tags/operation/assignTagsUsingPOST
Assign tags to a directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_UPDATE
User role permission required: assets_tags: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryHash | path | string | required | Hash ID of the directory |
Request body (required)
application/json · array<string>
Responses
| Status | Description |
|---|---|
200 | OK |
201 | Created |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/tags-collector/directories/%7BdirectoryHash%7D/tags \
--header 'content-type: application/json' \
--data '["string"]'
DELETE /tags-collector/directories/{directoryHash}/tags — Unassign tags from directory
/api-reference/data-management#tag/Asset-tags/operation/unassignTagUsingDELETE
Unassign tags from a directory. This does not delete the tags or the directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_DELETE
User role permission required: assets_tags: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryHash | path | string | required | Hash ID of the directory |
Request body (required)
application/json · array<string>
Responses
| Status | Description |
|---|---|
200 | OK |
204 | No Content |
401 | Unauthorized |
403 | Forbidden |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/tags-collector/directories/%7BdirectoryHash%7D/tags \
--header 'content-type: application/json' \
--data '["string"]'
PUT /tags-collector/directories/{directoryHash}/types — Update directory type
/api-reference/data-management#tag/Asset-tags/operation/updateTypeUsingPUT
Update the type of a directory.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_DIRECTORY_UPDATE
User role permission required: assets_tags: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
directoryHash | path | string | required | Hash ID of the directory |
Request body (required)
application/json · tags-collector-DirectoryTypeUpdateRequest-collector
| Field | Type | Required | Description |
|---|---|---|---|
directoryTypeHash | string | optional | HashID of the directory type |
Responses
| Status | Description |
|---|---|
200 application/json | OK |
201 | Created |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/tags-collector/directories/%7BdirectoryHash%7D/types \
--header 'content-type: application/json' \
--data '{"directoryTypeHash":"string"}'
GET /tags-collector/tags — Get tag list
/api-reference/data-management#tag/Asset-tags/operation/getTagList
Gets a paginated list of tags that can be assigned to assets, for example promotions.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_TAG_READ
User role permission required: assets_tags: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | optional | Page to retrieve |
size | query | integer | optional | Limit of items per page |
directoryType | query | string | optional | Directory type |
Responses
| Status | Description |
|---|---|
200 application/json | OK |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/tags-collector/tags?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&directoryType=SOME_STRING_VALUE'
POST /tags-collector/tags — Create tag
/api-reference/data-management#tag/Asset-tags/operation/createTag
Creates a tag that can be assigned to assets, for example promotions.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_TAG_CREATE
User role permission required: assets_tags: create
Request body (required)
application/json · tags-collector-TagCreateRequest-collector
| Field | Type | Required | Description |
|---|---|---|---|
color | string | optional | Hex code of the tag color |
description | string | optional | Description of the tag |
directory | string | optional | Hash ID of the directory where the tag is assigned |
icon | string | optional | URL of the tag's icon |
priority | integer | required | Tag priority. Lower values mean higher priority. |
value | string | required | Name of the tag |
Responses
| Status | Description |
|---|---|
201 application/json | Created |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/tags-collector/tags \
--header 'content-type: application/json' \
--data '{"color":"string","description":"string","directory":"string","icon":"string","priority":0,"value":"string"}'
PATCH /tags-collector/tags/{tagHash} — Update tag
/api-reference/data-management#tag/Asset-tags/operation/updateTag
Updates a tag definition.
API consumers: Synerise User, Profile (Client), Workspace (Business Profile)
API key permission required: TAGS_COLLECTOR_TAG_UPDATE
User role permission required: assets_tags: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
tagHash | path | string | required | HashID of a tag |
Request body (required)
application/json · tags-collector-TagUpdateRequest-collector
| Field | Type | Required | Description |
|---|---|---|---|
color | string | optional | Hex code of the tag color |
description | string | optional | Description of the tag |
directory | string | optional | Hash ID of the directory where the tag is assigned |
icon | string | optional | URL of the tag's icon |
priority | integer | optional | Tag priority. Lower values mean higher priority. |
value | string | optional | Name of the tag |
Responses
| Status | Description |
|---|---|
200 application/json | OK |
401 | Unauthorized |
403 | Forbidden |
Example request (cURL)
curl --request PATCH \
--url https://api.synerise.com/tags-collector/tags/%7BtagHash%7D \
--header 'content-type: application/json' \
--data '{"color":"string","description":"string","directory":"string","icon":"string","priority":0,"value":"string"}'
Tags
GET /v4/clients/tags — Get all tags
/api-reference/data-management#tag/Tags/operation/GetAllTags
Retrieve all tags that can be assigned to profiles.
This endpoint is available from version 4.1.0
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: API_TAGS_CLIENT_READ
User role permission required: client_tags: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
Api-Version | header | enum<"4.4"> | required |
Responses
| Status | Description |
|---|---|
200 application/json | A list of tags |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/v4/clients/tags \
--header 'Api-Version: SOME_STRING_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /v4/tags — Create a tag
/api-reference/data-management#tag/Tags/operation/createTagUsingPOST
Create a new tag that can be assigned to profiles. If you try to create a tag that already exists, the response is the existing tag.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: API_TAGS_CREATE
User role permission required: client_tags: create
Request body
application/json · api-service-TagCreate-apiv4
| Field | Type | Required | Description |
|---|---|---|---|
name | string | required | Name of the tag |
color | string | optional | Display color of the tag; hexadecimal value |
Responses
| Status | Description |
|---|---|
200 application/json | Tag created |
400 application/json | Invalid or incomplete data |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
415 application/json | Unsupported Media Type |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/v4/tags \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"name":"nice tag","color":"#0768ff"}'
PUT /v4/tags/{tagID} — Update a tag
/api-reference/data-management#tag/Tags/operation/updateTagPUT
Update a tag. This method currently only allows modifying the color field.
If the tag has been already deleted, the response is a 404 error.
Important: This method doesn't update global tags (not related to any workspace). If you try to update a global tag, the response is a 404 error.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: API_TAGS_CREATE
User role permission required: client_tags: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
tagID | path | integer | required | ID of the tag |
Request body
application/json · api-service-TagUpdate-apiv4
| Field | Type | Required | Description |
|---|---|---|---|
color | string | optional | Display color of the tag; hexadecimal value |
Responses
| Status | Description |
|---|---|
200 application/json | Tag updated |
400 application/json | Invalid or incomplete data |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
404 application/json | Tag doesn't exist or it is a global tag (not related to any workspace). |
415 application/json | Unsupported Media Type |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/v4/tags/645 \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"color":"#0768ff"}'
DELETE /v4/tags/{tagID} — Remove a tag
/api-reference/data-management#tag/Tags/operation/deleteTagDELETE
Remove a tag definition from the workspace.
If the tag has been already deleted, the response is a 404 error.
Important: This method does not remove global tag (not related to any workspace). In this case, the response is a 404 error.
Note: After removing a tag definition, the tag is still cached for a while. In that time, it is still possible for a while to remove or add this tag in profiles.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: API_TAGS_CREATE
User role permission required: client_tags: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
tagID | path | integer | required | ID of the tag |
Responses
| Status | Description |
|---|---|
202 | Tag removed |
400 application/json | Invalid or incomplete data |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
404 application/json | Tag doesn't exist, was already deleted, or is a global tag (not related to any workspace). |
415 application/json | Unsupported Media Type |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/v4/tags/645 \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /v4/clients/{clientId}/tags — Get profile tags
/api-reference/data-management#tag/Tags/operation/getClientTagsUsingGET
Retrieve a list of tags assigned to a profile.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: API_TAGS_READ
User role permission required: client_tags: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
clientId | path | integer | required | The ID of the profile Upcoming breaking change (effective July 6, 2026): Synerise is introducing changes to how user identifiers and UUIDs are handled. These changes may affect profiles with accented or diacritical characters in identifiers, profiles with leading or trailing whitespace in identifiers, and profiles with duplicate UUIDs. For details and recommended actions, see Upcoming changes to identifier and UUID handling. |
Responses
| Status | Description |
|---|---|
200 application/json | OK |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/v4/clients/434428563/tags \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /v4/clients/{clientId}/tags/{tagID} — Assign tag to profile
/api-reference/data-management#tag/Tags/operation/assignTagPOST
Assign a tag to a profile.
API consumers: Workspace (Business Profile), Synerise User
API key permission required: API_ASSIGN_TAGS_EXECUTE
User role permission required: client_tags: execute
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
clientId | path | integer | required | The ID of the profile Upcoming breaking change (effective July 6, 2026): Synerise is introducing changes to how user identifiers and UUIDs are handled. These changes may affect profiles with accented or diacritical characters in identifiers, profiles with leading or trailing whitespace in identifiers, and profiles with duplicate UUIDs. For details and recommended actions, see Upcoming changes to identifier and UUID handling. |
tagID | path | integer | required | ID of the tag |
Responses
| Status | Description |
|---|---|
200 application/json | Tag assigned |
400 application/json | Profile not found or data malformed |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
404 application/json | Tag not found |
415 application/json | Unsupported Media Type |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/v4/clients/434428563/tags/645
DELETE /v4/clients/{clientId}/tags/{tagID} — Remove tag from profile
/api-reference/data-management#tag/Tags/operation/removeClientTagDELETE
API consumers: Workspace (Business Profile), Synerise User
API key permission required: API_ASSIGN_TAGS_EXECUTE
User role permission required: client_tags: execute
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
clientId | path | integer | required | The ID of the profile Upcoming breaking change (effective July 6, 2026): Synerise is introducing changes to how user identifiers and UUIDs are handled. These changes may affect profiles with accented or diacritical characters in identifiers, profiles with leading or trailing whitespace in identifiers, and profiles with duplicate UUIDs. For details and recommended actions, see Upcoming changes to identifier and UUID handling. |
tagID | path | integer | required | ID of the tag |
Responses
| Status | Description |
|---|---|
202 | Tag removed |
400 application/json | Profile not found or data malformed |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions (when PII protection is enabled, PII permissions are required in addition to the permissions listed in the method description) |
404 application/json | Tag not found |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/v4/clients/434428563/tags/645
Uploader
POST /uploader-service/clients/files/by/{identifierType} — Add files for dynamic attachments
/api-reference/asset-management#tag/Uploader/operation/addClientFiles
Add base64 encoded files to the storage for use in dynamic attachments. You can send up to 5 files in one request. An attachment.upload event is generated when you use the endpoint.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: UPLOADER_SERVICE_STORAGE_CREATE
User role permission required: assets_explorer: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifierType | path | enum<"id", "uuid", "email", "custom_identify"> | required | Type of the profile identifier. The value is sent in identifierValue in the request body.
|
Request body
application/json · uploader-service-AddFile
| Field | Type | Required | Description |
|---|---|---|---|
files | array<uploader-service-InputFile> | required | Up to 5 files can be sent at once. The order in the array is reflected in the generated attachment.upload event, and the files from the event can then be accessed by their index in the array.
|
ttlInMinutes | number | required | Defines the amount of time (expressed in minutes) the file or files are available. If this parameter is not sent, the default time to live of the files is 30 days. |
identifierValue | string | required | Contains the value of a customer identifier a file is dedicated for. The type of the value is defined in the path parameters of the endpoint (identifierType). If id is used, it must be sent as a string.
|
parameters | object | required | Custom parameters of the files. |
Responses
| Status | Description |
|---|---|
200 application/json | File or files uploaded successfully |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/uploader-service/clients/files/by/%7BidentifierType%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"files":[{"content":"77u/dGhpcyBpcyBqdXN0IGFuIGV4YW1wbGUgZmlsZQ==","mimetype":"text/csv","filename":"myexamplefile","extension":"csv"}],"ttlInMinutes":0,"identifierValue":"1234","parameters":{}}'
POST /uploader-service/storages/{container}/upload — Upload file
/api-reference/asset-management#tag/Uploader/operation/uploadFile
Upload a new file to Synerise.
IMPORTANT: Due to technical limitations, the code examples on the right don't include the form data. If you use the examples, remember to add it.
Example correct cURL request:
curl --location 'https://api.synerise.com/uploader-service/storages/default/upload' \ --header 'Authorization: Bearer YOUR_TOKEN' \ --form 'uploads=@"/Users/currentuser/Downloads/image.png"'
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: UPLOADER_SERVICE_STORAGE_CREATE
User role permission required: assets_explorer: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
container | path | string | required | Name of the container in which the file will be stored |
Request body
multipart/form-data · object
| Field | Type | Required | Description |
|---|---|---|---|
uploads | string | required | File to upload, binary |
Responses
| Status | Description |
|---|---|
200 application/json | File description |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/uploader-service/storages/default/upload \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: multipart/form-data' \
--form uploads=string
GET /uploader-service/storage-files/list — List files from workspace
/api-reference/asset-management#tag/Uploader/operation/getFiles
Retrieve a list of all files in the Workspace.
API consumer: Synerise User
User role permission required: assets_explorer: read
Responses
| Status | Description |
|---|---|
200 application/json | Files |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/uploader-service/storage-files/list \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /uploader-service/v2/list — List files from workspace
/api-reference/asset-management#tag/Uploader/operation/getFilesV2
Retrieve a list of all files in the Workspace.
API consumer: Synerise User
User role permission required: assets_explorer: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | optional | page number |
limit | query | integer | optional | number of elements in a page |
sortBy | query | string | optional | field to sort by and order |
mediatype | query | string | optional | filter by media type |
extensions | query | string | optional | filter by extension files |
search | query | string | optional | file id or substring of file name |
Responses
| Status | Description |
|---|---|
200 application/json | Files |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/uploader-service/v2/list?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE&sortBy=createdAt%3Aasc&mediatype=image%2Fjpeg&extensions=pdf%2Cjpeg&search=SOME_STRING_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /uploader-service/storage-files/delete-by-uuid — Remove files
/api-reference/asset-management#tag/Uploader/operation/removeFiles
Delete one or more files.
IMPORTANT: Due to technical limitations, the code examples on the right don't include the form data. If you use the examples, remember to add it.
Example correct cURL request:
curl --location 'https://api.synerise.com/uploader-service/storage-files/delete-by-uuid' \ --header 'Authorization: Bearer YOUR_TOKEN' \ --form 'uuids="[\"0ac106beb55c401bac8bc8244e367512\",\"03dc506041e24c3cae284fd3f6611082\"]"'
API consumer: Synerise User
User role permission required: assets_explorer: delete
Request body
multipart/form-data · object
| Field | Type | Required | Description |
|---|---|---|---|
uuids | string | required | File UUIDs, without dashes (stringified JSON array) Example:["0ac106beb55c401bac8bc8244e367512","03dc506041e24c3cae284fd3f6611082"]
|
Responses
| Status | Description |
|---|---|
200 application/json | Results of the operation |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/uploader-service/storage-files/delete-by-uuid \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: multipart/form-data' \
--form uuids=string
POST /uploader-service/storage-files/add-star-by-uuid — Add stars
/api-reference/asset-management#tag/Uploader/operation/addStarByUUID
Add a star to one or more files. Stars are used to mark files as favorite and make them easier to find.
IMPORTANT: Due to technical limitations, the code examples on the right don't include the form data. If you use the examples, remember to add it.
Example correct cURL request:
curl --location 'https://api.synerise.com/uploader-service/storage-files/add-star-by-uuid' \ --header 'Authorization: Bearer YOUR_TOKEN' \ --form 'uuids="[\"0ac106beb55c401bac8bc8244e367512\",\"03dc506041e24c3cae284fd3f6611082\"]"'
API consumer: Synerise User
User role permission required: assets_explorer: update
Request body
multipart/form-data · object
| Field | Type | Required | Description |
|---|---|---|---|
uuids | string | required | File UUIDs, without dashes (stringified JSON array) Example:["0ac106beb55c401bac8bc8244e367512","03dc506041e24c3cae284fd3f6611082"]
|
Responses
| Status | Description |
|---|---|
200 application/json | Results of the operation |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/uploader-service/storage-files/add-star-by-uuid \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: multipart/form-data' \
--form uuids=string
POST /uploader-service/storage-files/remove-star-by-uuid — Remove stars
/api-reference/asset-management#tag/Uploader/operation/removeStarByUUID
Remove stars from one or more files.
IMPORTANT: Due to technical limitations, the code examples on the right don't include the form data. If you use the examples, remember to add it.
Example correct cURL request:
curl --location 'https://api.synerise.com/uploader-service/storage-files/remove-star-by-uuid' \ --header 'Authorization: Bearer YOUR_TOKEN' \ --form 'uuids="[\"0ac106beb55c401bac8bc8244e367512\",\"03dc506041e24c3cae284fd3f6611082\"]"'
API consumer: Synerise User
User role permission required: assets_explorer: update
Request body
multipart/form-data · object
| Field | Type | Required | Description |
|---|---|---|---|
uuids | string | required | File UUIDs, without dashes (stringified JSON array) Example:["0ac106beb55c401bac8bc8244e367512","03dc506041e24c3cae284fd3f6611082"]
|
Responses
| Status | Description |
|---|---|
200 application/json | Results of the operation |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/uploader-service/storage-files/remove-star-by-uuid \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: multipart/form-data' \
--form uuids=string
Documents (legacy)
POST /schema-service/document/preview — Preview document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentPreview
Preview a document.
API consumer: Synerise User
User role permission required: assets_docs: update
Request body (required)
application/json · schema-service-previewReq
| Field | Type | Required | Description |
|---|---|---|---|
content | object | required | JSON content of the document |
schema | string | optional | Schema of the document (called "Type" in the Synerise Web Application) |
Responses
| Status | Description |
|---|---|
200 application/json | JSON content of the document |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/document/preview \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"content":{},"schema":"containers"}'
POST /schema-service/document/{uuid} — Create document version (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentVersionPost
Create a new version of a document. To modify an existing version of a document, see Update document.
API consumer: Synerise User
User role permission required: assets_docs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
uuid | path | string | required | Document UUID. The UUID is the same for all versions of a document. |
Request body
application/json · object
| Field | Type | Required | Description |
|---|---|---|---|
content | object | optional | JSON content of the document |
description | string | optional | Document description. Can be an empty string. |
name | string | optional | Document name |
version | string | optional | Document version |
Responses
| Status | Description |
|---|---|
200 */* | Document |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/document/%7Buuid%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"content":{},"description":"string","name":"string","version":"string"}'
GET /schema-service/document/{id} — Get raw document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/rawDocumentGet
Retrieve a single document in raw form (inserts are not processed).
API consumer: Synerise User
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer | required | Document ID. Each version of a document has a unique ID. |
Responses
| Status | Description |
|---|---|
200 application/json | Raw document |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/document/%7Bid%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/document/{uuid}/{id} — Update document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentUpdatePost
Update an existing version of a document. This endpoint does not create a new version. To create a new version, see Create document version.
API consumer: Synerise User
User role permission required: assets_docs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
uuid | path | string | required | Document UUID. The UUID is the same for all versions of a document. |
id | path | integer | required | Document ID. Each version of a document has a unique ID. |
Request body
application/json · object
| Field | Type | Required | Description |
|---|---|---|---|
content | object | optional | JSON content of the document |
description | string | optional | Document description. Can be an empty string. |
name | string | optional | Document name |
Responses
| Status | Description |
|---|---|
200 application/json | Updated document |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/document/%7Buuid%7D/%7Bid%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"content":{},"description":"string","name":"string"}'
GET /schema-service/v2/document/slug/{slug}/content — Generate processed document (only content) (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/generateContentDocumentGetV2
Retrieve a generated document, without any metadata in the response. Inserts are processed.
API consumers: Synerise User, Profile (Client), Anonymous Profile, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_DOCUMENT_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Slug of the document |
Responses
| Status | Description |
|---|---|
200 application/json | Generated document |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/document/slug/%7Bslug%7D/content \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/document/slug/{slug}/content — Generate processed document (only content) (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/generateContentDocumentGet
Retrieve a generated document, without any metadata in the response. Inserts are processed.
API consumers: Synerise User, Profile (Client), Anonymous Profile, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_DOCUMENT_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Document slug |
version | query | string | optional | Document version. If not provided, defaults to the latest version. |
page | query | integer | optional | Page of items in the document |
limit | query | integer | optional | Limit of items per page |
Responses
| Status | Description |
|---|---|
200 application/json | Generated document |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/schema-service/document/slug/%7Bslug%7D/content?version=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/document/slug/{slug}/content — Generate processed document (only content) (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/generateContentDocumentPost
Retrieve a generated document, without any metadata in the response. Inserts are processed.
API consumers: Synerise User, Profile (Client), Anonymous Profile, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_DOCUMENT_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Document slug |
version | query | string | optional | Document version. If not provided, defaults to the latest version. |
page | query | integer | optional | Page of items in the document |
limit | query | integer | optional | Limit of items per page |
Request body
application/json · object
Responses
| Status | Description |
|---|---|
200 application/json | Generated document |
Example request (cURL)
curl --request POST \
--url 'https://api.synerise.com/schema-service/document/slug/%7Bslug%7D/content?version=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"property1":"string","property2":"string"}'
GET /schema-service/document/certification/{slug} — Generate certification document with specific slug. (deprecated)
Retrieve a certification document. Inserts are processed.
API consumers: Synerise User, Profile (Client)
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Document slug |
version | query | string | optional | Document version. If not provided, defaults to the latest version. |
page | query | integer | optional | Page of items in the document |
limit | query | integer | optional | Limit of items per page |
Responses
| Status | Description |
|---|---|
200 application/json | Generated document |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/schema-service/document/certification/%7Bslug%7D?version=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/document/slug/{slug} — Generate processed document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/generateDocumentGet
Retrieve a generated document. Inserts are processed.
API consumers: Synerise User, Profile (Client), Anonymous Profile
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Document slug |
version | query | string | optional | Document version. If not provided, defaults to the latest version. |
page | query | integer | optional | Page of items in the document |
limit | query | integer | optional | Limit of items per page |
Responses
| Status | Description |
|---|---|
200 application/json | Generated document |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/schema-service/document/slug/%7Bslug%7D?version=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/document/slug/{slug} — Generate processed document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/generateDocumentPost
Retrieve a generated document. Inserts are processed.
API consumers: Synerise User, Profile (Client), Anonymous Profile
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Document slug |
version | query | string | optional | Document version. If not provided, defaults to the latest version. |
page | query | integer | optional | Page of items in the document |
limit | query | integer | optional | Limit of items per page |
Request body
application/json · object
Responses
| Status | Description |
|---|---|
200 application/json | Generated document |
Example request (cURL)
curl --request POST \
--url 'https://api.synerise.com/schema-service/document/slug/%7Bslug%7D?version=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"property1":"string","property2":"string"}'
GET /schema-service/document/by-schema/{schema} — Generate documents by schema (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentsBySchemaGet
Generate all documents assigned to a schema. The content is processed.
API consumers: Synerise User, Profile (Client), Anonymous Profile
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
schema | path | string | required | Schema name |
version | query | string | optional | Document version. If not defined, all document versions are generated. |
page | query | integer | optional | Page of items in the document |
limit | query | integer | optional | Limit of items per page |
Responses
| Status | Description |
|---|---|
200 application/json | Generated documents |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/schema-service/document/by-schema/%7Bschema%7D?version=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/document — List documents (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/listDocumentsGet
List all documents in the workspace. You can sort and filter the results. The content is raw.
API consumer: Synerise User
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
search | query | string | optional | Search term. The following fields are searched: name, description, version, slug.
|
sortBy | query | enum<"slug:asc", "slug:desc", "name:asc", "name:desc", …> | optional | Parameter to sort by |
limit | query | string | optional | The maximum number of items to retrieve for pagination |
offset | query | string | optional | Offset for pagination. The first item of the first page has the offset of 0.
|
Responses
| Status | Description |
|---|---|
200 application/json | List of documents |
Example request (cURL)
curl --request GET \
--url 'https://api.synerise.com/schema-service/document?search=SOME_STRING_VALUE&sortBy=SOME_STRING_VALUE&limit=SOME_STRING_VALUE&offset=SOME_STRING_VALUE' \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/document — Create document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/createDocumentPostOld
Create a new document.
API consumer: Synerise User
User role permission required: assets_docs: create
Request body
application/json · schema-service-createDocumentReq
| Field | Type | Required | Description |
|---|---|---|---|
slug | string | required | Slug of the document |
schema | string | required | Schema of the document (called "Type" in the Synerise Web Application) |
name | string | required | Document name |
description | string | required | Document description. Can be an empty string. |
content | object | required | JSON content of the document |
version | string | required | Document version |
Responses
| Status | Description |
|---|---|
200 application/json | Document data |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/document \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"slug":"basket","schema":"containers","name":"string","description":"string","content":{},"version":"string"}'
DELETE /schema-service/document — Delete documents (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentsDelete
You can delete one or more documents. This operation is irreversible.
API consumer: Synerise User
User role permission required: assets_docs: delete
Request body (required)
application/json · array<string>
Responses
| Status | Description |
|---|---|
200 application/json | Deletion status |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/document \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '["string"]'
GET /schema-service/document/{uuid}/versions — Get document versions (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentVersionsGet
Retrieve all versions of a document. The content is raw.
API consumer: Synerise User
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
uuid | path | string | required | Document UUID. The UUID is the same for all versions of a document. |
Responses
| Status | Description |
|---|---|
200 application/json | List of document versions |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/document/%7Buuid%7D/versions \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/document/{uuid}/publish — Publish document (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/documentPublishPost
Publish a document. You must provide a version in the request body.
API consumer: Synerise User
User role permission required: assets_docs: update
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
uuid | path | string | required | Document UUID. The UUID is the same for all versions of a document. |
Request body (required)
application/json · string
Responses
| Status | Description |
|---|---|
200 application/json | Publishing status |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/document/%7Buuid%7D/publish \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '"1.0.5"'
GET /schema-service/document/slug/{slug}/check — Check if slug is correct (deprecated)
/api-reference/asset-management#tag/Documents-(legacy)/operation/slugCheckGet
Check if the provided slug exists.
API consumer: Synerise User
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | required | Document slug |
Responses
| Status | Description |
|---|---|
200 application/json | True or False |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/document/slug/%7Bslug%7D/check \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
Screen views (legacy)
GET /schema-service/screenViews — Get all screen views (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/listOfScreenViews
Retrieve a paginated list of all screen view campaigns in the workspace.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
limit | query | string | required | The maximum number of items to retrieve for pagination |
page | query | integer | required | The number of the page to retrieve |
status | query | enum<"DRAFT", "ACTIVE", "SCHEDULED", "PAUSED", …> | optional | Filter the results by screen view status |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
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 REPLACE_BEARER_TOKEN'
POST /schema-service/screenViews/byKeys — Get screen views by keys (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/listOfScreenViewsByKeys
Retrieve list of screen view campaigns by keys in the workspace.
API consumer: Synerise User
User role permission required: assets_docs: read
Request body
application/json · array<string>
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/byKeys \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '["string"]'
GET /schema-service/screenViews/single/{screenViewId}/{screenViewVersion} — Get screen view (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/getScreenViewByVersion
Retrieve the details of a single screen view campaign.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/screenViews/single/%7BscreenViewId%7D/%7BscreenViewVersion%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/screenViews/versions/{screenViewId} — Get screen view versions (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/listOfScreenViewVersions
Retrieve all versions of a screen view campaign.
API consumers: Synerise User, Workspace (Business Profile)
API key permission required: SCHEMA_SERVICE_SCHEMA_READ
User role permission required: assets_docs: read
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
limit | query | string | required | The maximum number of items to retrieve for pagination |
page | query | integer | required | The number of the page to retrieve |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
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 REPLACE_BEARER_TOKEN'
GET /schema-service/screenViews/generate — Generate screen view (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/generateScreenViewGet
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: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/screenViews/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
GET /schema-service/v2/screenViews/generate — 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: Workspace (Business Profile), Synerise User, Profile (Client), Anonymous Profile
API key permission required: SCHEMA_SERVICE_SCHEMA_CREATE
User role permission required: assets_docs: create
Responses
| Status | Description |
|---|---|
200 application/json | Processed JSON content |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request GET \
--url https://api.synerise.com/schema-service/v2/screenViews/generate \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/screenViews/createNew — Initialize screen view (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/initializeScreenViewPost
Create a new screen view campaign. It is created as a blank, without any conditions.
API consumer: Synerise User
User role permission required: assets_docs: create
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/createNew \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
POST /schema-service/screenViews/content/{screenViewId}/{screenViewVersion}/copyFromExistingScreenView — Copy content (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/copyContent
Copy content to a screen view draft from another screen view.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Request body
application/json · schema-service-versionedScreenViewKey
| Field | Type | Required | Description |
|---|---|---|---|
screenViewId | string | optional | UUID of the screen view |
screenViewVersion | string | optional | Version of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/content/%7BscreenViewId%7D/%7BscreenViewVersion%7D/copyFromExistingScreenView \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"screenViewId":"481855c5-f86e-453f-a0fa-d34b5a2be745","screenViewVersion":"string"}'
POST /schema-service/screenViews/content/{screenViewId}/{screenViewVersion} — Add content (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/createContent
Add content to a screen view draft.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Request body
application/json · schema-service-ScreenViewContent
| Field | Type | Required | Description |
|---|---|---|---|
json | object | required | 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 | array<string> | required | An array of documents. If groups is used, this array must be empty.
|
data | array<any> | optional | An array of documents or Brickworks records |
groups | array<schema-service-DocumentGroupId> | required | An array of document groups, If documents is used, this array must be empty.
|
groupsOrder | boolean | optional | 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
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/content/%7BscreenViewId%7D/%7BscreenViewVersion%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"json":{"property1":null,"property2":null},"documents":["string"],"data":[{"slug":"basket"}],"groups":["43c97b25-4a10-45d0-99b7-d472eea2bb24"],"groupsOrder":false}'
POST /schema-service/screenViews/audience/{screenViewId}/{screenViewVersion} — Add audience (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/createAudience
Define the audience for a screen view draft.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Request body
application/json · schema-service-Audience
| Field | Type | Required | Description |
|---|---|---|---|
targetType | enum<"SEGMENT", "QUERY", "ALL"> | required | 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<string> | optional | An array of segmentation IDs. Used with targetType: SEGMENT
|
query | string | optional | Stringified analysis object for the segmentation analytics engine. Used with targetType: QUERY. Refer to the Analytics API Reference.
|
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/audience/%7BscreenViewId%7D/%7BscreenViewVersion%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"targetType":"SEGMENT","segments":["string"],"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}}]}}]}}"}'
POST /schema-service/screenViews/publish/{screenViewId}/{screenViewVersion} — Publish screen view (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/publishScreenView
Make the screen view accessible to customers.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Request body
application/json · schema-service-publishRequest
| Field | Type | Required | Description |
|---|---|---|---|
overwrite | boolean | required | Currently unused |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/publish/%7BscreenViewId%7D/%7BscreenViewVersion%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"overwrite":true}'
POST /schema-service/screenViews/copyDraftFromExistingScreenView — Copy draft from existing screen view (deprecated)
Copy a duplicate of an active screen view. The duplicate is in draft status.
API consumer: Synerise User
User role permission required: assets_docs: create
Request body
application/json · schema-service-versionedScreenViewKey
| Field | Type | Required | Description |
|---|---|---|---|
screenViewId | string | optional | UUID of the screen view |
screenViewVersion | string | optional | Version of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/copyDraftFromExistingScreenView \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"screenViewId":"481855c5-f86e-453f-a0fa-d34b5a2be745","screenViewVersion":"string"}'
POST /schema-service/screenViews/createDraftFromExistingScreenView — Create draft from existing screen view (deprecated)
Create a duplicate of an active screen view. The duplicate is in draft status.
API consumer: Synerise User
User role permission required: assets_docs: create
Request body
application/json · schema-service-versionedScreenViewKey
| Field | Type | Required | Description |
|---|---|---|---|
screenViewId | string | optional | UUID of the screen view |
screenViewVersion | string | optional | Version of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/createDraftFromExistingScreenView \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '{"screenViewId":"481855c5-f86e-453f-a0fa-d34b5a2be745","screenViewVersion":"string"}'
PUT /schema-service/screenViews/single/{screenViewId}/{screenViewVersion}/description — Update screen view description (deprecated)
Update the description of a screen view. You can update the descriptions of active screen views.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Request body
application/json · string
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/schema-service/screenViews/single/%7BscreenViewId%7D/%7BscreenViewVersion%7D/description \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data '"string"'
PUT /schema-service/screenViews/single/{screenViewId}/{screenViewVersion}/priority — Update screen view priority (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/updatePriorityOfScreenView
Update the priority of a screen view. You can update the priorities of active screen views.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Request body (required)
application/json · integer
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request PUT \
--url https://api.synerise.com/schema-service/screenViews/single/%7BscreenViewId%7D/%7BscreenViewVersion%7D/priority \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: application/json' \
--data 0
POST /schema-service/screenViews/discardChanges/{screenViewId}/{screenViewVersion} — Discard changes (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/discardChanges
Discard the changes made in a version of a screen view.
API consumer: Synerise User
User role permission required: assets_docs: create
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request POST \
--url https://api.synerise.com/schema-service/screenViews/discardChanges/%7BscreenViewId%7D/%7BscreenViewVersion%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /schema-service/screenViews/delete/{screenViewId} — Delete screen view (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/deleteScreenView
Delete a screen view and all its versions. This operation is irreversible.
API consumer: Synerise User
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/screenViews/delete/%7BscreenViewId%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
DELETE /schema-service/screenViews/single/delete/{screenViewId}/{screenViewVersion} — Delete screen view version (deprecated)
/api-reference/loyalty-and-engagement#tag/Screen-views-(legacy)/operation/deleteSingleScreenView
Delete a version of a screen view.
API consumer: Synerise User
User role permission required: assets_docs: delete
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
screenViewId | path | string | required | UUID of the screen view |
screenViewVersion | path | string | required | Version of the screen view |
Responses
| Status | Description |
|---|---|
200 application/json | Success |
400 application/json | See error message for details |
401 application/json | Unauthorized: wrong consumer scope; token missing/expired/invalid; invalid API key; etc. |
403 application/json | Forbidden; insufficient permissions |
404 application/json | Resource not found |
500 application/json | See error message for details |
Example request (cURL)
curl --request DELETE \
--url https://api.synerise.com/schema-service/screenViews/single/delete/%7BscreenViewId%7D/%7BscreenViewVersion%7D \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'