Brickworks (Jan 13, 2026, 11:18:42 AM)

Download OpenAPI specification:

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

If you need help with our services, feel free to contact us at [email protected].

Brickworks: Schemas

Schemas govern the content of records.

Get schema by appId

Retrieve the details of a schema.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

Responses

Request samples

curl --request GET \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaAppId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "appId": "string",
  • "displayName": "string",
  • "description": "string",
  • "fields": {
    },
  • "displayConfiguration": {
    },
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "version": 0,
  • "audience": {
    },
  • "schemaType": "SIMPLE"
}

Get schema by ID

Retrieve the details of a schema.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Responses

Request samples

curl --request GET \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "appId": "string",
  • "displayName": "string",
  • "description": "string",
  • "fields": {
    },
  • "displayConfiguration": {
    },
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "version": 0,
  • "audience": {
    },
  • "schemaType": "SIMPLE"
}

Update schema

Update a schema.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Request Body schema: application/json

Schema properties to update

displayName
required
string (SchemaDisplayName)

Schema name shown to users in the Synerise Portal

description
string (SchemaDescription)

Schema description

object (FieldsObject)

The content of the schema.

object (SchemaDisplayConfiguration)

The layout details of the schema

object (Audience)

Definition of the profiles which can access content created from this schema.

Responses

Request samples

Content type
application/json
{
  • "displayName": "string",
  • "description": "string",
  • "fields": {
    },
  • "displayConfiguration": {
    },
  • "audience": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "appId": "string",
  • "displayName": "string",
  • "description": "string",
  • "fields": {
    },
  • "displayConfiguration": {
    },
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "version": 0,
  • "audience": {
    },
  • "schemaType": "SIMPLE"
}

Delete schema

Delete a schema.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Responses

Request samples

curl --request DELETE \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "errorCode": "string",
  • "httpStatus": 0,
  • "message": "string",
  • "traceId": "string",
  • "errors": [
    ],
  • "source": {
    },
  • "details": {
    },
  • "field": "string"
}

Get schemas

Retrieve a list of schemas. You can paginate the results, filter by schema type, and search for a phrase in schema names.


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

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

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

Authorizations:
JWTBasic
query Parameters
limit
integer <int32>
Default: 50

Limit of items per page

page
integer <int32> >= 1
Default: 1

The number of the page to retrieve

search
string

A string to search for in schema display names and app IDs

sortBy
string
Default: "updatedAt:desc"
Example: sortBy=name:asc

You can change the default sorting. The sorting direction is selected by adding asc or desc, for example sortBy=createdAt:desc.

You can sort by:

  • searchable fields
  • id
  • createdAt
  • updatedAt

If you're using an RSQL filter, you can also sort by:

  • schemaId
  • slug
  • title
  • publishedAt
  • schemaVersion
  • recordVersion
schemaTypes
string
Enum: "SIMPLE" "VERSIONED"

Comma-separated list of schema types to filter the results. By default, all types are retrieved.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas?limit=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE&search=SOME_STRING_VALUE&sortBy=name%3Aasc&schemaTypes=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

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

Create schema

Create a new schema


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

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

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

Authorizations:
JWTBasic
Request Body schema: application/json
appId
required
string (SchemaAppId)

App ID of the schema. This is used as the identifier of the schema and must be unique. This ID cannot be changed after the schema is created.
In the Synerise Portal, this parameter is called API name.

displayName
required
string (SchemaDisplayName)

Schema name shown to users in the Synerise Portal

description
string (SchemaDescription)

Schema description

object (FieldsObject)

The content of the schema.

object (SchemaDisplayConfiguration)

The layout details of the schema

object (Audience)

Definition of the profiles which can access content created from this schema.

isSimpleSchema
boolean
Default: false

Simple schemas don't allow versioning records. Versioned schemas let you save draft versions of a record, so you can work on editing it without affecting the currently published version of the record.

Responses

Request samples

Content type
application/json
{
  • "appId": "string",
  • "displayName": "string",
  • "description": "string",
  • "fields": {
    },
  • "displayConfiguration": {
    },
  • "audience": {
    },
  • "isSimpleSchema": false
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "appId": "string",
  • "displayName": "string",
  • "description": "string",
  • "fields": {
    },
  • "displayConfiguration": {
    },
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "version": 0,
  • "audience": {
    },
  • "schemaType": "SIMPLE"
}

