Products
- : Needed to retrieve unpublished products.
- : The scope allows vendor to read products with assigned vendor.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$The page number to be retrieved where the size of the pages must be specified by the pageSize parameter. The number of the first page is 1.
The number of documents being retrieved on the page.
60List of properties used to sort the results, separated by colons.
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
By default, the fields are sorted in ascending order.
Fields to be returned in the response.
When this parameter is passed, only the id, yrn and {fieldName} are retrieved for each product.
You can specify multiple fields by separating them with commas.
name,codeFields that should be expanded with additional information in the response body. Expressed as strings separated by commas. You can combine multiple values, for example expand=template,parentVariant,brand,labels.
Possible values:
templateparentVariantbrandlabels
Flag indicating whether product variant(s) should include their parent variants' attribute values.
- If set to
true, the result contains values from both the variant and its parent variant. - If set to
false, the result contains only variant values.
Flag indicating whether the total number of retrieved results should be returned.
The Accept-Language request HTTP header defines which languages the client is able to understand, and which locale variant is preferred. If empty, the default system language is assumed. It can be a priority list working as a fallback mechanism.
A standard query parameter is used to search for specific values.
Resources have been retrieved successfully.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
- : Needed to retrieve unpublished products.
- : The scope allows vendor to read products with assigned vendor.
- : The scope allows vendor to manage products with assigned vendor.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$The page number to be retrieved where the size of the pages must be specified by the pageSize parameter. The number of the first page is 1.
The number of documents being retrieved on the page.
60List of properties used to sort the results, separated by colons.
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
By default, the fields are sorted in ascending order.
A standard query parameter is used to search for specific values.
name:{productName}Fields to be returned in the response.
When this parameter is passed, only the id, yrn and {fieldName} are retrieved for each product.
You can specify multiple fields by separating them with commas.
name,codeFields that should be expanded with additional information in the response body. Expressed as strings separated by commas. You can combine multiple values, for example expand=template,parentVariant,brand,labels.
Possible values:
templateparentVariantbrandlabels
Flag indicating whether product variant(s) should include their parent variants' attribute values.
- If set to
true, the result contains values from both the variant and its parent variant. - If set to
false, the result contains only variant values.
Flag indicating whether the total number of retrieved results should be returned.
The Accept-Language request HTTP header defines which languages the client is able to understand, and which locale variant is preferred. If empty, the default system language is assumed. It can be a priority list working as a fallback mechanism.
Resources have been retrieved successfully.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
- : Needed to manage products.
- : Needed to publish products.
- : The scope allows vendor to manage products with assigned vendor.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$The parameter is valid only for PARENT_VARIANT type. If true then variants are not automatically generated for the parent variant configuration.
falseAllows to control whether the change of the state should cause reindexing or not.
trueIf set to true, the validation that checks whether related products exist is skipped. This is useful during data loading, where related products may not yet exist and will be created later. This parameter is only respected when the allowToSkipRelatedProductsValidation system setting is set to true. Otherwise, it is disregarded.
falseThe Content-Language request HTTP header defines a language or multiple languages of the request body.
- If the
Content-Languageheader is set to*, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the
Content-Languageheader is set to a specific language, the localized fields should be provided as strings. - If the
Content-Languageheader is empty, the endpoint interprets the localized fields as being provided in the default language or the languages defined in the Configuration Service.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request is rejected.
The resource has been successfully created.
Resources cannot be created due to an error.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
There are three possible reasons:
- Product with given code already exists, please choose unique code for your product
- Optimistic locking failed. If user sends metadata/version attribute which is outdated (someone else updated product in the time user was performing his changes). User should retrieve the latest product data and retry the request.
- Optimistic locking failed. User did not provide metadata/version attribute in update request, but someone else updated product while it was internally handled by product service. Resending the same request can result in successful update, but the update can override recently persisted changes.
Internal Server Error.
- : Needed to manage products.
- : Needed to publish products.
- : The scope allows vendor to manage products with assigned vendor.
Your Emporix tenant's name.Note: The tenant should always be written in lowercase.
The parameter is valid only for PARENT_VARIANT type. If true then variants are not automatically generated for the parent variant configuration.
falseAllows to control whether the change of the state should cause reindexing or not.
trueIf set to true, the validation that checks whether related products exist is skipped. This is useful during data loading, where related products may not yet exist and will be created later. This parameter is only respected when the allowToSkipRelatedProductsValidation system setting is set to true. Otherwise, it is disregarded.
falseThe Content-Language request HTTP header defines a language or multiple languages of the request body.
- If the
Content-Languageheader is set to*, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the
Content-Languageheader is set to a specific language, the localized fields should be provided as strings. - If the
Content-Languageheader is empty, the endpoint interprets the localized fields as being provided in the default language or the languages defined in the Configuration Service.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request is rejected.
Example response
Resources cannot be created due to an error.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
There are three possible reasons:
- Product with given code already exists, please choose unique code for your product
- Optimistic locking failed. If user sends metadata/version attribute which is outdated (someone else updated product in the time user was performing his changes). User should retrieve the latest product data and retry the request.
- Optimistic locking failed. User did not provide metadata/version attribute in update request, but someone else updated product while it was internally handled by product service. Resending the same request can result in successful update, but the update can override recently persisted changes.
Internal Server Error.
- : Needed to manage products.
- : Needed to publish products.
- : Needed to unpublish products.
- : The scope allows vendor to manage products with assigned vendor.
Your Emporix tenant's name.Note: The tenant should always be written in lowercase.
The parameter is valid only for PARENT_VARIANT type. If true then variants are not automatically generated for the parent variant configuration.
falseAllows to control whether the change of the state should cause reindexing or not.
trueIf set to true, the validation that checks whether related products exist is skipped. This is useful during data loading, where related products may not yet exist and will be created later. This parameter is only respected when the allowToSkipRelatedProductsValidation system setting is set to true. Otherwise, it is disregarded.
falseThe Content-Language request HTTP header defines a language or multiple languages of the request body.
- If the
Content-Languageheader is set to*, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the
Content-Languageheader is set to a specific language, the localized fields should be provided as strings. - If the
Content-Languageheader is empty, the endpoint interprets the localized fields as being provided in the default language or the languages defined in the Configuration Service.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request is rejected.
Example response
Bad request due to validation, incorrect parameters, etc.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
- : Needed to manage products.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$Request body for triggering dynamic variant recalculation. Accepts up to 1000 product IDs at any level of the hierarchy — the system resolves the root for each ID automatically. Intended to be called after a batch of products has been fully ingested, not per individual product write.
List of product IDs (variants at any hierarchy level) for which recalculation should be triggered. The system groups IDs by their root product and creates one job per unique root.
Recalculation jobs accepted. One job is created per unique root product resolved from the submitted IDs.
Resources cannot be created due to an error.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
- : Needed to manage products.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$Current status of a dynamic variant recalculation job.
Jobs retrieved successfully.
Represents a single dynamic variant recalculation job. One job is created per unique root product. Jobs remain queryable until automatically removed approximately 30 days after reaching a terminal state.
Unique identifier of the recalculation job.
Identifier of the root product whose variant tree is being recalculated.
List of product IDs that were submitted in the recalculation request and resolved to this root.
Current status of a dynamic variant recalculation job.
Timestamp when the job was created.
Timestamp when a subscriber picked up the job and started processing. Null while the job is still PENDING.
Timestamp when the job reached a terminal state (FINISHED, FAILED, or FAILED_PERMANENT).
Error message if the job failed. Null for successful jobs.
Number of processing attempts made for this job. Incremented on each delivery from the pub/sub subscription.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
- : Needed to manage products.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$Unique identifier of the recalculation job.
Job retrieved successfully.
Represents a single dynamic variant recalculation job. One job is created per unique root product. Jobs remain queryable until automatically removed approximately 30 days after reaching a terminal state.
Unique identifier of the recalculation job.
Identifier of the root product whose variant tree is being recalculated.
List of product IDs that were submitted in the recalculation request and resolved to this root.
Current status of a dynamic variant recalculation job.
Timestamp when the job was created.
Timestamp when a subscriber picked up the job and started processing. Null while the job is still PENDING.
Timestamp when the job reached a terminal state (FINISHED, FAILED, or FAILED_PERMANENT).
Error message if the job failed. Null for successful jobs.
Number of processing attempts made for this job. Incremented on each delivery from the pub/sub subscription.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Resource has not been found.
Internal Server Error.
- : Needed to retrieve unpublished products.
- : The scope allows vendor to read products with assigned vendor.
- : The scope allows vendor to manage products with assigned vendor.
Product unique identifier generated when the product is created.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$Fields to be returned in the response.
When this parameter is passed, only the id, yrn and {fieldName} are retrieved for each product.
You can specify multiple fields by separating them with commas.
name,codeFields that should be expanded with additional information in the response body. Expressed as strings separated by commas. You can combine multiple values, for example expand=template,parentVariant,brand,labels.
Possible values:
templateparentVariantbrandlabels
Flag indicating whether product variant(s) should include their parent variants' attribute values.
- If set to
true, the result contains values from both the variant and its parent variant. - If set to
false, the result contains only variant values.
The Accept-Language request HTTP header defines which languages the client is able to understand, and which locale variant is preferred. If empty, the default system language is assumed. It can be a priority list working as a fallback mechanism.
Product successfully retrieved.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Resource has not been found.
Internal Server Error.
- : Needed to manage products.
- : Needed to publish products.
- : Needed to unpublish products.
- : The scope allows vendor to manage products with assigned vendor.
Product unique identifier generated when the product is created.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$| Option | Description |
|---|---|
true | A partial product update is performed. |
false | A full product replacement is performed. |
falseThe parameter is valid only for PARENT_VARIANT type. If true then variants are not automatically generated for the parent variant configuration.
falseAllows to control whether the change of the state should cause reindexing or not.
trueIf set to true, the validation that checks whether related products exist is skipped. This is useful during data loading, where related products may not yet exist and will be created later. This parameter is only respected when the allowToSkipRelatedProductsValidation system setting is set to true. Otherwise, it is disregarded.
falseThe Content-Language request HTTP header defines a language or multiple languages of the request body.
- If the
Content-Languageheader is set to*, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the
Content-Languageheader is set to a specific language, the localized fields should be provided as strings. - If the
Content-Languageheader is empty, the endpoint interprets the localized fields as being provided in the default language or the languages defined in the Configuration Service.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request is rejected.
The resource has been successfully created.
The resource has been successfully updated.
Bad request due to validation, incorrect parameters, etc.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Resource has not been found.
There are three possible reasons:
- Product with given code already exists, please choose unique code for your product
- Optimistic locking failed. If user sends metadata/version attribute which is outdated (someone else updated product in the time user was performing his changes). User should retrieve the latest product data and retry the request.
- Optimistic locking failed. User did not provide metadata/version attribute in update request, but someone else updated product while it was internally handled by product service. Resending the same request can result in successful update, but the update can override recently persisted changes.
Internal Server Error.
- : Needed to manage products.
- : The scope allows vendor to manage products with assigned vendor.
Product unique identifier generated when the product is created.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$Removing a parent variant product also removes all of its child variants. This applies to both PARENT_VARIANT roots with VARIANT children and DYNAMIC_VARIANT parent products with all descendant dynamic variants in the tree. This operation has to be confirmed by setting force=true.
falseAllows to control whether the change of the state should cause reindexing or not.
trueThe resource has been successfully deleted.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
No content
- : Needed to manage products.
- : Needed to publish products.
- : Needed to unpublish products.
- : The scope allows vendor to manage products with assigned vendor.
Product unique identifier generated when the product is created.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$The parameter is valid only for PARENT_VARIANT type. If true then variants are not automatically generated for the parent variant configuration.
falseAllows to control whether the change of the state should cause reindexing or not.
trueIf set to true, the validation that checks whether related products exist is skipped. This is useful during data loading, where related products may not yet exist and will be created later. This parameter is only respected when the allowToSkipRelatedProductsValidation system setting is set to true. Otherwise, it is disregarded.
falseThe Content-Language request HTTP header defines a language or multiple languages of the request body.
- If the
Content-Languageheader is set to*, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages. - If the
Content-Languageheader is set to a specific language, the localized fields should be provided as strings. - If the
Content-Languageheader is empty, the endpoint interprets the localized fields as being provided in the default language or the languages defined in the Configuration Service.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request is rejected.
Product name.
Unique product identifier, defined by the user.
Product description.
Flag indicating whether the product has been published or not.
falseMark the product as weight-dependent if the line item price could change after packaging, as this is necessary to ensure that credit card payments can be authorized.
ID of brand.
Collection of label IDs.
The resource has been successfully updated.
Bad request due to validation, incorrect parameters, etc.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
The requested resource does not exist.
There are three possible reasons:
- Product with given code already exists, please choose unique code for your product
- Optimistic locking failed. If user sends metadata/version attribute which is outdated (someone else updated product in the time user was performing his changes). User should retrieve the latest product data and retry the request.
- Optimistic locking failed. User did not provide metadata/version attribute in update request, but someone else updated product while it was internally handled by product service. Resending the same request can result in successful update, but the update can override recently persisted changes.
Internal Server Error.
No content
- : Needed to retrieve unpublished products.
Your Emporix tenant name.
Note: The tenant should always be written in lowercase.
^[a-z][a-z0-9]+$Fields that should be expanded with additional information in the response body. Expressed as strings separated by commas.
Possible values:
template
Fields to be returned in the response.
When this parameter is passed, only the id, yrn and {fieldName} are retrieved for each product.
You can specify multiple fields by separating them with commas.
name,codeThe Accept-Language request HTTP header defines which languages the client is able to understand, and which locale variant is preferred. If empty, the default system language is assumed. It can be a priority list working as a fallback mechanism.
List of YRNs. Each YRN identifies a separate product.
Search query result has been successfully retrieved.
Bad request due to validation, incorrect parameters, etc.
Unauthorized
Access forbidden. The caller is not allowed to access this resource.
Internal Server Error.
Last updated
Was this helpful?

