Create a product or bundle
POST/pcm/products
Creates a product or bundle with the attributes that are defined in the body.
Product Types
Product Experience Manager automatically assigns types to the products you create. You can filter on product types. Product types can also be used in catalogs. For example, in your catalog, you can filter on parent
so that only your parent products are displayed in your storefront.
See Product Types.
Product Tags
You can use product tags to store or assign a key word against a product or service that you sell in your store. The product tag can then be used to describe or label that product. Product tags represent similarities between products who do not share the same attributes. Using product tags means that you can group your products together, for example, by brand, category, subcategory, colors, types, industries, and so on.
See Product Tags.
Personalizing products
You can allow your shoppers to add custom text to a product when adding product items to their carts. This is useful, for example, if you have a product like a T-shirt that can be personalized or you sell greetings cards that can be printed with your shoppers personalized messages. You can do this by configuring the the custom_inputs
attribute.
When configuring the custom_inputs
attribute:
- You can rename
input
to something more representative of the input that shoppers are adding, for example,message
orfront
. name
is the name that is displayed in your storefront.- You can add validation rules. For example, the input field must be a
string
and/or up to 255 characters in length. The limit is 255 characters. - You can specify if the input field is required.
Curating Products
You can curate the products in a node. Product curation allows you to promote specific products within each node of your hierarchies, enabling you to create unique product collections in your storefront. For example, you may find you have an abundance of cotton T-Shirts and you want to promote these products to the top of the product list. When a shopper navigates to T-shirts, the cotton T-Shirts are displayed first. See Update a node.
Bundles
With Product Experience Manager, you can use the products API to create and manage bundles. A bundle is a purchasable product, comprising of one or more products that you want to sell together.
See Bundles.
Request
- application/json
Body
required
- Array [
- ]
- Array [
- ]
data objectrequired
Possible values: [product
]
This represents the type of resource being returned. Always product
.
attributes objectrequired
The unique attribute associated with the product. This could be an external reference from a separate company system, for example. The maximum length is 2048 characters.
The product name to display to customers.
A description for the product.
The unique slug of the product. A slug can contain A to Z, a to z, 0 to 9, hyphen, underscore, and period. Spaces or other special characters like ^, [], *, and $ are not allowed.
The unique stock keeping unit of the product.
Possible values: [live
, draft
]
The status for the product, either draft
or live
. Default is draft
.
Possible values: [physical
, digital
]
The commodity type, either physical
or digital
.
The universal product code or european article number of the product.
The manufacturer part number of the product.
You can use product tags to store or assign a key word against a product. The product tag can then be used to describe or label that product. Using product tags means that you can group your products together, for example, by brand, category, subcategory, colors, types, industries, and so on. A product can have up to 20 tags. A product tag can be up to 255 characters. Product tags must not contain any spaces or commas. See Product Tags.
build_rules object
You can build a combination of child products associated with a product, based on build rules that you specify. This is useful, for example, if you have a variation option that you do not sell. This makes managing and building your child products quick and easy. See Using Build Rules.
Possible values: [include
, exclude
]
Specifies the default behaviour, either include
or exclude
.
An array of option IDs to include when child products are built. Each combination consists of a nested array of option IDs from one or more variations. Combinations of option IDs in the nested arrays must come from different variations.
An array of option IDs to exclude when child products are built. Each combination consists of a nested array of option IDs from one or more variations. Combinations of option IDs in the nested arrays must come from different variations.
locales object
Product Experience Manager supports localization of products and hierarchies. If your store supports multiple languages, you can localize product names and descriptions. You can have as many locales as you want.
property name* object
A three-letter language code that represents the name of language you have used.
A localized name for the product.
A localized description for the product.
custom_inputs object
You use the custom_inputs
attribute to allow your shoppers to add custom text to a product when adding product items to their carts. This is useful, for example, if you have a product like a T-shirt that can be personalized or you sell greetings cards that can be printed with your shoppers personalized messages. See Personalizing Products.
property name* object
A name for the custom text field. You can rename this to something more representative of the input that shoppers are adding, for example, message
or front
.
A name for the custom text field.
The validation rules for the custom text.
This represents the type of the resource being returned.
The length of the custom input text field.
The number of characters the custom text field can be. You can specify a maximum length up to 255 characters, as the limit is 255 characters.
true
or false
depending on whether the custom text is required.
components object
With Product Experience Manager, you can create and manage bundles. A bundle is a purchasable product, comprising of one or more products that you want to sell together. You can create multiple components within a bundle. Each component must have at least one or more options. Each option is a product and a quantity. See Bundles.
property name* object
The name of the component, such as games
. The bundle_configuration
uses the component name to reference a component. A component name should be relatively short and must not contain any special characters.
The component name. The component name is the name that is displayed in your storefront.
options object[]
The product options included in a component. This can be the ID of another bundle.
The unique ID of the product you want to add to a component.
This represents the type of object being returned. Always product
.
The number of this product option that a shopper must purchase.
The sort order of the options. The create a bundle
and update a bundle
endpoints do not sort the options. You can use the sort_order
attribute when programming your storefront to display the options in the order that you want.
Whether the product option is a default option in a bundle. Shoppers can select a bundle that specifies a default list of product options. See Dynamic Bundles.
The minimum number of product options a shopper can select from this component.
The maximum number of product options a shopper can select from this component.
The sort order of the components. The create a bundle
and update a bundle
endpoints do not sort the components. You can use the sort_order
attribute when programming your storefront to display the components in the order that you want.
relationships object
Relationships are established between different product entities.
variations object
data object[]
A unique identifier for a resource.
This represents the type of resource object being returned.
Responses
- 201
- 422
- 500
Creates a product with the following attributes.
- application/json
- Schema
- Example (from schema)
- created-product
- build-rules
Schema
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- Array [
- ]
- ]
standard
- Astandard
product is a standalone product.parent
- Aparent
product is a product that has child products that have been built using theBuild Child Products
endpoint.child
- When you configure product variations and variation options forparent
products, thechild
products derived from theparent
products are automatically created in Commerce.bundle
- Abundle
is a purchasable product, comprising one or more standalone products (in other words, components) to be sold together.- MOD1
- MOD2
- Array [
- ]
- Array [
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- Array [
- ]
- ]
standard
- Astandard
product is a standalone product.parent
- Aparent
product is a product that has child products that have been built using theBuild Child Products
endpoint.child
- When you configure product variations and variation options forparent
products, thechild
products derived from theparent
products are automatically created in Commerce.bundle
- Abundle
is a purchasable product, comprising one or more standalone products (in other words, components) to be sold together.- MOD1
- MOD2
- Array [
- ]
- ]
data object
A unique product ID that is generated when you create the product.
Possible values: [product
]
This represents the type of resource object being returned. Always product
.
attributes object
A name for the product.
A description for the product.
A label for the product that is used in the URL paths. A slug can contain A to Z, a to z, 0 to 9, hyphen, underscore, and period. Spaces or other special characters like ^, [], *, and $ are not allowed. By default, the product name is used as the slug.
The unique stock keeping unit of the product.
Possible values: [live
, draft
]
The status for the product, either draft
or live
.
Possible values: [physical
, digital
]
The commodity type, either physical
or digital
.
The universal product code or european article number of the product.
The manufacturer part number of the product.
The unique attribute associated with the product. This could be an external reference from a separate company system, for example. The maximum length is 2048 characters.
locales object
Product Experience Manager supports localization of products and hierarchies. If your store supports multiple languages, you can localize product names and descriptions. You can have as many locales as you want.
property name* object
A three-letter language code that represents the name of language you have used.
A localized name for the product.
A localized description for the product.
You can use product tags to store or assign a key word against a product. The product tag can then be used to describe or label that product. Using product tags means that you can group your products together, for example, by brand, category, subcategory, colors, types, industries, and so on. A product can have up to 20 tags. A product tag can be up to 255 characters. Product tags must not contain any spaces or commas.
extensions object
property name* object
custom_inputs object
You use the custom_inputs
attribute to allow your shoppers to add custom text to a product when adding product items to their carts. This is useful, for example, if you have a product like a T-shirt that can be personalized or you sell greetings cards that can be printed with your shoppers personalized messages. See Personalizing Products.
property name* object
A name for the custom text field. You can rename this to something more representative of the input that shoppers are adding, for example, message
or front
.
A name for the custom text field.
The validation rules for the custom text.
This represents the type of the resource being returned.
The length of the custom input text field.
The number of characters the custom text field can be. You can specify a maximum length up to 255 characters, as the limit is 255 characters.
true
or false
depending on whether the custom text is required.
build_rules object
You can build a combination of child products associated with a product, based on build rules that you specify. This is useful, for example, if you have a variation option that you do not sell. This makes managing and building your child products quick and easy. See Using Build Rules.
Possible values: [include
, exclude
]
Specifies the default behaviour, either include
or exclude
.
An array of option IDs to include when child products are built. Each combination consists of a nested array of option IDs from one or more variations. Combinations of option IDs in the nested arrays must come from different variations.
An array of option IDs to exclude when child products are built. Each combination consists of a nested array of option IDs from one or more variations. Combinations of option IDs in the nested arrays must come from different variations.
components object
With Product Experience Manager, you can create and manage bundles. A bundle is a purchasable product, comprising of one or more products that you want to sell together. You can create multiple components within a bundle. Each component must have at least one or more options. Each option is a product and a quantity. See Bundles.
property name* object
The name of the component, such as games
. The bundle_configuration
uses the component name to reference a component. A component name should be relatively short and must not contain any special characters.
The component name. The component name is the name that is displayed in your storefront.
options object[]
The product options included in a component. This can be the ID of another bundle.
The unique ID of the product you want to add to a component.
This represents the type of object being returned. Always product
.
The number of this product option that a shopper must purchase.
The sort order of the options. The create a bundle
and update a bundle
endpoints do not sort the options. You can use the sort_order
attribute when programming your storefront to display the options in the order that you want.
Whether the product option is a default option in a bundle. Shoppers can select a bundle that specifies a default list of product options. See Dynamic Bundles.
The minimum number of product options a shopper can select from this component.
The maximum number of product options a shopper can select from this component.
The sort order of the components. The create a bundle
and update a bundle
endpoints do not sort the components. You can use the sort_order
attribute when programming your storefront to display the components in the order that you want.
meta object
The date and time a product is created.
The date and time a product is updated.
Possible values: [organization
, store
]
The resource owner, either organization
or store
.
variations object[]
A product's variations and the options defined for each variation. If you have specified build_rules
, only the child products included in the build_rules
are specified.
A unique ID generated when a variation is created.
The name of a variation.
options object[]
A unique ID that is generated an option is created.
The name of an option.
A description of an option.
child_variations object[]nullable
A child product's variations and the option defined for each variation. This details the variation and options specific to a child product.
A unique ID generated when a variation is created.
The name of a variation.
The sort order value is visible when you add the variations and variation options to your catalogs. You can then use the sort_order
value to program your storefront to display the variation options in the order that you want. The variation with the highest value of sort_order
is displayed first. For example, a variation with a sort_order
value of 3 appears before a variation with a sort_order
value of 2. You can specify any numbers that you want. You can use 1, 2, 3, or 100, 90, 80, including, zero or negative numbers. You can set sort_order
to either null
or omit it entirely from the request if you wish to remove an existing sort_order
attribute.
options object[]nullable
This will be unset for child product variations.
A unique ID that is generated an option is created.
The name of an option.
A description of an option.
option object
The options available for this variation.
A unique ID that is generated an option is created.
The name of an option.
A description of an option.
Possible values: [parent
, child
, bundle
, standard
]
One of the following product types:
The child products defined for a product. The order of the variations in the variation_matrix
is the order of the variations in the array when the variations were linked to the product. For example, the first variation in the variation_matrix
corresponds to the first variation in the array, and so on. You can use the sort_order
attribute to sort the order of your variation and variation options in the variation_matrix
object. See Sorting the Order of Variations and Options If no variations are defined for a product, the variation_matrix
is empty.
relationships object
Relationships are established between different product entities. For example, a bundle
product and a child
product are related to a parent
product, as both are associated with it.
property name* object
data object
A unique identifier for a resource.
This represents the type of resource object being returned.
A unique identifier for a resource.
This represents the type of resource object being returned.
links object
Links are used to allow you to move between requests. Single entities use a self
parameter with a link to that specific resource. Sometimes, there are not enough entities for a project to fill multiple pages. In this situation, we return some defaults.
Property | Description |
---|---|
current | Always the current page. |
first | Always the first page. |
last | null if there is only one page. |
prev | null if the user is on the first page. |
next | null if there is only one page. |
included object
Returns a list of component products in a product bundle. If a bundle has no component products (in other words, is not a product bundle), an empty array is returned.
component_products object[]
A list of component products in a product bundle. If a bundle has no component products (in other words, is not a product bundle), an empty array is returned.
A unique product ID that is generated when you create the product.
Possible values: [product
]
This represents the type of resource object being returned. Always product
.
attributes object
A name for the product.
A description for the product.
A label for the product that is used in the URL paths. A slug can contain A to Z, a to z, 0 to 9, hyphen, underscore, and period. Spaces or other special characters like ^, [], *, and $ are not allowed. By default, the product name is used as the slug.
The unique stock keeping unit of the product.
Possible values: [live
, draft
]
The status for the product, either draft
or live
.
Possible values: [physical
, digital
]
The commodity type, either physical
or digital
.
The universal product code or european article number of the product.
The manufacturer part number of the product.
The unique attribute associated with the product. This could be an external reference from a separate company system, for example. The maximum length is 2048 characters.
locales object
Product Experience Manager supports localization of products and hierarchies. If your store supports multiple languages, you can localize product names and descriptions. You can have as many locales as you want.
property name* object
A three-letter language code that represents the name of language you have used.
A localized name for the product.
A localized description for the product.
You can use product tags to store or assign a key word against a product. The product tag can then be used to describe or label that product. Using product tags means that you can group your products together, for example, by brand, category, subcategory, colors, types, industries, and so on. A product can have up to 20 tags. A product tag can be up to 255 characters. Product tags must not contain any spaces or commas.
extensions object
property name* object
custom_inputs object
You use the custom_inputs
attribute to allow your shoppers to add custom text to a product when adding product items to their carts. This is useful, for example, if you have a product like a T-shirt that can be personalized or you sell greetings cards that can be printed with your shoppers personalized messages. See Personalizing Products.
property name* object
A name for the custom text field. You can rename this to something more representative of the input that shoppers are adding, for example, message
or front
.
A name for the custom text field.
The validation rules for the custom text.
This represents the type of the resource being returned.
The length of the custom input text field.
The number of characters the custom text field can be. You can specify a maximum length up to 255 characters, as the limit is 255 characters.
true
or false
depending on whether the custom text is required.
build_rules object
You can build a combination of child products associated with a product, based on build rules that you specify. This is useful, for example, if you have a variation option that you do not sell. This makes managing and building your child products quick and easy. See Using Build Rules.
Possible values: [include
, exclude
]
Specifies the default behaviour, either include
or exclude
.
An array of option IDs to include when child products are built. Each combination consists of a nested array of option IDs from one or more variations. Combinations of option IDs in the nested arrays must come from different variations.
An array of option IDs to exclude when child products are built. Each combination consists of a nested array of option IDs from one or more variations. Combinations of option IDs in the nested arrays must come from different variations.
components object
With Product Experience Manager, you can create and manage bundles. A bundle is a purchasable product, comprising of one or more products that you want to sell together. You can create multiple components within a bundle. Each component must have at least one or more options. Each option is a product and a quantity. See Bundles.
property name* object
The name of the component, such as games
. The bundle_configuration
uses the component name to reference a component. A component name should be relatively short and must not contain any special characters.
The component name. The component name is the name that is displayed in your storefront.
options object[]
The product options included in a component. This can be the ID of another bundle.
The unique ID of the product you want to add to a component.
This represents the type of object being returned. Always product
.
The number of this product option that a shopper must purchase.
The sort order of the options. The create a bundle
and update a bundle
endpoints do not sort the options. You can use the sort_order
attribute when programming your storefront to display the options in the order that you want.
Whether the product option is a default option in a bundle. Shoppers can select a bundle that specifies a default list of product options. See Dynamic Bundles.
The minimum number of product options a shopper can select from this component.
The maximum number of product options a shopper can select from this component.
The sort order of the components. The create a bundle
and update a bundle
endpoints do not sort the components. You can use the sort_order
attribute when programming your storefront to display the components in the order that you want.
meta object
The date and time a product is created.
The date and time a product is updated.
Possible values: [organization
, store
]
The resource owner, either organization
or store
.
variations object[]
A product's variations and the options defined for each variation. If you have specified build_rules
, only the child products included in the build_rules
are specified.
A unique ID generated when a variation is created.
The name of a variation.
options object[]
A unique ID that is generated an option is created.
The name of an option.
A description of an option.
child_variations object[]nullable
A child product's variations and the option defined for each variation. This details the variation and options specific to a child product.
A unique ID generated when a variation is created.
The name of a variation.
The sort order value is visible when you add the variations and variation options to your catalogs. You can then use the sort_order
value to program your storefront to display the variation options in the order that you want. The variation with the highest value of sort_order
is displayed first. For example, a variation with a sort_order
value of 3 appears before a variation with a sort_order
value of 2. You can specify any numbers that you want. You can use 1, 2, 3, or 100, 90, 80, including, zero or negative numbers. You can set sort_order
to either null
or omit it entirely from the request if you wish to remove an existing sort_order
attribute.
options object[]nullable
This will be unset for child product variations.
A unique ID that is generated an option is created.
The name of an option.
A description of an option.
option object
The options available for this variation.
A unique ID that is generated an option is created.
The name of an option.
A description of an option.
Possible values: [parent
, child
, bundle
, standard
]
One of the following product types:
The child products defined for a product. The order of the variations in the variation_matrix
is the order of the variations in the array when the variations were linked to the product. For example, the first variation in the variation_matrix
corresponds to the first variation in the array, and so on. You can use the sort_order
attribute to sort the order of your variation and variation options in the variation_matrix
object. See Sorting the Order of Variations and Options If no variations are defined for a product, the variation_matrix
is empty.
relationships object
Relationships are established between different product entities. For example, a bundle
product and a child
product are related to a parent
product, as both are associated with it.
property name* object
data object
A unique identifier for a resource.
This represents the type of resource object being returned.
A unique identifier for a resource.
This represents the type of resource object being returned.
links object
Links are used to allow you to move between requests. Single entities use a self
parameter with a link to that specific resource. Sometimes, there are not enough entities for a project to fill multiple pages. In this situation, we return some defaults.
Property | Description |
---|---|
current | Always the current page. |
first | Always the first page. |
last | null if there is only one page. |
prev | null if the user is on the first page. |
next | null if there is only one page. |
{
"data": {
"id": "string",
"type": "product",
"attributes": {
"name": "string",
"description": "string",
"slug": "string",
"sku": "string",
"status": "live",
"commodity_type": "physical",
"upc_ean": "string",
"mpn": "string",
"external_ref": "string",
"locales": {},
"tags": [
"string"
],
"extensions": {},
"custom_inputs": {},
"build_rules": {
"default": "include",
"include": [
[
"string"
]
],
"exclude": [
[
"string"
]
]
},
"components": {}
},
"meta": {
"created_at": "2020-09-22T09:00:00",
"updated_at": "2020-09-22T09:00:00",
"owner": "organization",
"variations": [
{
"id": "string",
"name": "string",
"options": [
{
"id": "string",
"name": "string",
"description": "string"
}
]
}
],
"child_variations": [
{
"id": "string",
"name": "string",
"sort_order": 0,
"options": [
{
"id": "string",
"name": "string",
"description": "string"
}
],
"option": {
"id": "string",
"name": "string",
"description": "string"
}
}
],
"product_types": [
"parent"
],
"variation_matrix": {}
},
"relationships": {}
},
"included": {
"component_products": [
{
"id": "string",
"type": "product",
"attributes": {
"name": "string",
"description": "string",
"slug": "string",
"sku": "string",
"status": "live",
"commodity_type": "physical",
"upc_ean": "string",
"mpn": "string",
"external_ref": "string",
"locales": {},
"tags": [
"string"
],
"extensions": {},
"custom_inputs": {},
"build_rules": {
"default": "include",
"include": [
[
"string"
]
],
"exclude": [
[
"string"
]
]
},
"components": {}
},
"meta": {
"created_at": "2020-09-22T09:00:00",
"updated_at": "2020-09-22T09:00:00",
"owner": "organization",
"variations": [
{
"id": "string",
"name": "string",
"options": [
{
"id": "string",
"name": "string",
"description": "string"
}
]
}
],
"child_variations": [
{
"id": "string",
"name": "string",
"sort_order": 0,
"options": [
{
"id": "string",
"name": "string",
"description": "string"
}
],
"option": {
"id": "string",
"name": "string",
"description": "string"
}
}
],
"product_types": [
"parent"
],
"variation_matrix": {}
},
"relationships": {}
}
]
}
}
Create a base product
{
"data": {
"type": "product",
"id": "9c85b276-09b4-488e-a59c-c561bae14c9e",
"attributes": {
"commodity_type": "physical",
"custom_inputs": {
"back": {
"name": "T-Shirt Back",
"validation_rules": [
{
"type": "string",
"options": {
"max_length": 50
}
}
],
"required": false
},
"front": {
"name": "T-Shirt Front",
"validation_rules": [
{
"type": "string",
"options": {
"max_length": 50
}
}
],
"required": false
}
},
"description": "T-shirt.",
"external_ref": "d0ddf10c-402c-4e0f-b421-94e7f682c603",
"locales": {
"fr-FR": {
"name": "T-Shirt",
"description": "T-Shirt."
}
},
"mpn": "1234-5678-TTTT",
"name": "T-Shirt",
"sku": "97805",
"slug": "97805",
"status": "live",
"upc_ean": "12345656",
"tags": [
"tag1",
"tag2"
]
},
"relationships": {
"children": {
"data": [],
"links": {
"self": "/products/9c85b276-09b4-488e-a59c-c561bae14c9e/children"
}
},
"component_products": {
"data": [],
"links": {
"self": "/products/9c85b276-09b4-488e-a59c-c561bae14c9e/relationships/component_products"
}
},
"files": {
"data": [],
"links": {
"self": "/products/9c85b276-09b4-488e-a59c-c561bae14c9e/relationships/files"
}
},
"main_image": {
"data": null
},
"templates": {
"data": [],
"links": {
"self": "/products/9c85b276-09b4-488e-a59c-c561bae14c9e/relationships/templates"
}
},
"variations": {
"data": [],
"links": {
"self": "/products/9c85b276-09b4-488e-a59c-c561bae14c9e/relationships/variations"
}
}
},
"meta": {
"created_at": "2022-08-18T14:25:57.391Z",
"owner": "store",
"product_types": [
"standard"
],
"updated_at": "2022-08-18T14:25:57.391Z"
}
}
}
Create a base product, associate variations, configure build rules
{
"data": {
"type": "product",
"id": "9214719b-17fe-4ea7-896c-d61e60fc0d05",
"attributes": {
"build_rules": {
"default": "include",
"exclude": [
[
"cbde9096-e0e1-43d8-a1aa-cb66cf1d299f",
"0b261f7d-753d-4af6-b9f4-62b436cca37d"
]
]
},
"commodity_type": "physical",
"description": "T-shirt.",
"locales": {
"fr-FR": {
"name": "shirt",
"description": "T-shirt."
}
},
"mpn": "1234-5678-SSSS",
"name": "Shirt",
"sku": "978055216732567",
"slug": "978055216732567",
"status": "live",
"upc_ean": "135623456"
},
"relationships": {
"children": {
"data": [],
"links": {
"self": "/products/9214719b-17fe-4ea7-896c-d61e60fc0d05/children"
}
},
"component_products": {
"data": [],
"links": {
"self": "/products/9214719b-17fe-4ea7-896c-d61e60fc0d05/relationships/component_products"
}
},
"files": {
"data": [],
"links": {
"self": "/products/9214719b-17fe-4ea7-896c-d61e60fc0d05/relationships/files"
}
},
"main_image": {
"data": null
},
"templates": {
"data": [],
"links": {
"self": "/products/9214719b-17fe-4ea7-896c-d61e60fc0d05/relationships/templates"
}
},
"variations": {
"data": [],
"links": {
"self": "/products/9214719b-17fe-4ea7-896c-d61e60fc0d05/relationships/variations"
}
}
},
"meta": {
"created_at": "2022-08-18T12:14:52.782Z",
"owner": "store",
"product_types": [
"standard"
],
"updated_at": "2022-08-18T12:14:52.782Z",
"variations": [
{
"id": "6c4b5caa-3819-4366-a14e-c5b85009544b",
"name": "Shirt Size",
"options": [
{
"id": "cbde9096-e0e1-43d8-a1aa-cb66cf1d299f",
"name": "Small",
"description": "Size Small"
},
{
"id": "da9d88d0-8ea6-434c-a0dd-059caf595687",
"name": "Medium",
"description": "Size Medium"
},
{
"id": "07493fea-74b0-40a2-972a-cd7e1d6561bd",
"name": "Large",
"description": "Size Large"
}
]
},
{
"id": "b1ae545e-3375-455f-b5ea-09669b60996f",
"name": "Shirt Material",
"options": [
{
"id": "994c2029-519c-43d9-9c54-14f3af4e3efd",
"name": "Cotton",
"description": "Material Cotton"
},
{
"id": "7951f3d9-f628-49f8-8a43-7749d28153d6",
"name": "Denim",
"description": "Material Denim"
},
{
"id": "58115bff-589a-4287-98d8-373112102617",
"name": "Wool",
"description": "Material Wool"
}
]
},
{
"id": "f192e114-9f8a-4284-99d0-4d9ccd8a0275",
"name": "Shirt Color",
"options": [
{
"id": "0b261f7d-753d-4af6-b9f4-62b436cca37d",
"name": "Red",
"description": "Color Red"
},
{
"id": "55d6d785-cc52-453a-bff6-2cf9add8a580",
"name": "Green",
"description": "Color Green"
},
{
"id": "a43d8b6f-b411-49aa-adaa-36a1a025051e",
"name": "Blue",
"description": "Color Blue"
}
]
}
]
}
}
}
Bad request. The request failed validation.
- application/json
- Schema
- Example (from schema)
- failed-validation
Schema
- Array [
- ]
errors undefined[]required
The HTTP response code of the error.
A brief summary of the error.
Optional additional detail about the error.
Internal request ID.
Additional supporting meta data for the error.
{
"errors": [
{
"status": "500",
"title": "Internal server error",
"detail": "An internal error has occurred.",
"request_id": "00000000-0000-0000-0000-000000000000",
"meta": {
"missing_ids": [
"e7d50bd5-1833-43c0-9848-f9d325b08be8"
]
}
}
]
}
{
"errors": [
{
"title": "Failed Validation",
"status": "422",
"detail": "<XYZ> can not be empty"
}
]
}
Internal server error. There was a system failure in the platform.
- application/json
- Schema
- Example (from schema)
- internal-server-error
Schema
- Array [
- ]
errors undefined[]required
The HTTP response code of the error.
A brief summary of the error.
Optional additional detail about the error.
Internal request ID.
Additional supporting meta data for the error.
{
"errors": [
{
"status": "500",
"title": "Internal server error",
"detail": "An internal error has occurred.",
"request_id": "00000000-0000-0000-0000-000000000000",
"meta": {
"missing_ids": [
"e7d50bd5-1833-43c0-9848-f9d325b08be8"
]
}
}
]
}
{
"errors": [
{
"status": "500",
"title": "Internal Server Error",
"detail": "There was an internal server error, you can report with your request id.",
"request_id": "635da56d-75a1-43cd-b696-7ab119756b3a"
}
]
}