Brickworks: Records

Records store data.

Preview object (as workspace)

Preview an object by sending field values.

When generating a preview, fields are only generated when you send their value or they have a default value. Values saved in the record are not used in the preview.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

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

Profile identifier type

Request Body schema: application/json
identifierValue
required
string

Value of the profile identifier selected in identifierType (profile ID is sent as a string)

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

required
object (PreviewValues)

The values for fields in the record, to be used when generating the preview.

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "context": [
    ],
  • "fieldContext": {
    },
  • "values": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Get records by schema ID

Retrieve records from a schema. You can paginate, sort, and refine the results. By default, the records are sorted by status (published > scheduled > draft > unpublished) and then by last update time.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

query Parameters
limit
integer <int32>
Default: 50

Limit of items per page

page
integer <int32> >= 1
Default: 1

The number of the page to retrieve

filters
string

An RSQL query to filter the results.

search
string

A string to search for in the values of fields that were configured as searchable in the schema.

sortBy
string
Default: "updatedAt:desc"
Example: sortBy=name:asc

You can change the default sorting. The sorting direction is selected by adding asc or desc, for example sortBy=createdAt:desc.

You can sort by:

  • searchable fields
  • id
  • createdAt
  • updatedAt

If you're using an RSQL filter, you can also sort by:

  • schemaId
  • slug
  • title
  • publishedAt
  • schemaVersion
  • recordVersion
ids
string

Comma-separated list of IDs (in UUID format) to filter results through

statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records?limit=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE&filters=SOME_STRING_VALUE&search=SOME_STRING_VALUE&sortBy=name%3Aasc&ids=SOME_STRING_VALUE&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

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

Add record to schema by ID

Add a record to a schema.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Request Body schema: application/json

Add record to schema by ID

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

required
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

status
required
string (RecordStatus)
Enum: "DRAFT" "SCHEDULED" "PUBLISHED" "UNPUBLISHED"

Status of the record. When generating an object from a record, the last published version is used.

  • In simple schemas, a record can only be published. Updates overwrite the record without changing the version number.
  • In versioned schemas:
    • A published record can't be edited directly. You need to send an update which changes to the draft status (this increases the version number, and the existing published version isn't modified), and then publish again.
    • An unpublished record can't be published immediately. It must receive the draft status first.
    • When unpublishing a record, you can't edit any data in the record.
actionOnSchedule
string (ScheduleType)
Value: "PUBLISH"
object (ScheduleEntry)

Time when the record is published - for example, every Monday, from 12:00 to 14:00

name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

Responses

Request samples

Content type
application/json
{
  • "slug": "string",
  • "values": {
    },
  • "status": "DRAFT",
  • "actionOnSchedule": "PUBLISH",
  • "schedule": {
    },
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Duplicate record by schema ID + record ID

Create a copy of a record. The name of the copy is {recordName} - copy


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

Responses

Request samples

curl --request POST \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records/%7BRecordId%7D/duplicate \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Get record by schema appId + record ID

Retrieve a record. You can select the fields that you want to include in the response.

If the record has multiple versions in different publishing states, the first available version is returned according to publishing status priority:

  • PUBLISHED
  • DRAFT
  • SCHEDULED
  • UNPUBLISHED You can use the statuses parameter to limit the lookup.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

query Parameters
fields
Array of strings

A comma-separated list of fields to retrieve. If not defined, all fields are included in the response.

statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaAppId%7D/records/%7BRecordId%7D?fields=SOME_ARRAY_VALUE&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Update record by schema appId + record ID

Update a record.

In a versioned schema, you can't directly edit a published record. To make changes, update the status to DRAFT (you can include the other changes that you want to make). This creates a new version of the record (without modifying the currently published version), which you can edit and publish.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

Request Body schema: application/json
status
string (RecordStatus)
Enum: "DRAFT" "SCHEDULED" "PUBLISHED" "UNPUBLISHED"

Status of the record. When generating an object from a record, the last published version is used.

  • In simple schemas, a record can only be published. Updates overwrite the record without changing the version number.
  • In versioned schemas:
    • A published record can't be edited directly. You need to send an update which changes to the draft status (this increases the version number, and the existing published version isn't modified), and then publish again.
    • An unpublished record can't be published immediately. It must receive the draft status first.
    • When unpublishing a record, you can't edit any data in the record.
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

