Custom Instance
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Page number to be retrieved. The number of the first page is 1.
1
Number of items to be retrieved per page.
60
List of properties used to sort the results, separated by colons. The order of properties indicates their priority in sorting.
Possible values:
{fieldName}
{fieldName}:asc
{fieldName}:desc
Note: If you want to sort the results by localized properties, the possible values are:
{fieldName}.{language}
{fieldName}.{language}:asc
{fieldName}.{language}:desc
If the sorting direction is not specified, the fields are sorted in ascending order.
A standard query parameter is used to search for specific values.
- Searching for items by string-based properties:
- By a field value:
q=siteCode:main
, wheresiteCode
is the field name, andmain
is its desired value. - By a localized field value:
q=items.product.name.en:apple_lobo
, wherename
is the field name of product,en
is the language code, andapple_lobo
is the field value expressed in the specified language. Note: This query works only for localized fields, which are stored in a map format, wherekey
is the language code andvalue
is the translation to particular language.
- By a field value:
- Searching for items by a number-based property:
- With a specific value:
q=items.quantity.quantity:20
- With a value greater than:
q=items.quantity.quantity:>20
- With a value lower than:
q=items.quantity.quantity:<20
- With a value greater than or equal to:
q=items.quantity.quantity:>=20
- With a value lower than or equal to:
q=items.quantity.quantity:<=20
- With a value within a range of values:
q=items.quantity.quantity:(>=10 AND <=20)
whereitems.quantity.quantity
is the name of the number-based field, and20
is its querying value.
- With a specific value:
- Searching for items by a date-based property: All number-based property queries are also valid for dates. In that case, the date should be placed within double quotes:
q=metadataCreatedAt:(>="2021-05-18T07:27:27.455Z" AND <"2021-05-20T07:27:27.455Z")
- Searching for items by a boolean-based property:
q=description.multiLanguage:true
, wheredescription.multiLanguage
is the boolean field name, andtrue
is its desired value. - Searching for items with a nonexistent or empty property:
q=description.en:null
, wheredescription.en
is the field that has its value set tonull
. - Searching for items with an existing property:
q=mixin:exists
, wheremixin
is the field that has a non-empty value. - Searching for items by multiple specific values:
q=id:(5c3325baa9812100098ff48f,5c3325d1a9812100098ff494)
, whereid
is the field name, and strings within the bracket are the desired values. - Searching for items by multiple fields:
q=id:5c3325baa9812100098ff48f siteCode:main
whereid
andsiteCode
are field names. All objects that contain the specified values are returned. Multiple fields (separated by space) can be specified. Multiple values for each field can also be specified in the format presented earlier. - Searching for items with string-based properties conforming to a regex:
q=siteCode:~ain
orq=code:(~U PL)
- in case of searching for strings with space, wheresiteCode
is the name of the field, andain
orU PL
is its querying regex. - Searching for items with a localized string-based property conforming to a regex:
items.product.name.en:~(Yoghurt im)
- wherename
is the product field name,en
is the desired language, andJoghurt im
is the search term.
siteCode:{main}
Fields to be included in the response.
Flag indicating whether the total number of retrieved items should be returned.
false
Example: true
List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields. If a value is specified, then it must be present in the tenant configuration.
- If the header is set to a particular language or a list of languages, all localized fields are retrieved as strings.
- If the header is set to
*
, all localized fields are retrieved as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the header is empty, localized fields are retrieved in the default language defined in the Configuration Service.
GET /schema/{tenant}/custom-entities/{type}/instances HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
[
{
"id": "123",
"name": {
"en": "Report"
},
"type": "CUSTOM_DOCUMENT",
"mixins": {
"mixins": {
"productCustomAttributes": {
"inStock": true,
"populatirty": 1
}
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
},
"createdAt": "2025-04-17T13:00:00.000Z",
"modifiedAt": "2025-05-14T13:00:00.000Z",
"version": 3
}
},
{
"id": "456",
"name": {
"en": "Manual"
},
"type": "CUSTOM_DOCUMENT",
"metadata": {
"createdAt": "2025-04-17T13:00:00.000Z",
"modifiedAt": "2025-04-17T13:00:00.000Z",
"version": 1
}
}
]
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
The Content-Language request HTTP header defines language(s) of the payload.
de
Id of the custom instance.
Localized custom type name in a form of a map of translations.
A key-value map of additional attributes.
POST /schema/{tenant}/custom-entities/{type}/instances HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 254
{
"id": "123",
"name": {
"en": "Report"
},
"mixins": {
"productCustomAttributes": {
"inStock": true,
"popularity": 1
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
}
}
}
{
"id": "123"
}
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Unique identifier of the entity.
List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields. If a value is specified, then it must be present in the tenant configuration.
- If the header is set to a particular language or a list of languages, all localized fields are retrieved as strings.
- If the header is set to
*
, all localized fields are retrieved as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the header is empty, localized fields are retrieved in the default language defined in the Configuration Service.
GET /schema/{tenant}/custom-entities/{type}/instances/{id} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
"id": "123",
"name": {
"en": "Report"
},
"type": "CUSTOM_DOCUMENT",
"mixins": {
"productCustomAttributes": {
"inStock": true,
"populatirty": 1
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
},
"createdAt": "2025-04-17T13:00:00.000Z",
"modifiedAt": "2025-05-14T13:00:00.000Z",
"version": 3
}
}
Performs the UPSERT
operation. If a custom instance with specified ID exists in the system, then it is updated. If it doesn't exist, a new custom instance is created.
Required scopes
schema.custominstance_manage
- required for upserting a custom instance
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Unique identifier of the entity.
The Content-Language request HTTP header defines language(s) of the payload.
de
Localized custom type name in a form of a map of translations.
A key-value map of additional attributes.
PUT /schema/{tenant}/custom-entities/{type}/instances/{id} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 256
{
"name": {
"en": "Report"
},
"mixins": {
"productCustomAttributes": {
"inStock": false,
"popularity": 2
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
},
"version": 1
}
}
{
"id": "123"
}
Deletes a custom instance.
Required scopes
schema.custominstance_manage
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Unique identifier of the entity.
DELETE /schema/{tenant}/custom-entities/{type}/instances/{id} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
No content
The patch request consists of set of operation, that should be defined according to RFC-6902 standard.
Required scopes
schema.custominstance_manage
- required for patching a custom instance
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Unique identifier of the entity.
The Content-Language request HTTP header defines language(s) of the payload.
de
Indicates an operation which should be done on a return. Available operations: add
remove
and replace
Indicates a path for which the value should be applied. For example:/mixins/additionalAttributes/externalId
or /name
Indicates a value that should be changed or added. The value can be of a primitive type, like string, number, boolean or it can be an object or an array.
PATCH /schema/{tenant}/custom-entities/{type}/instances/{id} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 59
[
{
"op": "replace",
"path": "/name",
"value": {
"en": "New name"
}
}
]
No content
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Page number to be retrieved. The number of the first page is 1.
1
Number of items to be retrieved per page.
60
List of properties used to sort the results, separated by colons. The order of properties indicates their priority in sorting.
Possible values:
{fieldName}
{fieldName}:asc
{fieldName}:desc
Note: If you want to sort the results by localized properties, the possible values are:
{fieldName}.{language}
{fieldName}.{language}:asc
{fieldName}.{language}:desc
If the sorting direction is not specified, the fields are sorted in ascending order.
Fields to be included in the response.
Flag indicating whether the total number of retrieved items should be returned.
false
Example: true
List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields. If a value is specified, then it must be present in the tenant configuration.
- If the header is set to a particular language or a list of languages, all localized fields are retrieved as strings.
- If the header is set to
*
, all localized fields are retrieved as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the header is empty, localized fields are retrieved in the default language defined in the Configuration Service.
A standard query parameter used to search for specific values.
POST /schema/{tenant}/custom-entities/{type}/instances/search HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 51
{
"q": "mixins.productCustomAttributes.inStock:true"
}
[
{
"id": "123",
"name": {
"en": "Report"
},
"type": "CUSTOM_DOCUMENT",
"mixins": {
"mixins": {
"productCustomAttributes": {
"inStock": true,
"populatirty": 1
}
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
},
"createdAt": "2025-04-17T13:00:00.000Z",
"modifiedAt": "2025-05-14T13:00:00.000Z",
"version": 3
}
}
]
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
Id of the custom instance.
Localized custom type name in a form of a map of translations.
A key-value map of additional attributes.
POST /schema/{tenant}/custom-entities/{type}/instances/bulk HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 292
[
{
"id": "123",
"name": {
"en": "Report"
},
"mixins": {
"productCustomAttributes": {
"inStock": true,
"popularity": 1
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
}
}
},
{
"id": "456",
"name": {
"en": "Manual"
}
}
]
[
{
"index": 0,
"code": 201,
"status": "Created"
},
{
"index": 1,
"code": 409,
"status": "Conflict",
"message": "Custom instance with id='456' already exists for type='CUSTOM'"
}
]
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
PUT /schema/{tenant}/custom-entities/{type}/instances/bulk HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 292
[
{
"id": "123",
"name": {
"en": "Report"
},
"mixins": {
"productCustomAttributes": {
"inStock": true,
"popularity": 1
}
},
"metadata": {
"mixins": {
"productCustomAttributes": "https://res.cloudinary.com/saas-ag/raw/upload/schemata/CAAS/productCustomAttributesMixIn-v38.json"
}
}
},
{
"id": "456",
"name": {
"en": "Manual"
}
}
]
[
{
"index": 0,
"code": 201,
"status": "Created"
},
{
"index": 1,
"code": 204,
"status": "No Content"
}
]
Your Emporix tenant's name.
Note: Always write the tenant name in lowercase.
^[a-z][a-z0-9]+$
Custom schema type to which custom instance is associated
CUSTOM_DOCUMENT
DELETE /schema/{tenant}/custom-entities/{type}/instances/bulk HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
[
{
"index": 0,
"code": 204,
"status": "No Content"
},
{
"index": 1,
"code": 204,
"status": "No Content"
}
]
Was this helpful?