actionOnSchedule
string (ScheduleType)
Value: "PUBLISH"
object (ScheduleEntry)

Time when the record is published - for example, every Monday, from 12:00 to 14:00

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

lastUpdatedAt
string <date-time>

If updating a draft keeping the draft status, you can check if it was updated by another request in the meantime:

  1. Fetch a draft record.
  2. Copy the updatedAt property into your update request.
  3. Make other changes in the record.
  4. Send the update.
  5. If the update time you sent is different than the one in the database, it means that the record was updated since you last fetched it. Your update is ignored and error BKW-029 (HTTP 409) is returned.
name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

fromState
string (RecordStatus)
Enum: "DRAFT" "SCHEDULED" "PUBLISHED" "UNPUBLISHED"

Status of the record. When generating an object from a record, the last published version is used.

  • In simple schemas, a record can only be published. Updates overwrite the record without changing the version number.
  • In versioned schemas:
    • A published record can't be edited directly. You need to send an update which changes to the draft status (this increases the version number, and the existing published version isn't modified), and then publish again.
    • An unpublished record can't be published immediately. It must receive the draft status first.
    • When unpublishing a record, you can't edit any data in the record.

Responses

Request samples

Content type
application/json
{
  • "status": "DRAFT",
  • "values": {
    },
  • "actionOnSchedule": "PUBLISH",
  • "schedule": {
    },
  • "slug": "string",
  • "lastUpdatedAt": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "fromState": "DRAFT"
}

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Delete record by schema appId + record ID

Delete a record permanently. If you want to unpublish a record instead, send an update request to change the status to UNPUBLISHED


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

Responses

Request samples

curl --request DELETE \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaAppId%7D/records/%7BRecordId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "errorCode": "string",
  • "httpStatus": 0,
  • "message": "string",
  • "traceId": "string",
  • "errors": [
    ],
  • "source": {
    },
  • "details": {
    },
  • "field": "string"
}

Preview object from slug (as workspace)

Preview an object by sending field values.

When generating a preview, fields are only generated when you send their value or they have a default value. Values saved in the record are not used in the preview.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordSlug
required
string [ 6 .. 40 ] characters

Unique (within a schema) identifier of a record. May change between record versions.

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

Profile identifier type

Request Body schema: application/json
identifierValue
required
string

Value of the profile identifier selected in identifierType (profile ID is sent as a string)

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

required
object (PreviewValues)

The values for fields in the record, to be used when generating the preview.

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "context": [
    ],
  • "fieldContext": {
    },
  • "values": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Batch create or update records (async)

This endpoint can only be used for simple schemas.

  • If a record included in this request already exists, it's entirely overwritten by the content from the request (including the slug - if the slug isn't sent, it's removed).
  • Provide the current identifier value (if your request changes the identifier, provide the one from before the change).
  • The record must conform with the schema.

Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints may overwrite asynchronous operations which were sent earlier and queued due to high traffic.

In some edge cases, changing a record may fail further in the backend, even when this endpoint returns no errors. In such cases, contact Support.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Request Body schema: application/json

Record data

Array
required
object

Definition of a unique identifier of a record

required
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

Batch create or partially update record (async)

This endpoint can only be used for simple schemas.

Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints may overwrite asynchronous operations which were sent earlier and queued due to high traffic.

In some edge cases, changing a record may fail further in the backend, even when this endpoint returns no errors. In such cases, contact Support.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Request Body schema: application/json

Record data

Array
required
object

Definition of a unique identifier of a record

required
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

Get record by schema appId + record slug

Retrieve a record. You can select the fields that you want to include in the response.

If the record has multiple versions in different publishing states, the first available version is returned according to publishing status priority:

  • PUBLISHED
  • DRAFT
  • SCHEDULED
  • UNPUBLISHED You can use the statuses parameter to limit the lookup.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordSlug
required
string [ 6 .. 40 ] characters

Unique (within a schema) identifier of a record. May change between record versions.

query Parameters
fields
Array of strings

A comma-separated list of fields to retrieve. If not defined, all fields are included in the response.

statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaAppId%7D/records/%7BRecordSlug%7D?fields=SOME_ARRAY_VALUE&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Get records by schema appId

Retrieve records from a schema. You can paginate, sort, and refine the results. By default, the records are sorted by status (published > scheduled > draft > unpublished) and then by last update time.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

query Parameters
limit
integer <int32>
Default: 50

Limit of items per page

page
integer <int32> >= 1
Default: 1

The number of the page to retrieve

filters
string

An RSQL query to filter the results.

search
string

A string to search for in the values of fields that were configured as searchable in the schema.

sortBy
string
Default: "updatedAt:desc"
Example: sortBy=name:asc

You can change the default sorting. The sorting direction is selected by adding asc or desc, for example sortBy=createdAt:desc.

You can sort by:

  • searchable fields
  • id
  • createdAt
  • updatedAt

If you're using an RSQL filter, you can also sort by:

  • schemaId
  • slug
  • title
  • publishedAt
  • schemaVersion
  • recordVersion
ids
string

Comma-separated list of IDs (in UUID format) to filter results through

statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaAppId%7D/records?limit=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE&filters=SOME_STRING_VALUE&search=SOME_STRING_VALUE&sortBy=name%3Aasc&ids=SOME_STRING_VALUE&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

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

Add record to schema by appId

Add a record to a schema


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

Request Body schema: application/json

Add record to schema

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

required
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

status
required
string (RecordStatus)
Enum: "DRAFT" "SCHEDULED" "PUBLISHED" "UNPUBLISHED"

Status of the record. When generating an object from a record, the last published version is used.

  • In simple schemas, a record can only be published. Updates overwrite the record without changing the version number.
  • In versioned schemas:
    • A published record can't be edited directly. You need to send an update which changes to the draft status (this increases the version number, and the existing published version isn't modified), and then publish again.
    • An unpublished record can't be published immediately. It must receive the draft status first.
    • When unpublishing a record, you can't edit any data in the record.
actionOnSchedule
string (ScheduleType)
Value: "PUBLISH"
object (ScheduleEntry)

Time when the record is published - for example, every Monday, from 12:00 to 14:00

name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

Responses

Request samples

Content type
application/json
{
  • "slug": "string",
  • "values": {
    },
  • "status": "DRAFT",
  • "actionOnSchedule": "PUBLISH",
  • "schedule": {
    },
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Duplicate record by schema appId + record ID

Create a copy of a record. The name of the copy is {recordName} - copy


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

Responses

Request samples

curl --request POST \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaAppId%7D/records/%7BRecordId%7D/duplicate \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Create or update record (async)

This endpoint can only be used for simple schemas.

  • If a record included in this request already exists, it's entirely overwritten by the content from the request (including the slug - if the slug isn't sent, it's removed).
  • Provide the current identifier value (if your request changes the identifier, provide the one from before the change).
  • The record must conform with the schema.

Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints may overwrite asynchronous operations which were sent earlier and queued due to high traffic.

In some edge cases, changing a record may fail further in the backend, even when this endpoint returns no errors. In such cases, contact Support.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Request Body schema: application/json

Record data

required
object

Definition of a unique identifier of a record

required
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "errorCode": "string",
  • "httpStatus": 0,
  • "message": "string",
  • "traceId": "string",
  • "errors": [
    ],
  • "source": {
    },
  • "details": {
    },
  • "field": "string"
}

Create or partially update record (async)

This endpoint can only be used for simple schemas.

  • You can use this endpoint to update a record by sending only the fields which you want to change. Other fields are not affected.
  • This endpoint doesn't validate the data against field-specific settings, such as limits on character count or regex in a string field.

Asynchronous requests are processed according to the time they reach the service.
This means that requests to synchronous endpoints may overwrite asynchronous operations which were sent earlier and queued due to high traffic.

In some edge cases, changing a record may fail further in the backend, even when this endpoint returns no errors. In such cases, contact Support.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

Request Body schema: application/json

Record data

required
object

Definition of a unique identifier of a record

required
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "errorCode": "string",
  • "httpStatus": 0,
  • "message": "string",
  • "traceId": "string",
  • "errors": [
    ],
  • "source": {
    },
  • "details": {
    },
  • "field": "string"
}

Preview object (as any consumer)

Preview an object by sending field values.

When generating a preview, fields are only generated when you send their value or they have a default value. Values saved in the record are not used in the preview.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

Request Body schema: application/json
context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

required
object (PreviewValues)

The values for fields in the record, to be used when generating the preview.

Responses

Request samples

Content type
application/json
{
  • "context": [
    ],
  • "fieldContext": {
    },
  • "values": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Preview object from slug (as any consumer)

Preview an object by sending field values.

When generating a preview, fields are only generated when you send their value or they have a default value. Values saved in the record are not used in the preview.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordSlug
required
string [ 6 .. 40 ] characters

Unique (within a schema) identifier of a record. May change between record versions.

Request Body schema: application/json
identifierValue
required
string

Value of the profile identifier selected in identifierType (profile ID is sent as a string)

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

required
object (PreviewValues)

The values for fields in the record, to be used when generating the preview.

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "context": [
    ],
  • "fieldContext": {
    },
  • "values": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Get record by schema ID + record ID

Retrieve a record. You can select the fields that you want to include in the response.

If the record has multiple versions in different publishing states, the first available version is returned according to publishing status priority:

  • PUBLISHED
  • DRAFT
  • SCHEDULED
  • UNPUBLISHED You can use the statuses parameter to limit the lookup.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

query Parameters
fields
Array of strings

A comma-separated list of fields to retrieve. If not defined, all fields are included in the response.

statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records/%7BRecordId%7D?fields=SOME_ARRAY_VALUE&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Update record by schema ID + record ID

Update a record.

In a versioned schema, you can't directly edit a published record. To make changes, update the status to DRAFT (you can include the other changes that you want to make). This creates a new version of the record (without modifying the currently published version), which you can edit and publish.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

Request Body schema: application/json
status
string (RecordStatus)
Enum: "DRAFT" "SCHEDULED" "PUBLISHED" "UNPUBLISHED"

Status of the record. When generating an object from a record, the last published version is used.

  • In simple schemas, a record can only be published. Updates overwrite the record without changing the version number.
  • In versioned schemas:
    • A published record can't be edited directly. You need to send an update which changes to the draft status (this increases the version number, and the existing published version isn't modified), and then publish again.
    • An unpublished record can't be published immediately. It must receive the draft status first.
    • When unpublishing a record, you can't edit any data in the record.
object (RecordValues)

Values included in the record. Each key is the name of a field. The value must match the configuration of the field in the schema.

Default values aren't explicitly saved in the record or shown in GET requests which retrieve the record, but are returned when an object is generated from the record.

actionOnSchedule
string (ScheduleType)
Value: "PUBLISH"
object (ScheduleEntry)

Time when the record is published - for example, every Monday, from 12:00 to 14:00

slug
string (RecordSlug) [ 6 .. 40 ] characters ^(?!__)[\w\-]+

Unique (within a schema) identifier of a record. Can't be a UUID.

lastUpdatedAt
string <date-time>

If updating a draft keeping the draft status, you can check if it was updated by another request in the meantime:

  1. Fetch a draft record.
  2. Copy the updatedAt property into your update request.
  3. Make other changes in the record.
  4. Send the update.
  5. If the update time you sent is different than the one in the database, it means that the record was updated since you last fetched it. Your update is ignored and error BKW-029 (HTTP 409) is returned.
name
string or null (RecordName) [ 1 .. 255 ] characters

The name of the record. If not defined and there are no fields with useAsRecordName = true, GET requests return Unnamed.

fromState
string (RecordStatus)
Enum: "DRAFT" "SCHEDULED" "PUBLISHED" "UNPUBLISHED"

Status of the record. When generating an object from a record, the last published version is used.

  • In simple schemas, a record can only be published. Updates overwrite the record without changing the version number.
  • In versioned schemas:
    • A published record can't be edited directly. You need to send an update which changes to the draft status (this increases the version number, and the existing published version isn't modified), and then publish again.
    • An unpublished record can't be published immediately. It must receive the draft status first.
    • When unpublishing a record, you can't edit any data in the record.

Responses

Request samples

Content type
application/json
{
  • "status": "DRAFT",
  • "values": {
    },
  • "actionOnSchedule": "PUBLISH",
  • "schedule": {
    },
  • "slug": "string",
  • "lastUpdatedAt": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "fromState": "DRAFT"
}

Response samples

Content type
application/json
{
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Delete record by schema ID + record ID

Delete a record permanently. If you want to unpublish a record instead, send an update request to change the status to UNPUBLISHED


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

Request Body schema: application/json

Delete record

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "errorCode": "string",
  • "httpStatus": 0,
  • "message": "string",
  • "traceId": "string",
  • "errors": [
    ],
  • "source": {
    },
  • "details": {
    },
  • "field": "string"
}

Brickworks: Content generation

You can dynamically generate content from a record in context of a profile.

Generate object from slug (as workspace)

Generate content from the latest published version of a record by processing Jinjava inserts and requests to external sources. Profile data (if needed, for example for Jinjava) is retrieved automatically from the profile declared in the request.

The system looks for values to generate in the following order:

  1. Values in the fieldContext object (used by recommendations and relations).
  2. Values saved in the record.
  3. Values from the default object in the schema.
    This is available for all field types.
  4. Default values nested in the properties of a field in the schema.
    This is available for some complex field types.

The content is always generated according to the latest version of a schema:

  • If fields were deleted from the schema, but they still exist in the record, they are ignored.
  • If fields were added to the schema and they don't exist in the record, their default values are added. If there are no default values, the fields are ignored.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordSlug
required
string [ 6 .. 40 ] characters

Unique (within a schema) identifier of a record. May change between record versions.

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

Profile identifier type

Request Body schema: application/json

Object generation request

identifierValue
required
string

Value of the profile identifier selected in identifierType (profile ID is sent as a string)

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "context": [
    ],
  • "fieldContext": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Generate object from ID (as workspace)

Generate content from the latest published version of a record by processing Jinjava inserts and requests to external sources. Profile data (if needed, for example for Jinjava) is retrieved automatically from the profile declared in the request.

The system looks for values to generate in the following order:

  1. Values in the fieldContext object (used by recommendations and relations).
  2. Values saved in the record.
  3. Values from the default object in the schema.
    This is available for all field types.
  4. Default values nested in the properties of a field in the schema.
    This is available for some complex field types.

The content is always generated according to the latest version of a schema:

  • If fields were deleted from the schema, but they still exist in the record, they are ignored.
  • If fields were added to the schema and they don't exist in the record, their default values are added. If there are no default values, the fields are ignored.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

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

Profile identifier type

Request Body schema: application/json

Object generation request

identifierValue
required
string

Value of the profile identifier selected in identifierType (profile ID is sent as a string)

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

Responses

Request samples

Content type
application/json
{
  • "identifierValue": "string",
  • "context": [
    ],
  • "fieldContext": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Generate object from slug (as any consumer)

Generate content from the latest published version of a record by processing Jinjava inserts and requests to external sources.
If the request is authorized by a profile, the profile data is automatically retrieve for fields which need it (for example, in Jinjava inserts).

The system looks for values to generate in the following order:

  1. Values in the fieldContext object (used by recommendations and relations).
  2. Values saved in the record.
  3. Values from the default object in the schema.
    This is available for all field types.
  4. Default values nested in the properties of a field in the schema.
    This is available for some complex field types.

The content is always generated according to the latest version of a schema:

  • If fields were deleted from the schema, but they still exist in the record, they are ignored.
  • If fields were added to the schema and they don't exist in the record, their default values are added. If there are no default values, the fields are ignored.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordSlug
required
string [ 6 .. 40 ] characters

Unique (within a schema) identifier of a record. May change between record versions.

Request Body schema: application/json

Object generation request

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

Responses

Request samples

Content type
application/json
{
  • "context": [
    ],
  • "fieldContext": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Generate object from ID (as any consumer)

Generate content from the latest published version of a record by processing Jinjava inserts and requests to external sources.
If the request is authorized by a profile, the profile data is automatically retrieve for fields which need it (for example, in Jinjava inserts).

The system looks for values to generate in the following order:

  1. Values in the fieldContext object (used by recommendations and relations).
  2. Values saved in the record.
  3. Values from the default object in the schema.
    This is available for all field types.
  4. Default values nested in the properties of a field in the schema.
    This is available for some complex field types.

The content is always generated according to the latest version of a schema:

  • If fields were deleted from the schema, but they still exist in the record, they are ignored.
  • If fields were added to the schema and they don't exist in the record, their default values are added. If there are no default values, the fields are ignored.

Some data is cached:

  • profile data (even if the profile is updated)
  • responses from external sources
    For details, see the User Guide.

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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaAppId
required
string

Schema appId

RecordId
required
string <uuid>

Record ID

Request Body schema: application/json

Object generation request

context
Array of strings (Context)

List of context strings for a search query

object (FieldContext)

Additional context parameters used in recommendation and relation fields.

Responses

Request samples

Content type
application/json
{
  • "context": [
    ],
  • "fieldContext": {
    }
}

Response samples

Content type
application/json
{
  • "__slug": "string",
  • "__recordVersion": 0,
  • "__publishedAt": "2019-08-24T14:15:22Z",
  • "__updatedAt": "2019-08-24T14:15:22Z",
  • "__schemaId": "2e65eac3-65e7-4f52-a73f-f05393aaf4d6",
  • "__id": "64891eb6-e4fa-4f98-a872-49b7669bd08f",
  • "__schemaVersion": 0,
  • "__createdAt": "2019-08-24T14:15:22Z",
  • "additionalProperties": 0.1
}

Brickworks: External sources

External sources can be used to pull data from a third-party resource when generating content from a record.

List external sources

Retrieve a list of external data sources. You can sort and paginate the results.


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

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

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

Authorizations:
JWTBasic
query Parameters
limit
integer <int32>
Default: 50

Limit of items per page

page
integer <int32> >= 1
Default: 1

The number of the page to retrieve

sortBy
string
Example: sortBy=createdAt:asc|desc

You can sort by:

  • createdAt
  • updatedAt
  • name
method
string
Enum: "get" "post"

You can filter the results by source http method.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/external-sources?limit=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE&sortBy=createdAt%3Aasc%7Cdesc&method=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

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

Create external source

Create an external data source definition. External sources can be used as a special schema field to retrieve data from a given URL when generating an object from a record.

Before starting, make sure you have a connection which you can use in the external source definition.


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

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

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

Authorizations:
JWTBasic
Request Body schema: application/json

External data source definition

name
required
string <uuid> (ExternalSourceId)

Unique ID of the external source definition

description
string (ExternalSourceDescription) <= 255 characters

Description of the external source

required
any (ExternalSourceProperties)

The details of the external source configuration

ttl
number <int32> (ExternalSourceTtl)

Cache TTL for connection response, in seconds

Responses

Request samples

Content type
application/json
{
  • "name": "9ffa9185-7453-4fb2-aa6a-3105a6ae83a8",
  • "description": "string",
  • "properties": {
    },
  • "ttl": 0
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "description": "string",
  • "properties": {
    },
  • "createdBy": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedBy": {
    },
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "ttl": 0
}

Get External Source

Retrieve the details of an external data source.


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

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

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

Authorizations:
JWTBasic
path Parameters
ExternalDataSourceId
required
string <uuid>

External source ID

Responses

Request samples

curl --request GET \
  --url https://api.synerise.com/brickworks/v1/external-sources/%7BExternalDataSourceId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "description": "string",
  • "properties": {
    },
  • "createdBy": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedBy": {
    },
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "ttl": 0
}

Update External Source

Update an external data source definition.


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

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

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

Authorizations:
JWTBasic
path Parameters
ExternalDataSourceId
required
string <uuid>

External source ID

Request Body schema: application/json
name
string (ExternalSourceName) <= 255 characters

Human-readable name of the external resource

description
string (ExternalSourceDescription) <= 255 characters

Description of the external source

any (ExternalSourceProperties)

The details of the external source configuration

ttl
number <int32>

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "properties": {
    },
  • "ttl": 0
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "description": "string",
  • "properties": {
    },
  • "createdBy": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedBy": {
    },
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "ttl": 0
}

Delete external source

Permanently delete an external data source definition.


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

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

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

Authorizations:
JWTBasic
path Parameters
ExternalDataSourceId
required
string <uuid>

External source ID

Responses

Request samples

curl --request DELETE \
  --url https://api.synerise.com/brickworks/v1/external-sources/%7BExternalDataSourceId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "errorCode": "string",
  • "httpStatus": 0,
  • "message": "string",
  • "traceId": "string",
  • "errors": [
    ],
  • "source": {
    },
  • "details": {
    },
  • "field": "string"
}

Brickworks: Record versions

In versioned schemas, a record may have multiple versions.

Get record version by version ID

Retrieve the details of a record version.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

RecordVersionId
required
string <uuid>

Record Id

Responses

Request samples

curl --request GET \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records/%7BRecordId%7D/versions/%7BRecordVersionId%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "versionId": "14707576-2549-4848-82ed-f68f8a1b47c7",
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}

Get record versions by record ID

Retrieve all versions of a record. You can paginate, sort, and refine the results. By default, the versions are sorted from newest to oldest.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

query Parameters
limit
integer <int32>
Default: 50

Limit of items per page

page
integer <int32> >= 1
Default: 1

The number of the page to retrieve

sortBy
string
Default: "updatedAt:desc"
Example: sortBy=name:asc

You can change the default sorting. The sorting direction is selected by adding asc or desc, for example sortBy=createdAt:desc.

You can sort by:

  • searchable fields
  • id
  • createdAt
  • updatedAt

If you're using an RSQL filter, you can also sort by:

  • schemaId
  • slug
  • title
  • publishedAt
  • schemaVersion
  • recordVersion
statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records/%7BRecordId%7D/versions?limit=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE&sortBy=name%3Aasc&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

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

Get record versions by record slug

Retrieve all versions of a record. You can paginate, sort, and refine the results. By default, the versions are sorted from newest to oldest.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordSlug
required
string [ 6 .. 40 ] characters

Unique (within a schema) identifier of a record. May change between record versions.

query Parameters
limit
integer <int32>
Default: 50

Limit of items per page

page
integer <int32> >= 1
Default: 1

The number of the page to retrieve

sortBy
string
Default: "updatedAt:desc"
Example: sortBy=name:asc

You can change the default sorting. The sorting direction is selected by adding asc or desc, for example sortBy=createdAt:desc.

You can sort by:

  • searchable fields
  • id
  • createdAt
  • updatedAt

If you're using an RSQL filter, you can also sort by:

  • schemaId
  • slug
  • title
  • publishedAt
  • schemaVersion
  • recordVersion
statuses
string
Enum: "PUBLISHED" "DRAFT" "UNPUBLISHED" "SCHEDULED"

Comma-separated list of record statuses to filter the results.

Responses

Request samples

curl --request GET \
  --url 'https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records/%7BRecordSlug%7D/versions?limit=SOME_INTEGER_VALUE&page=SOME_INTEGER_VALUE&sortBy=name%3Aasc&statuses=SOME_STRING_VALUE' \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

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

Get record version by version number

Retrieve the details of a record version.


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

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

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

Authorizations:
JWTBasic
path Parameters
SchemaId
required
string <uuid>

Unique ID of a schema

RecordId
required
string <uuid>

Record ID

RecordVersionNumber
required
number <int32>

Record version number

Responses

Request samples

curl --request GET \
  --url https://api.synerise.com/brickworks/v1/schemas/%7BSchemaId%7D/records/%7BRecordId%7D/versions/%7BRecordVersionNumber%7D \
  --header 'Authorization: Basic REPLACE_BASIC_AUTH'

Response samples

Content type
application/json
{
  • "versionId": "14707576-2549-4848-82ed-f68f8a1b47c7",
  • "values": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "schemaId": "50477be4-cda2-41e9-bf5b-64a9a075243f",
  • "createdBy": {
    },
  • "updatedBy": {
    },
  • "publishedBy": 0,
  • "deletedBy": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "publishedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "slug": "string",
  • "status": "DRAFT",
  • "schemaVersion": 0,
  • "recordVersion": 0,
  • "schedule": {
    }
}