{"openapi":"3.0.1","info":{"description":"Bluestone PIM API\n <b><h1>Deprecated endpoints:</h1></b><table border=\"1px;\"><tr><th style=\"text-align: center; vertical-align: middle;\"><b><h3>Uri</b></h3></th><th><b>Method</b></th><th><b><h3>Since</h3></b></th><th><b><h3>End of life</h3></b></th></tr><tr><td>/validate/product</td><td>POST</td><td>2026-03-20</td><td  bgcolor=\"red\"><b>2026-12-20</b></td></tr><tr><td>/relations/{id}</td><td>PUT</td><td>2026-09-09</td><td  bgcolor=\"red\"><b>2027-06-09</b></td></tr></table>","title":"PIM","version":"1-core"},"servers":[{"url":"api.test.bluestonepim.com/pim","description":"Default Server URL"}],"tags":[{"description":"To interact with catalog nodes.","name":"Catalog nodes"},{"description":"To interact with product policy.","name":"Product policy"},{"description":"To handle background job statuses.","name":"Bulk"},{"description":"To interact with attribute definition policy.","name":"Attribute definition policies"},{"description":"Controller to remove organization data.","name":"Organization"},{"description":"To interact with products categories.","name":"Products categories"},{"description":"Validation services.","name":"Validation"},{"description":"To interact with category attributes.","name":"Category attributes"},{"description":"To interact with products.","name":"Products"},{"description":"To interact with products templates.","name":"Products templates"},{"description":"To interact with products relations.","name":"Products relations"},{"description":"To interact with products attributes.","name":"Products attributes"},{"description":"To interact with category level attributes.","name":"Category level attributes"},{"description":"Internal endpoint for recalculating quota metrics.","name":"Metric Recalculation"},{"description":"To interact with compound attribute definitions.","name":"Compound attribute definitions"},{"description":"To interact with Relations.","name":"Relations"},{"description":"To interact with product groups.","name":"Product groups"},{"description":"To interact with products variants.","name":"Product variants"},{"description":"Maintenance tasks.","name":"Maintenance"},{"description":"To interact with attribute groups.","name":"Attribute groups"},{"description":"To interact with Catalogs.","name":"Catalogs"},{"description":"To interact with products bundles.","name":"Products bundles"},{"description":"To interact with products assets.","name":"Products assets"},{"description":"To interact with category policy.","name":"Category policy"},{"description":"To interact with products labels.","name":"Products labels"},{"description":"To interact with attribute definitions.","name":"Attribute definitions"},{"description":"To interact with relation policy.","name":"Relation policy"}],"paths":{"/async/status/{taskId}":{"get":{"description":"Returns the task's `status`, the number of items it has processed so far in `count`, and `errorMessage` when it\nended in an error. `status` is `WAITING` before the task starts and `EXECUTING` while it runs - both mean the\nwork is not finished yet - then `COMPLETED` on success or `ERROR` on failure; `TO_CANCEL`, `CANCELLED` and\n`EXPIRED` mean the task will not finish its work. Poll until the status is no longer `WAITING` or `EXECUTING`.\n\nUse it for every operation that answers with a task ID instead of doing the work in the request: archiving\nproducts in bulk, deleting a catalog node with its subtree, and the Category Level Attribute (CLA) operations\nunder `/catalogs/nodes/{id}/attributes`, which propagate values onto products in the background. Those\noperations return the ID in the `Resource-Id` response header and point `Location` at this path. Fails when no\ntask with that ID exists.\n\nFor more detailed information on how to work with product bulk actions in Bluestone PIM, refer to our help pages\n[Use product bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"getJobStatus","parameters":[{"description":"The ID of the task, as returned in the `Resource-Id` response header of the operation that\nscheduled it.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"taskId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobStatusResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve the task status was successful. The response body\ncontains the details of the task status, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Read the status of a background task.","tags":["Bulk"],"security":[{"oauth2":[]}]}},"/attributeGroups":{"get":{"description":"This endpoint allows you to retrieve a list of all attribute groups within the Bluestone PIM system. It supports\npagination to manage large result sets and can filter by context.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to our help\npages [Create, edit or remove attributes](https://help.bluestonepim.com/edit-attributes).","operationId":"findAttributeGroups","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeGroupResponse"}}},"description":"OK\n\nThis response indicates that the request to list attribute groups was successful. The response body\ncontains the details of the attribute groups, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List all attribute groups.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"post":{"description":"This endpoint allows you to create a new attribute group within the Bluestone PIM system. It is useful for\norganizing attributes into logical groupings for easier management and retrieval.\n\nFor more detailed information on how to create attribute group in Bluestone PIM, refer to our help pages\n[Create an attribute group](https://help.bluestonepim.com/edit-attributes#create-an-attribute-group).","operationId":"createAttributeGroup","parameters":[{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeGroupRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\nThis response status indicates that the request was successfully processed and a new attribute group was\ncreated. The new ID is included in the response headers under `resource-id`.\n\n**Example:** `resource-id: 664cc80da825236207fe01a7`","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Create new attribute group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/other/definitions":{"get":{"description":"This endpoint allows you to retrieve a list of attribute definitions that are not assigned to any group within\nthe Bluestone PIM system. It supports pagination to manage large result sets and can filter by context.\n\nFor more detailed information on how to find an attribute using the management API (MAPI) in Bluestone PIM, refer\nto our help pages [Find an attribute](https://help.bluestonepim.com/find-an-attribute).","operationId":"findDefinitionsWithoutGroup","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request to list attribute definitions without a group was successful.\nThe response body contains the details of the attribute definitions, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List definitions that are not in any group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/other/definitions/order":{"put":{"description":"This endpoint allows you to change the order strategy for attribute definitions that are not assigned to any\ngroup within the Bluestone PIM system. You can specify whether the definitions should be ordered by name.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"setOtherDefinitionsOrderStrategy","parameters":[{"description":"This parameter specifies whether the attribute definitions should be ordered by name.\n\n**Example:** `true`","in":"query","name":"orderByName","required":true,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK\n\nThis response indicates that the request to change the order strategy for definitions without a group was\nsuccessful."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Change order strategy for definitions without group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/other/definitions/{definitionId}":{"put":{"description":"This endpoint allows you to change the order of an attribute definition within its group in the Bluestone PIM\nsystem. You can specify the target position for the attribute definition.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"moveAttributeDefinitionInGroup","parameters":[{"description":"The unique ID for the attribute definition you want to move.\n\n**Example:** `definition12345`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"The position to which you want to move the attribute definition.\n\n**Example:** `2`","in":"query","name":"targetPosition","required":true,"schema":{"maximum":100000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK\n\nThis response indicates that the request to move the attribute definition within the group was\nsuccessful."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Change attribute's order.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/rootGroup":{"get":{"description":"This endpoint allows you to retrieve the root group of attributes within the Bluestone PIM system. The root group\nserves as the top-level container for all attribute groups.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"getAttributeRootGroup","parameters":[{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeGroupResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve the attribute root group was successful. The\nresponse body contains the details of the attribute root group, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Get attribute root group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/{id}":{"delete":{"description":"Deletes a specific attribute group identified by its internal ID.\n\nFor more detailed information on how to delete an attribute group in Bluestone PIM, refer to our help pages\n[Delete attribute group](https://help.bluestonepim.com/edit-attributes#delete-an-attribute-group).","operationId":"deleteAttributeGroup","parameters":[{"description":"The internal ID for the attribute group you want to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\nreturn."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete attribute group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"put":{"description":"This operation allows you to change the order of an attribute group by moving it to a specified position.\n\nFor more detailed information on how to edit an attribute group in Bluestone PIM, refer to our help pages\n[Edit an attribute group](https://help.bluestonepim.com/edit-attributes#edit-an-attribute-group).","operationId":"moveGroup","parameters":[{"description":"The internal ID for the attribute group to move.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The target position to move the attribute group to.\n\n**Example:** `3`","in":"query","name":"targetPosition","required":true,"schema":{"maximum":100000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK\n\nThis response indicates that the request was successful and the attribute group has been moved to the\nspecified position."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Change group's order.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/{id}/definitions":{"get":{"description":"Lists all attribute definitions within a specified attribute group. This endpoint supports pagination and context\nfallback.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"findDefinitionsInGroup","parameters":[{"description":"The internal ID for the attribute group whose definitions you want to list.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of attribute definitions\nwithin the specified group."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List definitions in attribute group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/{id}/definitions/order":{"put":{"description":"This operation allows you to change the order strategy for attribute definitions within a specified group.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"setDefinitionsOrderStrategyInGroup","parameters":[{"description":"The internal ID for the attribute group whose order strategy you want to change.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Determines if the order should be by name.\n\n**Example:** `true`","in":"query","name":"orderByName","required":true,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK\n\nThis response indicates that the request was successful and the order strategy has been updated."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Change order strategy for definitions in group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/{id}/definitions/{definitionId}":{"put":{"description":"This operation allows you to change the order of an attribute definition within a specified group by moving it to\na specified position.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"moveAttributeDefinition","parameters":[{"description":"The internal ID for the attribute group containing the attribute definition to move.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition to move.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"The target position to move the attribute definition to.\n\n**Example:** `3`","in":"query","name":"targetPosition","required":true,"schema":{"maximum":100000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK\n\nThis response indicates that the request was successful and the attribute definition has been moved to\nthe specified position."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Change attribute's order in group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/{id}/name":{"put":{"description":"This endpoint allows you to rename an attribute group within Bluestone PIM.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to our help\npages [Create, edit or remove attributes](https://help.bluestonepim.com/edit-attributes).","operationId":"rename","parameters":[{"description":"The internal ID for the attribute group you want to rename.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenameAttributeGroupRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\nreturn.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Rename attribute group.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/attributeGroups/{id}/number":{"put":{"description":"This endpoint allows you to update the number of an attribute group within Bluestone PIM.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to our help\npages [Create, edit or remove attributes](https://help.bluestonepim.com/edit-attributes).","operationId":"updateNumber","parameters":[{"description":"The internal ID for the attribute group whose number you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAttributeGroupNumberRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\nreturn.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Change attribute group number.","tags":["Attribute groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/catalogs":{"get":{"description":"Returns a paginated list of the catalogs (the root of each catalog tree), not the nodes inside them. To list a\nnode's child nodes use find_catalog_node_children; to get a whole catalog's category tree use the catalog's\nnodes endpoint.\n\nFor more detailed information on managing catalogs in Bluestone PIM, refer to the [Create and manage catalogs\nand categories](https://help.bluestonepim.com/catalogs-categories) article.","operationId":"listCatalogs","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryBasicResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of catalogs."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List top-level catalogs.","tags":["Catalogs"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes":{"post":{"description":"Creates a node in the catalog tree and returns its generated ID in the `resource-id` response header. Set the\nrequest body `parentId` to place the node under an existing node; omit `parentId` to create a new top-level\ncatalog (the root of its own tree). Fails if `validation` is `NAME` and any catalog or category with the same\nname already exists (the check is not limited to siblings). Also fails if `number` is not unique.\n\nFor more detailed information on how to work with catalogs and categories in Bluestone PIM, refer to our help\npages [Create and manage catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"createCategory","parameters":[{"description":"When set to `NAME`, the request fails if another node with the same name already exists.\nOmit it to allow duplicate names. The `number` must always be unique regardless of this setting.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCategoryRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\nThis response indicates that the request was successful and a new catalog or category has been created.\n The new ID is included in the response headers under `resource-id`.\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create a catalog node (category) or a top-level catalog.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/assets/{id}":{"get":{"description":"This endpoint allows you to retrieve a list of categories associated with a specific asset.\n\nFor more detailed information on how to work with assets in Bluestone PIM, refer to our help pages\n[Assets module](https://help.bluestonepim.com/assets-panel).","operationId":"getCategoriesByAssetId","parameters":[{"description":"The internal ID for the asset whose associated categories you want to retrieve.\n\n**Example:** `ff18af21-ec9d-4bd5-917f-ddfc07dcb706`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryBasicResponse"}}},"description":"OK\n\nThe internal ID for the asset whose associated categories you want to retrieve."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List categories associated with asset.","tags":["Catalog node assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/attributeDefinition/{attributeDefinitionId}":{"get":{"description":"Returns the paginated basic data of the categories the attribute definition is assigned on - not the CLA values,\nand not the categories that merely inherit it through propagation. Use it to see where a shared value is\ncontrolled from and how far a change or removal would reach. To read the values and flags of one category, use\n`GET /catalogs/nodes/{id}/attributes`; to list the assignments of every attribute definition at once, use\n`GET /catalogs/nodes/attributes`.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"findByCategoryLevelAttributes","parameters":[{"description":"The internal ID for the attribute definition whose associated catalog\nnodes/categories you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryBasicResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve catalog nodes/categories associated with an\nattribute definition was successful. The response body contains the details of the catalog nodes/categories,\nformatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List all catalog nodes/categories that use the attribute definition in a Category Level Attribute (CLA).","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/attributes":{"get":{"description":"Returns one paginated entry per assignment - the category it is assigned on, the attribute definition and the\ncurrent value - so shared values can be reviewed catalog-wide without opening one category at a time. Only\ncategories the attribute is actually assigned on are listed: the ones that merely inherit it through\npropagation are not. Attribute definitions the caller has no access to are left out.\n\nTo see everything that applies to a single category, inherited attributes included, use\n`GET /catalogs/nodes/{id}/attributes` for that category. To find the categories using one particular attribute\ndefinition, use `GET /catalogs/nodes/attributeDefinition/{attributeDefinitionId}`.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"list","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Returns only attributes whose value contains this text, matched case-insensitively in the current\ncontext. Only simple attribute values are matched - column, matrix and dictionary values are ignored by this\nfilter.","in":"query","name":"value","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryAttributeBaseMetadataResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve category level attributes was successful. The\nresponse body contains the details of the attributes, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List Category Level Attributes (CLA) across all catalog nodes/categories.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/list":{"post":{"description":"This endpoint allows you to filter and retrieve details of catalog nodes/categories based on specified\ncriteria.\n\nFor more detailed information on how to work with catalog nodes/categories in Bluestone PIM, refer to our help\npages [Catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"getFilteredNodes","parameters":[{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryFilteringRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryBasicResponse"}}},"description":"OK\n\nThis response indicates that the request to filter catalog nodes/categories was successful. The response\nbody contains the details of the filtered catalog nodes/categories, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Describe catalog nodes/categories.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}":{"delete":{"description":"Deletes the node identified by `id` together with all of its descendant nodes, and unassigns every product from\nthe deleted node and its descendants (the products themselves are not deleted). Deleting a top-level node\nremoves the whole catalog tree. This cannot be undone.\n\nThe deletion runs as a background task: the call returns as soon as the task is scheduled, so the nodes may\nstill be readable for a moment afterwards. The task ID is returned in the `Resource-Id` response header and\n`Location` points at `GET /async/status/{taskId}`, which reports whether the deletion has finished.","operationId":"deleteCategoryNode","parameters":[{"description":"The internal ID for the catalog node/category you want to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted\n\nIndicates that the deletion request was accepted and the background task has been scheduled.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete a catalog node (category) and its entire subtree.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CATALOG"}],"security":[{"oauth2":[]}]},"get":{"description":"This endpoint allows you to retrieve details of a specific catalog node/category identified by its internal ID.\n\nFor more detailed information on how to work with catalog nodes/categories in Bluestone PIM, refer to our help\npages [Catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"getNode","parameters":[{"description":"The internal ID for the catalog node you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryBasicResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve a catalog node/category was successful. The\nresponse body contains the details of the catalog node/category, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Describe catalog node/category.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]},"patch":{"description":"Updates only the fields present in the request body (name, number, description); omitted fields are left\nunchanged. Use this for a partial edit. To replace all of a node's details in one call, use the full-update PUT\non the same path instead.","operationId":"partialUpdateCatalogNode","parameters":[{"description":"The internal ID for the catalog node/category you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryMetadataUpdateRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Partially update a catalog node's (category's) main details.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]},"put":{"description":"This endpoint allows you to update the details of a specific catalog node/category identified by its internal ID.\n\nFor more detailed information on how to work with catalog nodes/categories in Bluestone PIM, refer to our help\npages [Catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"updateCatalogNode","parameters":[{"description":"The internal ID for the catalog node/category you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCategoryRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update catalog node/category.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/assets":{"get":{"description":"This endpoint allows you to retrieve a list of assets associated with a specific catalog node.\n\nFor more detailed information on how to work with assets in Bluestone PIM, refer to our help pages\n[Assets module](https://help.bluestonepim.com/assets-panel).","operationId":"getCategoryAssets","parameters":[{"description":"The internal ID for the catalog node whose associated assets you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableString"}}},"description":"OK\n\nThis response indicates that the request to retrieve assets associated with a catalog node was\nsuccessful. The response body contains the details of the assets, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List assets associated with category.","tags":["Catalog node assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/assets/{assetId}":{"delete":{"description":"This operation removes the association between a specified asset and a category. Once disassociated, the asset\nwill no longer be linked to the category.","operationId":"disassociateAssetFromCategory","parameters":[{"description":"The ID of the category from which the asset will be disassociated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the asset to be disassociated from the category.\n\n**Example:** `ff18af21-ec9d-4bd5-917f-ddfc07dcb706`","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nIndicates that the asset was successfully disassociated from the category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Disassociate asset from category.","tags":["Catalog node assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CATALOG"}],"security":[{"oauth2":[]}]},"post":{"description":"This operation creates an association between a specified asset and a category. Once associated, the asset will\nbe linked to the category.","operationId":"associateAssetWithCategory","parameters":[{"description":"The unique ID of the category to which the asset will be associated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The unique ID of the asset to be associated with the category.\n\n**Example:** `ff18af21-ec9d-4bd5-917f-ddfc07dcb706`","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nIndicates that the asset was successfully associated with the category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Associate asset with category.","tags":["Catalog node assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"CATALOG"}],"security":[{"oauth2":[]}]},"put":{"description":"This operation changes the order of a specified asset within a category. The asset will be moved to a new\nposition as specified in the request.","operationId":"moveCategoryAsset","parameters":[{"description":"The ID of the category containing the asset to be moved.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the asset to be moved.\n\n**Example:** `ff18af21-ec9d-4bd5-917f-ddfc07dcb706`","in":"path","name":"assetId","required":true,"schema":{"type":"string"}},{"description":"The target position within the category where the asset will be moved. This determines the\nnew order of the asset within the category.","in":"query","name":"targetPosition","required":true,"schema":{"maximum":10000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content\n\nIndicates that the asset was successfully associated with the category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Change asset's order.","tags":["Catalog node assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes":{"get":{"description":"Returns every attribute that applies to the category: the ones assigned on it, plus the ones assigned on a\nparent category with propagation switched on. An attribute assigned on a parent without propagation stays on\nthat parent and is not listed, and when the same attribute is assigned both here and on a parent, the value of\nthis category is the one returned. Values come back in the requested context, in the field matching the\ndefinition type - `attributeValue` for the simple types, `column`, `matrix` or `dictionary` for the rest.\n\n`assignedOn` is the category the returned value is stored on; anything other than this category means the\nattribute is inherited and can only be removed on the category named there. `copySetOn`, `lockedSetOn` and\n`mandatorySetOn` are the categories that switched propagation, lock and mandatory on, and are empty while the\nflag is off - a flag switched on by a parent can only be switched off on that parent, and a parent's lock also\nblocks changing the value here.\n\nTo review CLA assignments across the whole catalog instead of one category, use\n`GET /catalogs/nodes/attributes`.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"listAttributesAttachedToGivenNode","parameters":[{"description":"The ID of the catalog node/category for which attributes are being listed.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryAttributeMetadataResponse"}}},"description":"OK\n\nThe request was successful, and the response contains a list of Category Level Attributes (CLA) attached\n to the specified catalog node/category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List the Category Level Attributes (CLA) of one catalog node/category.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes/{attributeDefinitionId}":{"delete":{"description":"Removes the assignment from this category only: the attribute definition itself is untouched, products keep the\nvalues already propagated to them, and subcategories stop inheriting the attribute. An attribute inherited from\na parent category cannot be removed here - call this on the category it is assigned on, which\n`GET /catalogs/nodes/{id}/attributes` reports as `assignedOn`. Nothing is propagated, and the call also\nsucceeds when the category has no such attribute; it fails only when the attribute definition itself does not\nexist.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"deleteAttributeFromNode","parameters":[{"description":"The ID of the catalog node/category from which the Category Level Attribute (CLA) will be deleted.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the attribute definition to be deleted from the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nIndicates that the attribute was successfully deleted from the catalog node/category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete Category Level Attribute (CLA) from catalog node/category.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"patch":{"description":"At least one of `attributeValue`, `copyAttribute`, `locked` and `mandatory` must be sent. This is the only\noperation that sets the three flags, whatever the definition type: `copyAttribute` switches propagation on, so\nthat the attribute and its value travel down to the sub-categories and their products; `locked` requires the\nproducts in the category to keep the CLA value; `mandatory` requires them to have a value at all.\n\nWorks both on an attribute assigned to this category and on one inherited from a parent category - updating an\ninherited attribute creates an assignment on this category that overrides it. Column, matrix and dictionary\nvalues cannot be changed here; use the `/column`, `/matrix` or `/dictionary/values` variants of this path for\nthose.\n\nFails when the attribute definition is assigned neither on this category nor on any of its parents, when a flag\nbeing sent was switched on by a parent category, when `locked` is sent for a column, matrix or compound\ndefinition, or when `forceCla` is combined with a compound definition. When a parent category has locked the\nattribute, a sent value is ignored without an error.\n\nThe change is stored on the category immediately, while applying it to products runs as a background task. That\ntask covers the products in this category, and the products in its sub-categories only while propagation is on\nfor this attribute. The task ID is returned in the `Resource-Id` response header and `Location` points at\n`GET /async/status/{taskId}`, which reports whether the propagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"updateNodeAttributeValue","parameters":[{"description":"The ID of the catalog node/category where the attribute value will be updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the attribute definition whose value will be updated.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCategoryAttributeRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nIndicates that the update request was accepted and the propagation task has been scheduled."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update the value or the propagation, lock and mandatory flags of a Category Level Attribute (CLA) and schedule\npropagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"post":{"description":"Handles simple attribute definitions - text, date, numeric, boolean, single-select and multi-select. For the\nother definition types use the `/column`, `/matrix`, `/dictionary` or `/compound` variants of this endpoint; a\ndefinition of the wrong type, one that does not exist or one marked for removal is reported as not found.\nFails when the category already has this attribute definition as a CLA - change the existing one with\n`PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}` instead. An attribute inherited from a parent\ncategory does not count as assigned here, so the call succeeds and creates an assignment on this category\nthat overrides the inherited one.\n\nThe attribute is stored on the category immediately, while copying its value onto products runs as a background\ntask. That task covers the products in this category; the products in its sub-categories are reached only once\npropagation is switched on for this attribute, which is off on a newly created CLA - switch it on, as well as\nlock and mandatory, with `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}`. The task ID is\nreturned in the `Resource-Id` response header and `Location` points at `GET /async/status/{taskId}`, which\nreports whether the propagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"createCatalogNodeAttribute","parameters":[{"description":"The ID of the catalog node/category where the Category Level Attribute (CLA) will be created.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the attribute definition to be used for the Category Level Attribute\n(CLA).\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryAttributeRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nIndicates that the creation request was accepted and the propagation task has been scheduled."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Create a simple Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/column":{"post":{"description":"Handles column attribute definitions only - for simple definitions use `POST\n/catalogs/nodes/{id}/attributes/{attributeDefinitionId}` - and fails when the category already has this\nattribute definition as a CLA; change the existing values with `PUT\n/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/column` instead. An attribute inherited from a parent\ncategory does not count as assigned here, so the call succeeds and creates an assignment on this category that\noverrides the inherited one.\n\nThe attribute is stored on the category immediately, while copying its values onto products runs as a background\ntask. That task covers the products in this category; the products in its sub-categories are reached only once\npropagation is switched on for this attribute, which is off on a newly created CLA - switch it on, as well as\nmandatory, with `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}`; the lock flag is not supported\nfor column definitions. The task ID is returned in the `Resource-Id` response header and `Location` points at\n`GET /async/status/{taskId}`, which reports whether the propagation has finished.\n\nA request body is always required, including when the attribute is attached with no values set - send\n`{\"column\": {}}` in that case. The keys inside `column` are the column value IDs taken from the definition's\nrestriction, read with `GET /definitions/{attributeDefinitionId}`; column names are rejected.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"createCatalogNodeAttributeColumn","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryColumnAttributeRequest"}}},"description":"The column values for the new Category Level Attribute (CLA). The body is mandatory - send\n`{\"column\": {}}` to attach the attribute with every column left empty.\n\n**Example:** `{\"column\": {\"634c26e14cedfd0001775ea0\": \"12 V\"}}`","required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Create column Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"Expects the complete set of column values: columns left out of `column` are cleared, so send every column that\nshould keep its value. Works both on a column attribute assigned to this category and on one inherited from a\nparent category, in which case a CLA overriding it is created on this category. The propagation and mandatory\nflags can be set here or with `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}`, which handles\nthem for every definition type; `locked` is rejected because the lock flag is not supported for column\ndefinitions.\n\nFails when the attribute definition is assigned neither on this category nor on any of its parents, or when it\nis not a column definition. When a parent category has locked the attribute, the sent values are ignored without\nan error.\n\nThe change is stored on the category immediately, while applying it to products runs as a background task. That\ntask covers the products in this category, and the products in its sub-categories only while propagation is on\nfor this attribute. The task ID is returned in the `Resource-Id` response header and `Location` points at\n`GET /async/status/{taskId}`, which reports whether the propagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"updateNodeAttributeColumnValue","parameters":[{"description":"The ID of the catalog node/category where the attribute value will be updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the attribute definition whose value will be updated.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCategoryColumnAttributeRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update column Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/compound":{"post":{"description":"Attaches a compound attribute definition together with all of its sub-attributes in one call; sub-attributes the\ncategory already has are left untouched. No value and no flags are set here - set each sub-attribute afterwards\nwith the operation matching its type: `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}` for the\nsimple types, and the `/column`, `/matrix` or `/dictionary/values` variants of that path for the rest. Handles\ncompound definitions only and fails when the category already has this definition as a CLA. An attribute\ninherited from a parent category does not count as assigned here, so the call succeeds and creates an assignment\non this category that overrides the inherited one.\n\nThis operation takes no `forceCla`, because a compound attribute carries no value of its own, and\n`PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}` rejects `forceCla` for a compound definition -\nsend it on the individual sub-attributes instead.\n\nThe attributes are stored on the category immediately, while adding them to products runs as a background task.\nThat task covers the products in this category; the products in its sub-categories are reached only once\npropagation is switched on for the attribute, which is off on a newly created CLA. The task ID is returned in\nthe `Resource-Id` response header and `Location` points at `GET /async/status/{taskId}`, which reports whether\nthe propagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"createCatalogNodeAttributeCompound","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Create compound Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/dictionary":{"post":{"description":"Attaches a dictionary attribute definition to the category with no values selected yet. Values are selected\nwith `POST /catalogs/nodes/{id}/attributes/{attributeDefinitionId}/dictionary/values`, which attaches the\nattribute itself when it is missing - so this call is only needed when the attribute should be in place\nbefore any value is chosen. Handles dictionary definitions only and fails when the category already has this\ndefinition as a CLA. An attribute inherited from a parent\ncategory does not count as assigned here, so the call succeeds and creates an assignment on this category\nthat overrides the inherited one.\n\nThe attribute is stored on the category immediately, while adding it to products runs as a background task. That\ntask covers the products in this category; the products in its sub-categories are reached only once propagation\nis switched on for this attribute, which is off on a newly created CLA - switch it on, as well as mandatory,\nwith `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}`. The task ID is returned in the\n`Resource-Id` response header and `Location` points at `GET /async/status/{taskId}`, which reports whether the\npropagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"createCatalogNodeAttributeDictionary","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Create dictionary Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/dictionary/values":{"post":{"description":"Replaces the selected dictionary values with exactly the set sent in the body: values left out are unselected\nand an empty list clears the selection. The attribute is attached to the category first when it is not there\nyet, which makes `POST /catalogs/nodes/{id}/attributes/{attributeDefinitionId}/dictionary` optional. Fails\nwhen a value ID does not belong to this attribute definition or when the definition's limit on the number of\nselected values would be exceeded.\n\nThe selection is stored on the category immediately, while copying it onto products runs as a background task.\nThat task covers the products in this category, and the products in its sub-categories only while propagation is\non for this attribute. The task ID is returned in the `Resource-Id` response header and `Location` points at\n`GET /async/status/{taskId}`, which reports whether the propagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"setDictionaryAttributeValuesForCategory","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetCategoryDictionaryAttributeValuesRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Set values for dictionary Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/matrix":{"post":{"description":"Handles matrix attribute definitions only - for simple definitions use `POST\n/catalogs/nodes/{id}/attributes/{attributeDefinitionId}` - and fails when the category already has this\nattribute definition as a CLA; change the existing values with `PUT\n/catalogs/nodes/{id}/attributes/{attributeDefinitionId}/matrix` instead. An attribute inherited from a parent\ncategory does not count as assigned here, so the call succeeds and creates an assignment on this category that\noverrides the inherited one.\n\nThe attribute is stored on the category immediately, while copying its values onto products runs as a background\ntask. That task covers the products in this category; the products in its sub-categories are reached only once\npropagation is switched on for this attribute, which is off on a newly created CLA - switch it on, as well as\nmandatory, with `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}`; the lock flag is not supported\nfor matrix definitions. The task ID is returned in the `Resource-Id` response header and `Location` points at\n`GET /async/status/{taskId}`, which reports whether the propagation has finished.\n\nA request body is always required, including when the attribute is attached with no values set - send\n`{\"matrix\": {}}` in that case. The keys inside `matrix` are the column value IDs and, one level deeper, the\nrow value IDs taken from the definition's restriction, read with `GET /definitions/{attributeDefinitionId}`;\ncolumn and row names are rejected.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"createCatalogNodeAttributeMatrix","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryMatrixAttributeRequest"}}},"description":"The matrix values for the new Category Level Attribute (CLA). The body is mandatory - send\n`{\"matrix\": {}}` to attach the attribute with every cell left empty.\n\n**Example:** `{\"matrix\": {\"634c26e14cedfd0001775ea0\": {\"634c26e14cedfd0001775ea1\": \"12 V\"}}}`","required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Create matrix Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"Expects the complete set of matrix values: cells left out of `matrix` are cleared, so send every cell that\nshould keep its value. Works both on a matrix attribute assigned to this category and on one inherited from a\nparent category, in which case a CLA overriding it is created on this category. The propagation and mandatory\nflags can be set here or with `PATCH /catalogs/nodes/{id}/attributes/{attributeDefinitionId}`, which handles\nthem for every definition type; `locked` is rejected because the lock flag is not supported for matrix\ndefinitions.\n\nFails when the attribute definition is assigned neither on this category nor on any of its parents, or when it\nis not a matrix definition. When a parent category has locked the attribute, the sent values are ignored without\nan error.\n\nThe change is stored on the category immediately, while applying it to products runs as a background task. That\ntask covers the products in this category, and the products in its sub-categories only while propagation is on\nfor this attribute. The task ID is returned in the `Resource-Id` response header and `Location` points at\n`GET /async/status/{taskId}`, which reports whether the propagation has finished.\n\nFor more detailed information on how to work with Category Level Attributes in Bluestone PIM, refer to our help\npages [Category Level Attributes (CLA)](https://help.bluestonepim.com/category-level-attributes).","operationId":"updateNodeAttributeMatrixValue","parameters":[{"description":"The ID of the catalog node/category where the attribute value will be updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the attribute definition whose value will be updated.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"Controls what the propagation task does with the products it reaches that already have a value\nfor this attribute:\n\n`false` = Keep the existing product values and fill in only the empty ones. This is the default when the\nparameter is omitted.\n\n`true` = Overwrite the existing product values with the value of this Category Level Attribute (CLA).\n\n**Warning:** `true` replaces values on every product the propagation reaches - the products in this category,\nand the products in all of its sub-categories as well once propagation is on for this attribute - including\nvalues entered on individual products by hand, however many products that is. The propagation runs in the\nbackground and cannot be undone: setting the flag back to `false` only changes later propagations, and\nrestoring the replaced values means setting them again product by product. Send `true` only when replacing the\nexisting product values is what was explicitly asked for.","in":"query","name":"forceCla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCategoryMatrixAttributeRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update matrix Category Level Attribute (CLA) and schedule propagation task.","tags":["Category level attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/category-attributes":{"get":{"description":"","operationId":"getAttributesAssociatedToCategory","parameters":[{"description":"The ID for the catalog node/category.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableLocalCategoryAttributeDto"}}},"description":"OK\n\nThis response indicates that the request to retrieve category attributes was successful. The\nresponse body contains the details of the attributes, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List all Catalog or Category attributes.","tags":["Category attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/category-attributes/{definitionId}":{"delete":{"description":"","operationId":"unassignDefinitionFromCategory","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Unassigns an attribute from Catalog/Category.","tags":["Category attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]},"post":{"description":"","operationId":"assignDefinitionToCategory","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Assigns an attribute to Catalog/Category.","tags":["Category attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/category-attributes/{definitionId}/dictionary":{"put":{"description":"","operationId":"setDictionaryDefinitionValue","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateDictionaryCategoryAttributeValuesRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Sets the value of a dictionary Catalog or Category attribute.","tags":["Category attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/category-attributes/{definitionId}/select":{"put":{"description":"","operationId":"setSelectDefinitionValue","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSelectCategoryAttributeValuesRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Sets the value of a select/multiselect Catalog or Category attribute.","tags":["Category attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/category-attributes/{definitionId}/simple":{"put":{"description":"","operationId":"setSimpleDefinitionValue","parameters":[{"description":"The ID for the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSimpleCategoryAttributeValueRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Sets the value of a simple Catalog or Category attribute.","tags":["Category attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/children":{"get":{"description":"Returns a paginated list of the immediate children of the node identified by `id` (one level down, not the full\nsubtree). To list top-level catalogs instead of a node's children, use find_catalogs.","operationId":"getCatalogNodeChildren","parameters":[{"description":"The internal ID for the catalog node/category whose child nodes/categories you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryBasicResponse"}}},"description":"OK\n\nRequest was successful. The response contains a list of child nodes."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List the direct child nodes (categories) of a catalog node.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/move":{"put":{"description":"Move the specified catalog node/category to a new parent node/category, effectively changing its position in the\ncatalog hierarchy.\n\nFor more detailed information on how to work with catalogs and categories in Bluestone PIM, refer to our help\npages [Create and manage catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"moveCatalogNode","parameters":[{"description":"The internal ID for the catalog node/category you want to move.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveCategoryRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThe request was successfully processed, but there is no content to return.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Move catalog node/category to new parent.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/order":{"put":{"description":"Update the order of the specified catalog node/category within its parent node/category. This operation allows\nfor reordering of categories.\n\nFor more detailed information on how to work with catalogs and categories in Bluestone PIM, refer to our help\npages [Create and manage catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"updateCatalogNodeOrder","parameters":[{"description":"The internal ID for the catalog node/category whose order you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The target position to move the catalog node/category to. Minimum value is `0`.","in":"query","name":"targetPosition","required":true,"schema":{"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content\n\nThe request was successfully processed, but there is no content to return.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Change category order.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/path":{"get":{"description":"Retrieve the path from the specified catalog node/category to the root node. This endpoint provides the full\nhierarchy path.\n\nFor more detailed information on how to work with catalogs and categories in Bluestone PIM, refer to our help\npages [Create and manage catalogs and categories](https://help.bluestonepim.com/catalogs-categories).","operationId":"getPathToNode","parameters":[{"description":"The internal ID for the catalog node/category whose path to the root you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableString"}}},"description":"OK\n\nRequest was successful. The response contains the path to the root."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List catalog node/category path to root.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/policy":{"get":{"description":"Retrieve a list of policies associated with the specified catalog node. This endpoint supports pagination.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"getByCategoryNodeId","parameters":[{"description":"The internal ID for the catalog node whose policies you want to retrieve.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListablePolicyDto"}}},"description":"OK\n\nRequest was successful. The response contains a list of policies."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get policies by category node id.","tags":["Category policy"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Add a new policy to the specified catalog node. This operation allows for the assignment of detailed permissions\nto the node.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"addPolicyToCategoryNode","parameters":[{"description":"The internal ID for the catalog node to which you want to add a policy.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Add policy to category node.","tags":["Category policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/policy/{policyId}/{policyType}":{"delete":{"description":"Delete a specific policy from the specified catalog node. This operation removes the assigned permissions for\nthe node.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"deletePolicyByCategoryNodeAndPolicyId","parameters":[{"description":"The internal ID for the catalog node from which you want to delete a policy.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the policy to be deleted.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"policyId","required":true,"schema":{"type":"string"}},{"description":"The type of policy to be deleted (`READ` or `WRITE`).","in":"path","name":"policyType","required":true,"schema":{"type":"string","enum":["READ","WRITE"]}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete policy by category node and policy id.","tags":["Category policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/products":{"get":{"description":"List all products associated with the specified catalog node/category. This endpoint supports pagination and can\nfilter by archive state and context.\n\nFor more detailed information on managing products in Bluestone PIM, refer to the [Create new\nproducts](https://help.bluestonepim.com/add-new-products) and [Search your\nproducts](https://help.bluestonepim.com/search-your-products) articles.","operationId":"getCategoryProducts","parameters":[{"description":"The ID of the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryProductResponse"}}},"description":"OK\n\nThis response indicates a successful retrieval of catalog node/category products. The response body\n contains a list of products associated with the catalog node/category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List catalog node/category products.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]},"post":{"description":"Add a product to the specified catalog node/category. This operation assigns the product to the catalog\nnode/category, making it part of the catalog node's/category's product list.\n\nFor more detailed information on managing products in Bluestone PIM, refer to the [Create new\nproducts](https://help.bluestonepim.com/add-new-products) and [Search your\nproducts](https://help.bluestonepim.com/search-your-products) articles.","operationId":"addCategoryProducts","parameters":[{"description":"The internal ID of the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryProductRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add product to the catalog node/category.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"PRODUCT_ASSOCIATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/products/policy":{"get":{"description":"Retrieve the policies associated with a specific catalog node. This endpoint supports pagination and allows\nfiltering by context.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"getPolicyByCategoryNodeId","parameters":[{"description":"The internal ID of the catalog node.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListablePolicyDto"}}},"description":"OK\n\nThis response indicates a successful retrieval of policies associated with the catalog node.\nThe response body contains a list of policies."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get policy by category node id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Add a policy to all products associated with the specified catalog node. This operation assigns the policy to the products,\nenforcing the defined rules and permissions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"addPolicyToProductsForCategoryNodeId","parameters":[{"description":"The ID of the catalog node.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add policy to products for category node id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/products/policy/{policyId}/{policyType}":{"delete":{"description":"Remove a policy from all products associated with the specified catalog node. This operation removes the policy,\nrevoking the defined rules and permissions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"deletePolicyFromProductsForCategoryNodeId","parameters":[{"description":"The ID of the catalog node.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the policy.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"policyId","required":true,"schema":{"type":"string"}},{"description":"The type of the policy (`READ` or `WRITE`).","in":"path","name":"policyType","required":true,"schema":{"type":"string","enum":["READ","WRITE"]}}],"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Delete policy from products for category node id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/nodes/{id}/products/{productId}":{"delete":{"description":"Remove a product from the specified catalog node/category. This operation disassociates the product from the\ncatalog node/category, removing it from the catalog node's/category's product list.\n\nFor more detailed information on managing products in Bluestone PIM, refer to the [Create new\nproducts](https://help.bluestonepim.com/add-new-products) and [Search your\nproducts](https://help.bluestonepim.com/search-your-products) articles.","operationId":"deleteCategoryProducts","parameters":[{"description":"The internal ID of the catalog node/category.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the product.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"productId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Remove product from the catalog node/category.","tags":["Catalog nodes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"PRODUCT_ASSOCIATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}":{"delete":{"description":"Archive the specified catalog. This operation marks the catalog as archived, making it inactive and preventing\nfurther modifications.\n\nFor more detailed information on managing catalogs in Bluestone PIM, refer to the [Create and manage catalogs\nand categories](https://help.bluestonepim.com/catalogs-categories) article.","operationId":"archive","parameters":[{"description":"The internal ID of the catalog.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted\n\nThis response indicates that the request was successfully processed and there is no content to return.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Archive catalog.","tags":["Catalogs"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CATALOG"}],"security":[{"oauth2":[]}]},"put":{"description":"Unarchive the specified catalog. This operation marks the catalog as active, allowing further modifications and\ninteractions.\n\nFor more detailed information on managing catalogs in Bluestone PIM, refer to the [Create and manage catalogs\nand categories](https://help.bluestonepim.com/catalogs-categories) article.","operationId":"unarchive","parameters":[{"description":"The internal ID of the catalog.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Unarchive catalog.","tags":["Catalogs"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}/nodes":{"get":{"description":"Retrieve the entire category tree from the specified catalog. This endpoint allows you to view all\nnodes/categories within the catalog, supporting filtering by archive state and context.\n\nFor more detailed information on managing catalogs and categories in Bluestone PIM, refer to the [Create and\nmanage catalogs and categories](https://help.bluestonepim.com/catalogs-categories) article.","operationId":"getCategoryTree","parameters":[{"description":"The internal ID of the catalog.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryWithChildrenResponse"}}},"description":"OK\n\nThis response indicates a successful retrieval of the category tree. The response body contains the\n details of the nodes/categories from the catalog."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List all nodes/categories from catalog.","tags":["Catalogs"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}/nodes/cursor/view":{"post":{"description":"This endpoint allows you to efficiently browse large category trees by specifying a cursor\nposition and view configuration, supporting filtering by archive state and context.\n\nFor more detailed information on managing catalogs and categories in Bluestone PIM, refer to the [Create and\nmanage catalogs and categories](https://help.bluestonepim.com/catalogs-categories) article.","operationId":"getCategoryView","parameters":[{"description":"The internal ID of the catalog.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"$ref":"#/components/schemas/ObjectId"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryWithCursorAndViewRequestDto"}}},"description":"The request body containing cursor position and view configuration.","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableWithCursorCategoryWithCursorAndViewResponse"}}},"description":"OK\n\nThis response indicates a successful retrieval of the category nodes. The response body contains the\n list of child categories along with a cursor pointing to the last element for subsequent requests."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get categories with view and cursor\n\nRetrieve a paginated list of child categories from the specified catalog using cursor-based pagination and\nview filtering.","tags":["Catalogs"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}/policy":{"get":{"description":"Retrieve the policies associated with a specific category by its internal ID. This operation allows users to\naccess policies applied to a category, including read and write permissions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"getPoliciesByCategoryId","parameters":[{"description":"The internal ID for the category you want to retrieve.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListablePolicyDto"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of policies associated with\n        the category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get policies by category id.","tags":["Category policy"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Assign a new policy to a specific category by its internal ID. This operation allows users to add read or write\npermissions to a category.\n\nFor more detailed information on managing policies, refer to our help pages [Get started with Management\nAPI](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"addPolicyToCategory","parameters":[{"description":"The internal ID for the category to which the policy will be added.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Add policy to category.","tags":["Category policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}/policy/{policyId}/{policyType}":{"delete":{"description":"Remove a specific policy from a category by its internal ID and policy ID. This operation allows users to delete\nread or write permissions from a category.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"deletePolicyByCategoryAndPolicyId","parameters":[{"description":"The internal ID for the category from which the policy will be deleted.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the policy to be deleted.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"policyId","required":true,"schema":{"type":"string"}},{"description":"The type of policy to be deleted. It can be either `READ` or `WRITE`.","in":"path","name":"policyType","required":true,"schema":{"type":"string","enum":["READ","WRITE"]}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete policy by category and policy id.","tags":["Category policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}/products/policy":{"get":{"description":"Retrieve the policies associated with a specific category by its internal ID. This operation allows users to\naccess policies applied to a category, including read and write permissions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"getPolicyByCategoryId","parameters":[{"description":"The internal ID for the category you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListablePolicyDto"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of policies associated\nwith the category."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get policy by category id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Assign a new policy to products within a specific category by its internal ID. This operation allows users to\nadd read or write permissions to products in a category.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"addPolicyToProductsForCategoryId","parameters":[{"description":"The internal ID for the category to which the policy will be added.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nThis response status indicates that the request has been accepted for processing, but the processing\nhas not been completed.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add policy to products for category id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/catalogs/{id}/products/policy/{policyId}/{policyType}":{"delete":{"description":"Remove a specific policy from products within a category by its internal ID and policy ID. This operation allows\nusers to delete read or write permissions from products in a category.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"deletePolicyFromProductsForCategoryId","parameters":[{"description":"The internal ID for the category from which the policy will be deleted.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the policy to be deleted.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"policyId","required":true,"schema":{"type":"string"}},{"description":"The type of policy to be deleted. It can be either `READ` or `WRITE`.","in":"path","name":"policyType","required":true,"schema":{"type":"string","enum":["READ","WRITE"]}}],"responses":{"202":{"description":"Accepted\n\nThis response status indicates that the request has been accepted for processing, but the processing\nhas not been completed.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Delete policy from products for category id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/compoundDefinitions":{"get":{"description":"Retrieve a list of compound attribute definitions with pagination support. This operation allows users to access\ndetails of compound attributes, including their names and descriptions.\n\nFor more detailed information on managing compound attributes, refer to our help pages [Attribute types -\nCompound](https://help.bluestonepim.com/attribute-types-1#compound).","operationId":"findAllCompoundDefinitions","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCompoundAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of compound attribute\n        definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Lists details of compound attribute definition.","tags":["Compound attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"post":{"description":"Create a new compound attribute definition. This operation allows users to define new attributes that are\ncombinations of existing ones.\n\nFor more detailed information on managing compound attributes, refer to our help pages [Attribute types -\nCompound](https://help.bluestonepim.com/attribute-types-1#compound).","operationId":"createCompoundDefinition","parameters":[{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as another existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundAttributeDefinitionRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\nThis response indicates that the request was successfully processed and the compound attribute\n        definition has been updated.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create compound attribute definition.","tags":["Compound attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/compoundDefinitions/attributeDefinition/{attributeDefinitionId}":{"get":{"description":"List all compound attributes that use the specified attribute definition. This endpoint helps in retrieving\ncompound attributes that are associated with the given attribute definition ID.\n\nFor more detailed information on managing compound attributes, refer to our help pages [Attribute types -\nCompound](https://help.bluestonepim.com/attribute-types-1#compound).","operationId":"findBySubDefinitions","parameters":[{"description":"The internal ID for the attribute definition you want to retrieve details for.","in":"path","name":"attributeDefinitionId","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCompoundAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of compound attribute\n        definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List all compound attributes that use the attribute definition.","tags":["Compound attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/compoundDefinitions/{id}":{"delete":{"description":"Deletes a specific compound attribute definition identified by its internal ID.\n\nFor more detailed information on managing compound attributes, refer to our help pages [Attribute types -\nCompound](https://help.bluestonepim.com/attribute-types-1#compound).","operationId":"deleteCompoundDefinition","parameters":[{"description":"The internal ID for the compound attribute definition you want to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete compound attribute definition.","tags":["Compound attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"get":{"description":"Retrieve detailed information about a specific compound attribute definition using its internal ID.\n\nFor more detailed information on managing compound attributes, refer to our help pages [Attribute types -\nCompound](https://help.bluestonepim.com/attribute-types-1#compound).","operationId":"getCompoundDefinition","parameters":[{"description":"The internal ID for the compound attribute definition you want to retrieve details for.\n\n*Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns the details of the compound\n        attribute definition."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show details of compound attribute definition.","tags":["Compound attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"put":{"description":"Update an existing compound attribute definition using its internal ID. This endpoint allows modifying the\ndefinition's properties and validation strategies.\n\nFor more detailed information on managing compound attributes, refer to our help pages [Attribute\ntypes](https://help.bluestonepim.com/attribute-types-1#compound).","operationId":"updateCompoundDefinition","parameters":[{"description":"The internal ID for the compound attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as another existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundAttributeDefinitionRequest"}}},"required":true},"responses":{"200":{"description":"OK\n\nThis response indicates that the request was successfully processed and the compound attribute\n        definition has been updated.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update compound attribute definition.","tags":["Compound attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions":{"get":{"description":"Retrieve a list of all attribute definitions available. This endpoint supports\npagination for managing large result sets.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api), [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) and [Attribute\ntypes](https://help.bluestonepim.com/attribute-types-1).","operationId":"findAllAttributeDefinitions","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of attribute definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List all attribute definitions.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"post":{"description":"Creates a basic (single-value) attribute definition and returns its generated ID in the `resource-id` response\nheader (for example `664cc80da825236207fe01a7`). This endpoint handles simple attributes only — use the\ntype-specific endpoints for other kinds: `/definitions/column`, `/definitions/matrix`, `/definitions/dictionary`\nand `/compoundDefinitions`. A name is required. Fails if `number` is not unique, if `validation` is `NAME` and\nanother definition already has the same name, if a referenced attribute group does not exist, or if the\nattribute-definition quota is exceeded.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api)\nand [Attribute types](https://help.bluestonepim.com/attribute-types-1).","operationId":"createAttributeDefinition","parameters":[{"description":"`NAME` (the default) rejects the request if another attribute definition already has the same\nname; `NONE` allows a duplicate name. The `number` must always be unique regardless of this setting.","in":"query","name":"validation","required":false,"schema":{"type":"string","default":"NAME","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SimpleAttributeDefinitionRequest"}}},"required":true},"responses":{"201":{"description":"Created","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create a new simple attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/column":{"post":{"description":"Create a new column attribute definition. The new attribute definition's ID\nis generated by Bluestone PIM and is included in the response headers under `resource-id`.\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api)\nand [Attribute types - Column](https://help.bluestonepim.com/attribute-types-1#column).","operationId":"createColumnDefinition","parameters":[{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ColumnAttributeDefinitionDto"}}},"required":true},"responses":{"201":{"description":"Created\n\n**Note:** The new ID is included in the response headers under `resource-id`. See the example below:\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create column attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/column/{id}":{"put":{"description":"Update an existing column attribute definition using its internal ID. This\nendpoint allows modifying the definition's properties and validation strategies.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api) and\n[Attribute types - Column](https://help.bluestonepim.com/attribute-types-1#column).","operationId":"updateColumnDefinition","parameters":[{"description":"The internal ID for the column attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ColumnAttributeDefinitionDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionUpdateResponse"}}},"description":"OK\n\nThis response indicates that the request was successfully processed and the column attribute definition\n has been updated."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update column attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/column/{id}/dryrun":{"put":{"description":"This operation shows the\nnumber of elements that would be affected by the update operation of the specified column attribute definition.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api) and\n[Attribute types - Column](https://help.bluestonepim.com/attribute-types-1#column).","operationId":"updateColumnDefinitionDryRun","parameters":[{"description":"The internal ID for the column attribute definition that you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ColumnAttributeDefinitionDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionUpdateResponse"}}},"description":"OK\n\nThis response indicates that the dryrun request to update the column attribute definition was successful\n and returns the number of elements affected."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show number of elements affected by the column attribute definition update operation.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary":{"post":{"description":"Create dictionary attribute definition. The new attribute definition's\nID is generated by Bluestone PIM and is included in the response headers under `resource-id`.\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to our help\npages [Create, edit or remove attributes](https://help.bluestonepim.com/edit-attributes) and\n[Attribute types - Dictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"createDictionaryDefinition","parameters":[{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeDefinitionCreateRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\n**Note:** The new ID is included in the response headers under `resource-id`. See the example below:\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create dictionary attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}":{"patch":{"description":"Update the limit of selected items for a\ndictionary attribute definition. This allows you to manage how many items can be selected for the given\ndictionary attribute. To make the dictionary act as a single select, simply set `selectedValuesLimit` to `1`.\n\nUpdate the 'dictionaryValuesMetadataType' property to change the type of metadata associated with the dictionary values.\nThis allows you to define how additional information about each dictionary value is stored and represented.\nFor example, you can specify whether the metadata should be in the form of simple text, color codes, or other formats\nthat suit your application's needs.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api) and\n[Attribute types - Dictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"patchUpdate","parameters":[{"description":"The ID of the dictionary attribute definition.\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeDefinitionUpdate"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update selected items limit for dictionary attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"put":{"description":"Update the details of an existing dictionary attribute definition. This\nendpoint allows you to modify the name, properties, and other metadata of the dictionary attribute definition.\n\n**Note:** `description` and `contextAware` are not updated by this endpoint; if sent, they are ignored and the\nstored values are kept. To update the description in a given context, use `PATCH /definitions/{id}` (Update\nattribute definition metadata). To change context-awareness, use `PUT /definitions/{id}/context-aware`. Both\nendpoints apply to all attribute definition types.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api) and\n[Attribute types - Dictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"updateDictionaryDefinition","parameters":[{"description":"Update the dictionary attribute definition by specifying the ID of the dictionary attribute definition\nand the new details.\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the creation operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeDefinitionDto"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update dictionary attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/filter":{"delete":{"description":"Remove the parent dictionary from a dictionary attribute\ndefinition. This is useful when the parent-child relationship between dictionary attribute definitions needs to\nbe updated or removed.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"deleteDictionaryParent","parameters":[{"description":"Delete the dictionary parent from the dictionary attribute definition by specifying the ID of the\ndictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete dictionary parent from dictionary definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/filter/{parentDefinitionId}":{"post":{"description":"Assign a parent dictionary to the dictionary attribute\ndefinition for filtering purposes. This sets up a parent-child relationship between two dictionary attribute\ndefinitions, which can be used to filter dictionary values in the child dictionary based on selected dictionary\nvalues in the parent dictionary.\n**Example:** You have two dictionary attribute definitions:\n- `Age`, with values from 1-130\n- `Age Group`, with values Child, Youth, Adult, Senior\n\nYou set the `Age Group` dictionary as a parent for the `Age` dictionary with these relations:\n- Child -> Age: 1-14\n- Youth -> Age: 15-24\n- Adult -> 25-64\n- Senior -> 65+\n\nNow if the editor in Bluestone PIM chooses `Age Group` = `Youth`, then only options 15-24 will be available to\nchoose from in the `Age` dictionary.\n\nFor more detailed information on managing dictionary attributes, refer\nto our help pages [Attribute types - Dictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"setDictionaryParent","parameters":[{"description":"The attribute definition ID of the dictionary that you would like to assign a parent dictionary to.\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The attribute definition ID of the dictionary that will be assigned as the parent.\n\n**Example:** `634c26e14cedfd0001775e9c`","in":"path","name":"parentDefinitionId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Set dictionary parent for filtering dictionary values.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/values":{"post":{"description":"Create a new dictionary attribute value for a dictionary attribute\ndefinition. This endpoint allows you to add a new value to the dictionary attribute definition.\n\nDictionaries are typically used for larger pre-defined lists of values (sometimes referred to as options in\nother systems). Each dictionary value is an object with properties like `Name`, `Number` and `ID`, where the ID\nis automatically generated by Bluestone PIM on creation.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"createDictionaryAttribute","parameters":[{"description":"Create a new dictionary attribute value by specifying the ID of the dictionary attribute definition\nand the details of the dictionary attribute value.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeCreateRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\n**Note:** The new ID is included in the response headers under `resource-id`. See the example below:\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create dictionary attribute value.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/values/count":{"post":{"description":"Retrieve the count of dictionary\nattribute values associated with a specific dictionary attribute definition. This endpoint helps in determining\nthe number of attribute values linked to a particular dictionary attribute definition.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"countDictionaryAttributes","parameters":[{"description":"Count the dictionary attributes for a given dictionary definition by specifying the ID of the\ndictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeFilteringRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CountableLong"}}},"description":"OK\n\nThis response indicates that the request was successful and returns the count of dictionary attributes\n for the given dictionary attribute definition."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Count dictionary attribute values for given dictionary attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/values/filter/list":{"post":{"description":"Retrieve a list of dictionary attribute definitions that match\nspecified filter criteria. This endpoint allows you to filter dictionary attribute definitions based on various\nparameters and return a customized list.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"findFilteredDictionaryAttributes","parameters":[{"description":"Retrieve a list of dictionary attribute definitions filtered by specific criteria by specifying the ID\nof the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryValueFilteringRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableDictionaryValueFilterResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of filtered dictionary\n attribute definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List filtered dictionary attribute definitions.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/values/list":{"post":{"description":"Lists filtered dictionary attribute values within the given attribute\ndefinition ID.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"findFilteredDictionaryDefinitions","parameters":[{"description":"The internal ID for the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeFilteringRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableDictionaryAttributeResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of filtered dictionary\n attribute values based on the specified definition ID."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List filtered dictionary attribute values.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/values/{valueId}":{"delete":{"description":"Deletes a specific dictionary attribute value identified by its internal ID.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"deleteDictionaryAttribute","parameters":[{"description":"The internal ID for the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the dictionary attribute value to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted\n\nThis response indicates that the request has been accepted for processing, but the processing has not\n been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete dictionary attribute value.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"get":{"description":"This operation allows users to access metadata associated with a\ndictionary attribute value such as its name and number. If the dictionary attribute value with the specified ID\ndoes not exist, a 404 error will be returned.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"getDictionaryAttribute","parameters":[{"description":"The internal ID for the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the dictionary attribute value to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve a dictionary attribute value was successful. The\n response body contains the details of the dictionary attribute value, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show details of dictionary attribute value.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"patch":{"description":"Updates the details of a dictionary attribute value within the specified\ncontext.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"updateDictionaryAttribute","parameters":[{"description":"The internal ID for the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the dictionary attribute value to update.\n\n**Example:** `634c26e14cedfd0001775e9d`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeUpdateRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update dictionary attribute value.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/dictionary/{id}/values/{valueId}/filter/{parentValueId}":{"delete":{"description":"Deletes a specific dictionary attribute value\nparent/child filter identified by its internal ID.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"deleteDictionaryFilter","parameters":[{"description":"The internal ID for the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the dictionary attribute value.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the parent dictionary attribute value.\n\n**Example:** `634c26e14cedfd0001775e9d`","in":"path","name":"parentValueId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete dictionary attribute value parent/child filter.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"post":{"description":"Creates a dictionary attribute value parent/child filter\nfor the specified dictionary attribute value and parent value.\n\nFor more detailed information on managing dictionary attributes, refer to our help pages [Attribute types -\nDictionary](https://help.bluestonepim.com/attribute-types-1#dictionary).","operationId":"createDictionaryValueFilter","parameters":[{"description":"The internal ID for the dictionary attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the dictionary attribute value.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the parent dictionary attribute value.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"parentValueId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create dictionary attribute value parent/child filter.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/list":{"post":{"description":"Each filter in the\nrequest body selects definitions whose number matches one of the given values (`NUMBER_IN`) or whose ID matches\none of the given values (`ID_IN`); an empty or omitted filter list returns all definitions. Use this to look up\nspecific definitions by known numbers or IDs; to page through every definition without a filter, use the plain\nlist endpoint instead.\n\nFor more detailed information on managing attributes, refer to our help pages [Attribute\ntypes](https://help.bluestonepim.com/attribute-types-1).","operationId":"findFilteredAttributeDefinitions","parameters":[{"description":"When `true`, definitions that are marked for removal (an async delete is in progress)\nare omitted from the result. Defaults to `false`, which keeps them.","in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionFilteringRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of filtered attribute\n definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Search attribute definitions by a filter and return the matching ones as a paged list.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/matrix":{"post":{"description":"Creates a new matrix attribute definition. The new ID is generated by\nBluestone PIM and is included in the response headers under `resource-id`.\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```\n\nFor more detailed information on managing matrix attributes, refer to our help pages\n [Attribute types - Matrix](https://help.bluestonepim.com/attribute-types-1#matrix).","operationId":"createMatrixDefinition","parameters":[{"description":"Validation strategy for the create operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MatrixAttributeDefinitionDto"}}},"required":true},"responses":{"201":{"description":"Created\n\n**Note:** The new ID is included in the response headers under `resource-id`. See the example below:\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create matrix attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/matrix/{id}":{"put":{"description":"This operation allows users to update the details of a matrix attribute\ndefinition within the specified context. If the attribute definition with the specified ID does not exist, a 404\nerror will be returned.\n\nFor more detailed information on managing matrix attributes, refer to our help pages [Attribute types -\nMatrix](https://help.bluestonepim.com/attribute-types-1#matrix).","operationId":"updateMatrixDefinition","parameters":[{"description":"The internal ID for the matrix attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the create operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MatrixAttributeDefinitionDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionUpdateResponse"}}},"description":"OK\n\nThis response indicates that the request to update a matrix attribute definition was successful. The\n response body contains the details of the updated attribute definition, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update matrix attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/matrix/{id}/dryrun":{"put":{"description":"This operation allows\nusers to see the number of elements affected by the matrix attribute definition update within the specified\ncontext. If the attribute definition with the specified ID does not exist, a 404 error will be returned.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateMatrixDefinitionDryRun","parameters":[{"description":"The internal ID for the matrix attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the dryrun update operation. Can be either `NAME` or `NONE` and\ndefaults to `NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NONE","NAME"]}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MatrixAttributeDefinitionDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionUpdateResponse"}}},"description":"OK\n\nThis response indicates that the request to update a matrix attribute definition was successful. The\n response body contains the details of the updated attribute definition, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show number of elements affected by the matrix attribute definition update operation.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/policy/by-ids":{"delete":{"description":"Removes the specified policy from all listed attribute\ndefinitions at once. Both READ and WRITE markers for the policy are removed in a single call.\n\nThe operation is idempotent — attribute definitions that do not carry the marker are silently skipped.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management) and [Roles and policies\nmanagement](https://help.bluestonepim.com/roles-and-policies-management#policies-overview).","operationId":"bulkDeletePolicyFromAttributeDefinitions","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkDeleteAttributeDefinitionPolicyRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Delete policy from attribute definitions.","tags":["Attribute definition policies"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Assigns a single policy to a set of attribute definitions in\none request, replacing the need to call `POST /definitions/{id}/policy` once per attribute.\n\nThe operation is an upsert driven by `readOnly`. A definition carries either the read or the write marker of\na policy, never both, so each call replaces one with the other:\n- `readOnly=true` grants read-only access: the read marker is added where missing and the write marker is\n  removed where present.\n- `readOnly=false` grants write access: the write marker is added where missing and the read marker is\n  removed where present.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management) and [Roles and policies\nmanagement](https://help.bluestonepim.com/roles-and-policies-management#policies-overview).","operationId":"addPolicyToAttributeDefinitions","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkAttributeDefinitionPolicyRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add a policy to multiple attribute definitions.","tags":["Attribute definition policies"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/definitions/select/{id}/values":{"post":{"description":"The newly created `valueId` is returned in the `resource-id` response header.","operationId":"createSelectValue","parameters":[{"description":"The internal ID of the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelectValueRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\n**Note:** The new ID is included in the response headers under `resource-id`.\n\n**Example:** ```resource-id: 664cc80da825236207fe01a7```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Add a new select value to a `single_select` or `multi_select` attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/select/{id}/values/{valueId}":{"delete":{"description":"This is a **destructive** operation — removing a value also removes it from all products and categories that\ncurrently use it. Cleanup of products and categories is performed asynchronously by a background task.","operationId":"deleteSelectValue","parameters":[{"description":"The internal ID of the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the select value to delete.\n\n**Example:** `664cc80da825236207fe01a7`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Remove a select value from a `single_select` or `multi_select` attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"patch":{"description":"Only the fields present in the request body are updated; omitted fields retain their current values.","operationId":"updateSelectValue","parameters":[{"description":"The internal ID of the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the select value to update.\n\n**Example:** `664cc80da825236207fe01a7`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSelectValueRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update an existing select value within a `single_select` or `multi_select` attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/select/{id}/values/{valueId}/order":{"put":{"description":"The value is moved to the specified zero-based position; all remaining values shift automatically.\n\n**Example:** Given order `[A, B, C, D]`, moving `C` to position `0` results in `[C, A, B, D]`.","operationId":"reorderSelectValue","parameters":[{"description":"The internal ID of the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID of the select value to move.\n\n**Example:** `664cc80da825236207fe01a7`","in":"path","name":"valueId","required":true,"schema":{"type":"string"}},{"description":"Zero-based target position for the value. Must be within bounds [0,total_values_count-1].","in":"query","name":"targetPosition","required":true,"schema":{"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Move a select value to a specific position within the attribute definition's value list.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/simple":{"get":{"description":"Lists all simple attribute definitions with pagination support. This endpoint\nallows you to retrieve a list of simple attribute definitions, optionally filtering by context and using\npagination to manage large result sets.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to our help\npages [Create, edit or remove attributes](https://help.bluestonepim.com/edit-attributes).","operationId":"findSimple","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"in":"query","name":"excludeToBeRemoved","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of simple attribute\n definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List simple attribute definitions.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/{id}":{"delete":{"description":"Deletes a specific attribute definition identified by its internal ID.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"deleteAttributeDefinition","parameters":[{"description":"The internal ID for the attribute definition you want to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted\n\nThis response indicates that the request to delete an attribute definition was accepted and is being\n processed.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete simple attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"get":{"description":"This operation allows users to access metadata associated with an\nattribute definition such as its name and description. Fails if no attribute definition with the specified ID\nexists.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"getAttributeDefinition","parameters":[{"description":"The internal ID for the attribute definition you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve an attribute definition was successful. The\n response body contains the details of the attribute definition, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show details of attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"patch":{"description":"This endpoint allows you to modify the name and other metadata of the\nattribute definition within the specified context.\n\nIt applies to attribute definitions of every type (simple, dictionary, matrix, column and compound), and it is\nthe endpoint for updating the context-aware `description`, which the type-specific `PUT` endpoints do not\nchange. This is a partial update: only the fields present in the request are changed.\n\n**Example:** Update the description in the context given by the `context` header:\n```json\n{\n  \"description\": {\n    \"value\": \"New description\"\n  }\n}\n```\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateMetadata","parameters":[{"description":"The internal ID for the attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the update operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","default":"NAME","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionMetadataUpdateRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to\n return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update attribute definition metadata.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"put":{"description":"This endpoint allows you to modify the attribute definition within the\nspecified context.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateAttributeDefinition","parameters":[{"description":"The internal ID for the attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation strategy for the update operation. Can be either `NAME` or `NONE` and defaults to\n`NAME`.\n\n`NAME` means that a validation check will be performed to make sure that no other attribute definition exist\nwith the same name.\n\n`NONE` can be used to create an attribute definition with the same name as an other existing attribute\ndefinition. Note: The `number` must always be unique.","in":"query","name":"validation","required":false,"schema":{"type":"string","default":"NAME","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SimpleAttributeDefinitionRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionUpdateResponse"}}},"description":"OK\n\nThis response indicates that the request to update an attribute definition was successful. The response\n body contains the details of the updated attribute definition, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update simple attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/{id}/context-aware":{"put":{"description":"This endpoint changes the `contextAware` flag of the specified attribute definition, allowing it to switch\nbetween global and context-specific behavior.\n\nBecause this change can affect many dependent entities, it is handled asynchronously.\n\nA background job is triggered to perform the transition and clean up any related references.\n\nThe operation returns a `taskId` that can be used to monitor the status of this background job.","operationId":"updateContextAware","parameters":[{"description":"The internal ID of the attribute definition to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateContextAwareFlagRequest"}}},"description":"Object containing the desired `contextAware` value.\nSetting this flag to `true` makes the attribute context-specific. Setting it to `false` makes it global.","required":true},"responses":{"202":{"description":"Accepted\n\nThe request has been accepted for processing, but the processing has not been completed."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Switch the context-awareness of an attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/{id}/dryrun":{"delete":{"description":"This operation shows the number\nof elements that would be affected by the delete operation of the specified attribute definition. Useful for\nunderstanding the impact of deletes before proceeding.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"deleteDryRun","parameters":[{"description":"The internal ID for the attribute definition to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionDeleteResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve the number of elements affected by the delete\n operation was successful. The response body contains the details, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show number of elements affected by the attribute definition delete operation.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]},"put":{"description":"Displays the number of elements\nthat would be affected by the update operation for the specified attribute definition. Useful for understanding\nthe impact of updates before proceeding.\n\nFor more detailed information on how to work with attribute definitions in Bluestone PIM, refer to the [Create,\nedit or remove attributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateAttributeDefinitionDryRun","parameters":[{"description":"The internal ID for the attribute definition you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Validation type for the update operation. Determines the validation rules applied to the\nattribute definition update.\n\n**Options:**\n- `NONE`: No validation\n- `NAME`: Validate based on the name","in":"query","name":"validation","required":false,"schema":{"type":"string","default":"NAME","enum":["NONE","NAME"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SimpleAttributeDefinitionRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeDefinitionUpdateResponse"}}},"description":"OK\n\nThis response indicates that the request to show the number of elements affected by the update operation\n was successful. The response body contains the details, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Show number of elements affected by the attribute definition update operation.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/definitions/{id}/policy":{"get":{"description":"Retrieves access management policies associated with the specified\nattribute definition ID. This operation helps in managing access and permissions for attribute definitions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management) and [Roles and policies\nmanagement](https://help.bluestonepim.com/roles-and-policies-management#policies-overview).","operationId":"getByDefinitionId","parameters":[{"description":"The internal ID for the attribute definition you want to retrieve policies for.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListablePolicyDto"}}},"description":"OK\n\nThis response indicates that the request to retrieve policies by attribute definition ID was successful.\n The response body contains the details, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get policies by attribute definition ID.","tags":["Attribute definition policies"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Adds a new policy to the specified attribute definition. This operation\nallows for fine-grained access control and management of attribute definitions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management) and [Roles and policies\nmanagement](https://help.bluestonepim.com/roles-and-policies-management#policies-overview).","operationId":"addPolicyToAttributeDefinition","parameters":[{"description":"The internal ID for the attribute definition you want to add a policy to.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add policy to attribute definition.","tags":["Attribute definition policies"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/definitions/{id}/policy/{policyId}/{policyType}":{"delete":{"description":"Deletes a specified policy from the attribute definition. Useful for\nmanaging and updating access controls for attribute definitions.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management) and [Roles and policies\nmanagement](https://help.bluestonepim.com/roles-and-policies-management#policies-overview).","operationId":"deletePolicyForAttributeDefinition","parameters":[{"description":"The internal ID for the attribute definition you want to delete a policy for.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the policy you want to delete.\n\n**Example:** `ac89c2d0-6506-4c7d-a8e7-42b8484e000f`","in":"path","name":"policyId","required":true,"schema":{"type":"string"}},{"description":"The type of policy you want to delete.\n\n**Options:**\n- `READ`\n- `WRITE`","in":"path","name":"policyType","required":true,"schema":{"type":"string","enum":["READ","WRITE"]}}],"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete policy for attribute definition.","tags":["Attribute definition policies"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/definitions/{id}/products":{"get":{"description":"Retrieves all products that use the specified simple\nattribute definition. Useful for managing and understanding product associations with attribute definitions.","operationId":"findProducts","parameters":[{"description":"The internal ID for the attribute definition you want to retrieve products for.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductWithAttributeValuesResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve products by attribute definition ID was successful.\n The response body contains the details, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List all products that use the simple attribute definition.","tags":["Attribute definitions"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTE_DEFINITIONS"}],"security":[{"oauth2":[]}]}},"/policy/{id}/catalogs":{"get":{"description":"Retrieves categories associated with the specified policy ID. Useful for managing access and permissions for\ncategories.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"getCategoriesByPolicyId","parameters":[{"description":"The internal ID for the policy you want to retrieve categories for.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryFullResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve categories by policy ID was successful. The\n        response body contains the details, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get categories by policy id.","tags":["Category policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/policy/{id}/catalogs/nodes":{"get":{"description":"Retrieves category nodes associated with the specified policy ID. Useful for managing access and permissions for\ncategory nodes.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management).","operationId":"getCategoriesNodeByPolicyId","parameters":[{"description":"The internal ID for the policy you want to retrieve categories nodes for.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryFullResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve category nodes by policy ID was successful. The\n        response body contains the details, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get categories node by policy id.","tags":["Category policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/policy/{id}/catalogs/nodes/products":{"get":{"description":"Retrieves a list of catalog nodes associated with a specific policy ID, with support for pagination and context\nfiltering.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"getCatalogNodeByPolicyId","parameters":[{"description":"The internal ID for the policy you want to retrieve.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryFullResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of catalog nodes."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get catalog node by policy id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/policy/{id}/catalogs/products":{"get":{"description":"Retrieves a list of categories associated with a specific policy ID, with support for pagination and context\nfiltering.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help\npages [Access management](https://help.bluestonepim.com/access-management).","operationId":"getCatalogByPolicyId","parameters":[{"description":"The internal ID for the policy you want to retrieve.\n\n**Example:** `c0c13611-bed5-4654-b115-e50c5cd0b6ba`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableCategoryFullResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of categories."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get categories by policy id.","tags":["Product policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/policy/{id}/definitions":{"get":{"description":"Retrieves a list of attribute definitions associated with a specific\npolicy ID, with support for pagination and context filtering.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer to our help pages\n[Access management](https://help.bluestonepim.com/access-management) and [Roles and policies\nmanagement](https://help.bluestonepim.com/roles-and-policies-management#policies-overview).","operationId":"getAttributeDefinitionsByPolicyId","parameters":[{"description":"The internal ID for the policy you want to retrieve.\n\n**Example:** `ac89c2d0-6506-4c7d-a8e7-42b8484e000f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeDefinitionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of attribute definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get attribute definitions by policy ID.","tags":["Attribute definition policies"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/policy/{id}/relations":{"get":{"description":"Fetches the relation details based on the provided policy ID. This operation supports pagination and context-based retrieval.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer\nto our help pages [Access management](https://help.bluestonepim.com/access-management).","operationId":"getRelationsByPolicyId","parameters":[{"description":"The ID of the policy. It is a unique string that helps in identifying the policy within the system.\n\n**Example:** `450c4ef0-048e-422d-8e0b-00e0b0e33461`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableRelationResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of relations."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get relations by policy ID.","tags":["Relation policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/products":{"post":{"description":"Creates a single new product and returns its generated internal ID in the `resource-id` response header. Fails\nif a product with the given number already exists, or if the organization's product quota would be exceeded.\nWhen creating a product of type `GROUP`, any variant-defining, locked or mandatory attribute must be configured\nto propagate to variants (`copy = true`); otherwise creation fails and lists the offending attribute definition\nIDs. To create a product by copying an existing one, use the copy endpoints instead.\n\nFor more detailed information on how to work with new products in Bluestone PIM, refer to our help pages [Create\nnew products](https://help.bluestonepim.com/add-new-products).","operationId":"createProduct","parameters":[{"description":"Validation is used for specifying whether `NUMBER`, or `NUMBER` and `NAME` must be\n        unique. `NUMBER` is the default validation. If `NAME` is specified, both `NUMBER` and `NAME` must be\n        unique. If no `number` parameter is supplied in the `body` of the request, the assigned `id` will be\n        used as the `number`.","in":"query","name":"validation","required":false,"schema":{"type":"string","enum":["NAME","NUMBER"]}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductCreateRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\nThe new product's ID is included in the response headers under `resource-id`. See the example below:\n        `resource-id: 664cc80da825236207fe01a7`.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create new product.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/archive/by-ids":{"put":{"description":"Archives the products with the given IDs, moving them to the archived state so they no longer appear as active.\nThis endpoint only archives; to restore previously archived products use the separate unarchive-by-ids endpoint.\nBetween 1 and 100 IDs can be archived per call.\n\nArchiving runs asynchronously: the request returns `202 Accepted` with the scheduled task id in the\n`Resource-Id` header and a `Location` pointing at `/async/status/{taskId}`. Products being archived carry\n`toBeRemoved: true` until the background job completes and flips them to the archived state.","operationId":"archiveProductsByIds","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductArchiveStateRequest"}}},"required":true},"responses":{"202":{"description":"Accepted","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Archive products by IDs.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ARCHIVE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/attributes":{"delete":{"description":"This operation allows users to remove the specified attribute from selected products.\n\nFor more detailed information on how to work with product bulk actions in Bluestone PIM, refer to our help pages\n[Use product bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"deleteProductsAttribute","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteProductsAttributesBulkRequest"}}},"required":true},"responses":{"202":{"description":"Accepted\n\nThis response indicates that the request to remove the attribute from products was successful."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Delete products attributes.","tags":["Bulk"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/attributes/add/by-ids":{"post":{"description":"This endpoint allows users to add attribute values for a specified attribute definition to a given set of\nproducts. It is useful for bulk operations where attributes need to be added to multiple products.\n\nFor more detailed information on working with bulk operations in Bluestone PIM, refer to our help pages [Use\nproduct bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"addAttributesByIds","parameters":[{"description":"Specifies whether the request will fail if the attribute definition is already\nassigned to a product. If omitted, the default value `true` will be used.","in":"query","name":"failOnAssignedAttribute","required":false,"schema":{"type":"boolean","default":true}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveProductsAttributesByIdsRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add attribute values in given set of products.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/attributes/by-ids":{"post":{"description":"For every product listed in the request (selected by ID, max 100) this sets the given values for the one\nattribute definition: products that already have the attribute get their values updated, products that do not\nhave it get the value inserted. Applies to a single attribute definition per call. Runs synchronously and\ncompletes before responding; it returns no body and no job to poll. Fails if any listed product ID does not\nexist.\n\nUse this to set attribute values in bulk, including on products that may not yet have the attribute assigned.\nThe sibling PUT on this same path only updates products that already have the attribute (and can be told to fail\nwhen it is missing); it never inserts. Prefer this upsert unless you specifically want that update-only behavior.","operationId":"upsertAttributesByIds","parameters":[{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveProductsAttributesByIdsRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Upsert the values of one attribute across many products in a single bulk operation.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"},{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"This endpoint allows users to update attribute values in a given set of products. It is useful for bulk\noperations where attributes need to be updated in multiple products.\n\nFor more detailed information on working with bulk operations in Bluestone PIM, refer to our help pages [Use\nproduct bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"updateAttributesByIds","parameters":[{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"A flag that determine, whether the request will fail if the attribute is missing\nfrom any of the products.\n\nIf set to `false` and a product does not have the attribute, then that product will not be updated but all other\nproducts that have the attribute will be updated.\n\nIf omitted, the default value `true` will be used meaning that the request will fail if the attribute is missing\nfrom any of the products.","in":"query","name":"failOnMissingAttribute","required":false,"schema":{"type":"boolean","default":true}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveProductsAttributesByIdsRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Update attribute values in given set of products.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/attributes/dictionary/append/by-ids":{"post":{"description":"This endpoint allows you to add dictionary values to the selected products.\n\nUseful for bulk operations when you need to add dictionary values to multiple products.\n\nFor details about bulk operations, see [Use product bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"appendDictionaryValues","parameters":[{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"A flag that determines whether the request will fail if the attribute is missing\nfrom the product. Default is `true`.","in":"query","name":"failOnMissingAttribute","required":false,"schema":{"type":"boolean","default":true}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppendDictionaryValueRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Append dictionary value to products.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/attributes/dictionary/deduct/by-ids":{"post":{"description":"This endpoint allows you to remove dictionary values from the selected products.\n\nUseful for bulk operations when you need to remove dictionary values from multiple products.\n\nFor details about bulk operations, see [Use product bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"deductDictionaryValues","parameters":[{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"A flag that determines whether the request will fail if the attribute is missing\nfrom the product. Default is `true`.","in":"query","name":"failOnMissingAttribute","required":false,"schema":{"type":"boolean","default":true}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeductDictionaryValueRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Deduct dictionary value from products.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/attributes/select/append/by-ids":{"post":{"description":"This endpoint allows you to add select/multiselect values to the selected products.\n\nUseful for bulk operations when you need to add select/multiselect values to multiple products.\n\nFor details about bulk operations, see [Use product bulk actions](https://help.bluestonepim.com/bulk-actions).","operationId":"appendSelectValues","parameters":[{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"A flag that determines whether the request will fail if the attribute is missing\nfrom the product. Default is `true`.","in":"query","name":"failOnMissingAttribute","required":false,"schema":{"type":"boolean","default":true}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppendSelectValuesToProductsAttributeRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Append select/multiselect values to products.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/attributes/select/deduct/by-ids":{"post":{"description":"This endpoint allows you to remove select or multiselect values from the selected products.\n\nUseful for bulk operations when you need to remove select/multiselect values from multiple products.\n\nFor more details on bulk operations, see Use product bulk actions.","operationId":"deductSelectValues","parameters":[{"description":"Specifies whether to force updating the variant-level attribute (VLA) value from a VARIANT GROUP\nproduct to all VARIANT products.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Flag indicating whether the request should fail if the attribute is missing in the\nproduct. Default is true.","in":"query","name":"failOnMissingAttribute","required":false,"schema":{"type":"boolean","default":true}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeductSelectValuesFromProductsAttributeRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Deduct select/multiselect values from products.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/categories/by-ids":{"post":{"description":"This endpoint allows you to add multiple products to a specified category.\nFor more details on working with products and categories, refer to the [Product details\npanel>Categories](https://help.bluestonepim.com/product-details-overview#Categoriestab).","operationId":"assignProductsToCategory","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignProductsToCategoryRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add products as children of category.","tags":["Products categories"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"PRODUCT_ASSOCIATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/products/copy":{"post":{"description":"This endpoint allows you to create a copy of a specified product and update it.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"copyAndUpdateProduct","parameters":[{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CopyProductRequest"}}},"required":true},"responses":{"200":{"description":"OK\n\nThis response indicates that the request was successfully processed and the product was copied and\n        updated.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Create a copy of product.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"COPY","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/cursor/views/all":{"post":{"description":"This endpoint allows users to retrieve a list of products with views\\* using a cursor for pagination. It is\nuseful for efficiently managing large result sets by retrieving a specific page of the results.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES` to be included in\nthe response, if no views are specified in the request, only product IDs will be returned.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"getProductsWithCursorAndViews","parameters":[{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CursorWithViewsRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableWithCursorProductViewDto"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of products with cursor and\n        views."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Get products using cursor with details from given views.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/cursor/views/by-types":{"post":{"description":"This endpoint allows you to retrieve a list of products filtered by type, providing details from specified\nviews.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"listProductsViewsByTypes","parameters":[{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductViewsByTypeRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableWithCursorProductViewDto"}}},"description":"OK\n\nThis response indicates that the request was successfully processed and a list of products filtered by\n        numbers with details from given views was returned."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show list of products filtered by type with details from given views.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/groups/append/by-ids":{"post":{"description":"Assigns the specified products as groups of the parent variant family product.","operationId":"addProductGroups","parameters":[{"in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkAssignGroupsRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nA confirmation that the specified variant group products were successfully assigned to the variant family product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Assign multiple product variants groups to a variant family.","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/groups/attributes/vla/by-ids":{"put":{"description":"Sets the VLA settings of the given attribute on every listed FAMILY product and propagates the attribute\ndown to their assigned GROUP products. The bulk twin of\n`PUT /products/{id}/groups/attributes/{definitionId}`.\n\nFor more detailed information on how to work with Variant Level Attributes (VLA) in Bluestone PIM, refer to our\nhelp pages [The data model - Variant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).\n\n**Group Attribute Configuration Validation**\n\nVariant-defining attributes must be properly configured to be propagated to groups.\nThis error occurs when a variant level attribute is not configured to be propagated to its groups.\n\nAttributes marked as `definingAttributes`, `locked` or `mandatory` require `copy = true`. The same set of\nflags is applied to every listed product, so the rule is checked once against the request body.\n\nIf `copy` is set to `false` (or omitted), the configuration becomes inconsistent and the request is rejected\nwith HTTP 400 Bad Request.\n\nThe whole request is validated before anything is written. If any listed product does not exist, is not a\nFAMILY product, or does not have the attribute assigned, the request is rejected and no job is created.\n\nThe work then runs as a background job. Poll `GET /async/status/{taskId}` for its status; the task ID is\nreturned in the `Resource-Id` header and the `Location` header points at the status resource.","operationId":"updateProductGroupsAttributeVlaSettings","parameters":[{"description":"When propagating this Variant Level Attribute to groups, this flag controls what to do if\na group already has this attribute assigned:\n\n`false` = Keep existing value, only update empty ones\n\n`true` = Override existing value\n\nIf omitted, the default value `false` will be used.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveProductsVlaSettingsByIdsRequest"}}},"required":true},"responses":{"200":{"description":"OK\n\nThe job was scheduled."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update group level attribute (VLA) for multiple products.","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/labels/by-ids":{"delete":{"description":"This endpoint allows you to remove a specified product label from a set of products.\n\nFor more detailed information on how to work with product labels in Bluestone PIM,\nrefer to our help pages [Add/remove product labels](https://help.bluestonepim.com/bulk-actions#add-product-labels).","operationId":"removeLabelFromProducts","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyLabelInProductsRequestDto"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Remove product label from the set of products.","tags":["Products labels"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"This endpoint allows you to add a specified product label to a set of products.\n\nFor more detailed information on how to work with product labels in Bluestone PIM,\nrefer to our help pages [Add/remove product labels](https://help.bluestonepim.com/bulk-actions#add-product-labels).","operationId":"addLabelToProducts","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyLabelInProductsRequestDto"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add product label to the set of products.","tags":["Products labels"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/list/views/by-assets":{"post":{"description":"This endpoint allows you to retrieve a list of products filtered by asset IDs, providing details from specified\nviews\\*.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES` to be included in\nthe response, if no views are specified in the request, only product IDs will be returned.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"listProductsViewsByAssets","parameters":[{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssetIdListViewsRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductViewDto"}}},"description":"OK\n\nThis response indicates that the request was successfully processed and a list of products filtered by\n        asset IDs with details from given views was returned."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show list of products filtered by asset ids with details from given views.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/list/views/by-ids":{"post":{"description":"This endpoint allows you to retrieve a list of products filtered by IDs, providing details from specified\nviews.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"listProductsViewsByIds","parameters":[{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductIdListViewsRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductViewDto"}}},"description":"OK\n\nThis response indicates that the request was successfully processed and a list of products filtered by\n        IDs with details from given views was returned."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show list of products filtered by ids with details from given views.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/list/views/by-numbers":{"post":{"description":"This endpoint allows you to retrieve a list of products filtered by numbers, providing details from specified\nviews.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"listProductsViewsByNumbers","parameters":[{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductNumberListViewsRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductViewDto"}}},"description":"OK\n\nThis response indicates that the request was successfully processed and a list of products filtered by\n        numbers with details from given views was returned."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show list of products filtered by numbers with details from given views.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/templates":{"get":{"description":"Retrieves a list of all product templates available in the system. This is useful for managing\nand utilizing product templates for creating new products.\n\nFor more detailed information on using product templates in Bluestone PIM,\nrefer to the [Product templates documentation](https://help.bluestonepim.com/create-product-from-saved-template-1).","operationId":"findProductTemplates","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductTemplateResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of product templates."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"List all product templates.","tags":["Products templates"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/templates/{productId}":{"delete":{"description":"Deletes the specified product template identified by its ID. This can be useful for removing outdated or unused templates.\n\nFor more detailed information on managing product templates in Bluestone PIM, refer\nto the [Product templates documentation](https://help.bluestonepim.com/create-product-from-saved-template-1).","operationId":"deleteProductTemplate","parameters":[{"description":"The ID for the product template you want to delete.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"productId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete product template.","tags":["Products templates"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"get":{"description":"Retrieves the details of a specific product template identified by its ID. This is useful\nfor viewing and managing the configuration of product templates.\n\nFor more detailed information on using product templates in Bluestone PIM, refer\nto the [Product templates documentation](https://help.bluestonepim.com/create-product-from-saved-template-1).","operationId":"getProductTemplate","parameters":[{"description":"The ID for the product template you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"productId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductTemplateResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve a product template was successful.\nThe response body contains the details of the product template, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show details of product template.","tags":["Products templates"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"Creates a new product template in the system by \"marking\"/referencing a specified product as being a template.\n\n**Note**: The template feature is referencing the product. This means that updates on the template product\nwill be copied to any new products created based on this template. Existing products created from this\ntemplate are unaffected by any later changes. A product can only be \"marked\"/referenced as template once, an\nerror will be returned if one tries to create a new template for a product that is already \"marked\"/referenced as a template.\n\nFor more detailed information on creating product templates in Bluestone PIM, refer\nto the [Product templates documentation](https://help.bluestonepim.com/create-product-from-saved-template-1).","operationId":"createProductTemplate","parameters":[{"description":"The ID for the product template you want to create.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"productId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductTemplateRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\nThe ID is included in the response headers under `resource-id`. It will be the specified product ID that is returned.\n\n**Example:** `664cc80da825236207fe01a7`.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create product template.","tags":["Products templates"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"put":{"description":"Updates the name of the specified product template identified by its ID. This can be useful\nfor modifying existing template names to reflect changes in product configurations.\n\nFor more detailed information on managing product templates in Bluestone PIM, refer\nto the [Product templates documentation](https://help.bluestonepim.com/create-product-from-saved-template-1).","operationId":"updateName","parameters":[{"description":"The ID for the product template you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"productId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductTemplateRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update product template name.","tags":["Products templates"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/unarchive/by-ids":{"put":{"description":"Unarchives a set of products identified by their internal IDs. This operation is useful for restoring products\nthat were previously archived.\n\nFor more information on key concepts like product statuses in Bluestone PIM, refer to our help pages [Overview\nof key components](https://help.bluestonepim.com/overview-of-key-components).","operationId":"unarchiveProductsByIds","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductArchiveStateRequest"}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Unarchive products by ids.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ARCHIVE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/variants/append/by-ids":{"post":{"description":"Assigns the specified products as variants of the parent variant group product.\n\nFor more detailed information on how to work with the data model in Bluestone PIM, refer to our help\npages [The data model](https://help.bluestonepim.com/the-data-model).","operationId":"addProductVariants","parameters":[{"in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddProductVariantsRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nA confirmation that the specified variant products were successfully assigned to the variant group product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Assign multiple product variants to a variant group.","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/variants/attributes/vla/by-ids":{"put":{"description":"Sets the VLA settings of the given attribute on every listed GROUP product and propagates the attribute\ndown to their assigned VARIANT products. The bulk twin of\n`PUT /products/{id}/variants/attributes/{definitionId}`.\n\nFor more detailed information on how to work with Variant Level Attributes (VLA) in Bluestone PIM, refer to our\nhelp pages [The data model - Variant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).\n\n**Variant Attribute Configuration Validation**\n\nVariant-defining attributes must be properly configured to be propagated to variants.\nThis error occurs when a variant level attribute is not configured to be propagated to its variants.\n\nAttributes marked as `definingAttributes`, `locked` or `mandatory` require `copy = true`. The same set of\nflags is applied to every listed product, so the rule is checked once against the request body.\n\nIf `copy` is set to `false` (or omitted), the configuration becomes inconsistent and the request is rejected\nwith HTTP 400 Bad Request.\n\nThe whole request is validated before anything is written. If any listed product does not exist, is not a\nvariant group or family product, or does not have the attribute assigned, the request is rejected and no\njob is created.\n\nThe work then runs as a background job. Poll `GET /async/status/{taskId}` for its status; the task ID is\nreturned in the `Resource-Id` header and the `Location` header points at the status resource.","operationId":"updateProductVariantsAttributeVlaSettings","parameters":[{"description":"When propagating this Variant Level Attribute to variants, this flag controls what to do\nif a variant already has this attribute assigned:\n\n`false` = Keep existing value, only update empty ones\n\n`true` = Override existing value\n\nIf omitted, the default value `false` will be used.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveProductsVlaSettingsByIdsRequest"}}},"required":true},"responses":{"200":{"description":"OK\n\nThe job was scheduled."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update variant level attribute (VLA) for multiple products.","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}":{"get":{"description":"Returns the full details of a single product by its internal ID, including its metadata, attributes,\ncategories, relations and assets. Fails if no product with the specified ID exists. For a lighter summary of a\nproduct without the full data set, use the product overview endpoint (`GET /products/{id}/overview`) instead.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"getProduct","parameters":[{"description":"The internal ID for the product you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/full+json":{"schema":{"$ref":"#/components/schemas/ProductAll"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProductAll"}}},"description":"OK\n\nThis response indicates that the request to retrieve a product was successful. The response body\n        contains the details of the product, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show product details.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"patch":{"description":"This endpoint allows you to modify the name, number and/or the description of a product. Supports partial\nupdates.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"updateProduct","parameters":[{"description":"The internal ID for the product you want to update.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductMetadataUpdateRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update product main details, supports partial update.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/assets":{"get":{"description":"Returns the asset IDs currently attached to the product; the asset content itself lives in the media bank and\nis not included. Fails if the product does not exist.\n\nFor more information on assets in Bluestone PIM, refer to our help pages [Assets\noverview](https://help.bluestonepim.com/assets-panel).","operationId":"getProductAssets","parameters":[{"description":"The internal ID for the product whose assets you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableString"}}},"description":"OK\n\nThe list of associated asset IDs, in the order they appear on the product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Retrieve the IDs of the assets associated with a product, in their display order and paginated.","tags":["Products assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"Each asset must already exist in the media bank; this only links them to the product. Existing associations on\nthe product are preserved, and the new assets are added on top rather than replacing them; IDs already\nassociated are ignored. Fails if the product does not exist or if any listed asset ID is not found. To attach\nexactly one asset, the single-asset variant that posts to `{id}/assets/{assetId}` is simpler; to replace the\nproduct's entire asset set with a new list, use the PUT on `{id}/assets` instead.\n\nFor more information on assets in Bluestone PIM, refer to our help pages [Assets\noverview](https://help.bluestonepim.com/assets-panel).","operationId":"associateAssets","parameters":[{"description":"The internal ID for the product to attach the assets to.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssociateProductAssetsRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Attach several existing assets to a product in one call.","tags":["Products assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"put":{"description":"This operation allows users to set a list of assets for a specified product, replacing any existing\nassociations. If the product with the specified ID does not exist, a 404 error will be returned.\n\nFor more information on assets in Bluestone PIM, refer to our help pages [Assets\noverview](https://help.bluestonepim.com/assets-panel).","operationId":"setProductAssets","parameters":[{"description":"The internal ID for the product to which you want to set assets.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetProductAssets"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Set assets for a product.","tags":["Products assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/assets/{assetId}":{"delete":{"description":"The asset itself is not deleted and remains in the media bank; only its association with this product is\nremoved. Fails if the product does not exist or the asset is not associated with it.\n\nFor more information on assets in Bluestone PIM, refer to our help pages [Assets\noverview](https://help.bluestonepim.com/assets-panel).","operationId":"disassociateAssetFromProduct","parameters":[{"description":"The internal ID for the product to detach the asset from.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the asset to detach from the product.\n\n**Example:** `fe5ad93b-35a5-4731-9eab-9d2cc9934f09`","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Detach an asset from a product, removing only the link between them.","tags":["Products assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"The asset must already exist in the media bank; this only links it to the product. Existing associations on the\nproduct are kept, and the asset is appended to the end. Fails if the product or the asset does not exist. To\nattach several assets in one call, or to replace the whole set, use the request-body variants that post to\n`{id}/assets` instead.\n\nFor more information on assets in Bluestone PIM, refer to our help pages [Assets\noverview](https://help.bluestonepim.com/assets-panel).","operationId":"associateAssetWithProduct","parameters":[{"description":"The internal ID for the product to which you want to attach the asset.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the existing media-bank asset to attach.\n\n**Example:** `fe5ad93b-35a5-4731-9eab-9d2cc9934f09`","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Attach a single existing asset to a product, identified by asset ID in the path.","tags":["Products assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"put":{"description":"This operation allows users to change the order of an asset within a specified product. If the product or asset\nwith the specified IDs do not exist, a 404 error will be returned.\n\nFor more information on assets in Bluestone PIM, refer to our help pages [Assets\noverview](https://help.bluestonepim.com/assets-panel).","operationId":"moveProductAsset","parameters":[{"description":"The internal ID for the product whose assets you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the asset you want to move.\n\n**Example:** `fe5ad93b-35a5-4731-9eab-9d2cc9934f09`","in":"path","name":"assetId","required":true,"schema":{"type":"string"}},{"description":"The target position to which you want to move the asset. This is used to reorder\n        the assets associated with the product.\n\n**Example:** `1`","in":"query","name":"targetPosition","required":true,"schema":{"maximum":10000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Move an asset within a product.","tags":["Products assets"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes":{"get":{"description":"Returns the attribute values set on a single product, each keyed by its attribute definition ID. Fails if no\nproduct with the given ID exists.","operationId":"getProductAttributes","parameters":[{"description":"The internal ID for the product whose attributes you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableAttributeValueAll"}}},"description":"OK\n\nThis response indicates that the request to retrieve product attributes was successful. The response\n        body contains a list of attribute definitionIds together with attribute values, formatted as a JSON\narray."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Retrieve the attributes associated with a product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"post":{"description":"Add a new attribute to a specified product.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"addProductAttribute","parameters":[{"description":"The internal ID of the product for which the attribute is being added.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSimpleAttributeRequest"}}},"required":true},"responses":{"201":{"description":"Created"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add an attribute to a product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"For each attribute in the request body (identified by its attribute definition ID, up to 100 per call) this sets\nthe given value on the product: if the product already has that attribute its value is updated, otherwise the\nattribute is added with that value. Runs synchronously and completes before responding; returns no body and no\njob to poll. Fails if no product with the given ID exists.\n\nUse this to set multiple different attributes on a single product at once. To change one attribute across many\nproducts instead, use the upsert or update endpoints on `/products/attributes/by-ids`. To add a single attribute\nto one product without touching others, use POST `/products/{id}/attributes`.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateProductAttributes","parameters":[{"description":"The internal ID of the product for which the attributes are being updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/UpdateAttributeDto"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Upsert several attributes on one product in a single call.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"},{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/column":{"post":{"description":"Use this endpoint to add a column attribute to a product in Bluestone PIM. You can specify the attribute values,\ncontext, and whether to use a fallback for context.\n\nFor more details, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes).","operationId":"addColumnAttribute","parameters":[{"description":"The internal ID of the product for which the column attribute is being added.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ColumnAttributeValueAddRequest"}}},"required":true},"responses":{"201":{"description":"Created"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add column attribute to product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/column/{definitionId}":{"put":{"description":"Use this endpoint to update a column attribute of a product in Bluestone PIM. You can specify the updated\nattribute values, context, and whether to use a fallback for context.\n\nFor more details, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes).","operationId":"updateColumnAttribute","parameters":[{"description":"The internal ID of the product for which the column attribute is being updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specify the attribute definition ID for the column attribute you want to update.","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ColumnAttributeValueDto"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Update column attribute of product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/dictionary":{"post":{"description":"Add a new dictionary attribute to a specified product.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"addDictionaryAttribute","parameters":[{"description":"The internal ID of the product for which the dictionary attribute is being added.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DictionaryAttributeValueAddRequest"}}},"required":true},"responses":{"201":{"description":"Created"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add dictionary attribute to product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/dictionary/{definitionId}/values":{"post":{"description":"Set values for a dictionary attribute for a specified product.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"setDictionaryAttributeValuesForProduct","parameters":[{"description":"The internal ID of the product for which the dictionary attribute values are being set.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specify the attribute definition ID for the dictionary attribute you want to set values\nfor.","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetDictionaryValuesRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Set values for dictionary attribute of product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/matrix":{"post":{"description":"Add a new matrix attribute to a specified product.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"addMatrixAttribute","parameters":[{"description":"The internal ID of the product for which the matrix attribute is being added.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MatrixAttributeValueAddRequest"}}},"required":true},"responses":{"201":{"description":"Created"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Add matrix attribute to product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/matrix/{definitionId}":{"put":{"description":"Update an existing matrix attribute for a specified product.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateMatrixAttribute","parameters":[{"description":"The internal ID of the product for which the matrix attribute is being updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specify the attribute definition ID for the matrix attribute you want to update.","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MatrixAttributeValueDto"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Update matrix attribute of product.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/attributes/{definitionId}":{"delete":{"description":"Use this endpoint to remove a specified attribute from a product.\n\nFor more details, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"deleteProductAttribute","parameters":[{"description":"The internal ID of the product for which the attribute is being deleted.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition associated with the product attribute you want\nto delete.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Delete product attribute.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"Use this endpoint to update a product attribute in Bluestone PIM. You can specify the updated attribute values,\ncontext, and whether to use a fallback for context.\n\nFor more details, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"updateProductAttribute","parameters":[{"description":"The internal ID for the product you want to update.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition associated with the product attribute you want\nto update.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"Specifies whether to force the update of a variant level attribute (VLA) value down from a\n`VARIANT GROUP` product to all child `VARIANT` products.\n\nThis flag is only taken into consideration for `VARIANT GROUP` products and only where the attribute is\ncurrently set as a VLA on the `VARIANT GROUP` product.\n\nIf omitted, the default value `false` will be used which means that possible VLA values on a `VARIANT GROUP`\nproduct will not be enforced down to child `VARIANT` products.\n\nNote that `forceVla` flag is only taken into consideration when the attribute change will be an update operation\nbut not an add value (insert) operation on a `VARIANT` product.\n\nThis means that a child `VARIANT` product will get the new value if it does not have the attribute assigned or\nan attribute value defined even if `forceVla` is `false` while other child `VARIANT` products that already have\nan attribute value defined will be left unchanged.\n\nThis is because a `VARIANT` product without the attribute or without an attribute value defined is treated as an\nadd value (insert) operation while the other `VARIANT` products are treated as update operations.\n\nFor more detailed information on working with VLAs in Bluestone PIM, refer to our help pages [The data model -\nVariant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeValueValues"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Update product attribute.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/bundles":{"post":{"description":"Create a bundle product by specifying an existing `SINGLE` product that is to be changed\ninto a `BUNDLE` product. For more details, refer to the [Bundles\ndocumentation](https://help.bluestonepim.com/working-with-bundles).","operationId":"createProductBundle","parameters":[{"description":"The internal ID of the existing `SINGLE` product that is to be changed into a `BUNDLE` product.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Create product bundle.","tags":["Products bundles"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/bundles/{complementaryProductId}":{"delete":{"description":"This operation allows you to remove a complementary product from an existing product\nbundle. For more details, refer to the [Bundles\ndocumentation](https://help.bluestonepim.com/working-with-bundles).","operationId":"deleteProductFromBundle","parameters":[{"description":"The internal ID for the product bundle.\n\n**Example:** `12y3566b5c65c1325edeyy6a`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the complementary product to be removed from the bundle.\n\n**Example:** `57b3566b5c65c1325edeab3g`","in":"path","name":"complementaryProductId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete product from bundle.","tags":["Products bundles"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"This operation allows you to add a complementary product to an existing product bundle.\n**Important note**: bundles cannot include other bundle products. For more details, refer to the [Bundles\ndocumentation](https://help.bluestonepim.com/working-with-bundles).","operationId":"addProductToBundle","parameters":[{"description":"The internal ID for the product bundle.\n\n**Example:** `66y3534b5c65c1325edexx5c`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the product to be added to the bundle.\n\n**Example:** `65z3534b5c65c1327edeyy4a`","in":"path","name":"complementaryProductId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductBundleRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add product to bundle.","tags":["Products bundles"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"put":{"description":"This operation allows you to update the quantity of a\ncomplementary product within an existing product bundle. For more details, refer to the [Bundles\ndocumentation](https://help.bluestonepim.com/working-with-bundles).","operationId":"updateProductBundleQuantity","parameters":[{"description":"The internal ID for the product bundle.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the complementary product to be updated.\n\n**Example:** `93y2266f5c65c1555edexx1a`","in":"path","name":"complementaryProductId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductBundleRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update the quantity of a product included in a bundle.","tags":["Products bundles"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/bundles/{complementaryProductId}/order":{"put":{"description":"This operation allows you to change the position of a complementary\nproduct within an existing bundle. For more details, refer to the [Bundles\ndocumentation](https://help.bluestonepim.com/working-with-bundles).","operationId":"moveProductInBundle","parameters":[{"description":"The internal ID for the product bundle.\n\n**Example:** `77y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the complementary product to be moved within the bundle.\n\n**Example:** `14y3523b5c65c1325edeps4e`","in":"path","name":"complementaryProductId","required":true,"schema":{"type":"string"}},{"description":"The zero-based target position for the complementary product within the bundle.\n\n**Example:** `1`, would mean the second position","in":"query","name":"targetPosition","required":true,"schema":{"maximum":100000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Change a product's position in a bundle.","tags":["Products bundles"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/categories":{"get":{"description":"This operation allows you to retrieve a list of category IDs that\nthe specified product resides in. For more details on working with products and categories, refer to the\n[Product details panel>Categories](https://help.bluestonepim.com/product-details-overview#Categoriestab).","operationId":"getProductsCategories","parameters":[{"description":"The internal ID for the product.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableString"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List of category IDs the product resides in.","tags":["Products categories"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"This links the product to each listed category; it does not create categories or\nmodify their contents, and categories not listed here keep their current products.\nA category the product already belongs to is left unchanged.\n\nFor more details on working with products and categories, refer to the [Product details\npanel>Categories](https://help.bluestonepim.com/product-details-overview#Categoriestab).","operationId":"addProductToCategories","parameters":[{"description":"The internal ID for the product to assign.\n\n**Example:** `88y3566b5c77c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryReferenceRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Assigns an existing product to one or more existing catalog categories.","tags":["Products categories"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"PRODUCT_ASSOCIATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/products/{id}/categories/{categoryId}":{"delete":{"description":"This removes only the link between the product and that one category; the product,\nthe category, and the product's other category assignments are left intact.\nFails if the product is not currently assigned to that category (it is not a silent no-op).\n\nFor more details on working with products and categories, refer to the [Product details\npanel>Categories](https://help.bluestonepim.com/product-details-overview#Categoriestab).","operationId":"removeProductFromCategory","parameters":[{"description":"The internal ID for the product to unassign.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the category to remove the product from.\n\n**Example:** `6226ba6acaa47e000czza91e`","in":"path","name":"categoryId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Unassigns a product from a single catalog category.","tags":["Products categories"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"PRODUCT_ASSOCIATE","module":"CATALOG"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections":{"get":{"description":"Returns one entry per relation definition attached to the product, each carrying the relation definition ID and\nthe direction(s) it applies in (`DIRECT`, `REVERSE`, or both). This lists which relation types the product uses,\nnot the products it is related to; to get the actual related products for a given relation definition and\ndirection, use `GET /products/{id}/connections/products/{relationId}`.\n\nFor more details on working with products and relations, refer to the [Add product\nrelations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"getProductRelations","parameters":[{"description":"The internal ID of the product whose relation definitions are listed.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductConnectionInfoResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"List the relation definitions a product participates in, each with its direction(s).","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products":{"post":{"description":"Creates a single relation from the source product `id` to another product, using the relation\ndefinition (relation type) given in the request body. Fails if the source product, the target\nproduct, or the relation definition does not exist, or if the two products are already related\nunder that relation definition.\n\nFor more details on working with products and relations, refer to the [Add product\nrelations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"createProductConnection","parameters":[{"description":"The internal ID of the source product the relation starts from.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductConnectionRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Relate a product to another product under a relation definition.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products/order/relations/sortingOrderSource/{sortingOrderSource}":{"put":{"description":"This operation allows you to update the source of the ordering of\nproduct relation definitions. This is relevant when a product has multiple relation definitions added to it and\none wants to control the exact ordering of them. Either the relation definitions are sorted by the order they\nare in the general list of relation definitions, or they are sorted in the order they are in the current\nproduct identified by `id`. For example: If a product has two relation definitions added to it like:\n- \"Contains\"\n- \"Spare part of\"\n\nThe order to use when listing these two relation definitions can be set to follow either the\nordering in the general list of relation definitions (source = `RELATION_DEFINITION`) or the ordering in the\nlist of relation definitions stored on the product itself (source = `PRODUCT`).","operationId":"updateRelatedProductsRelationSortingOrderSource","parameters":[{"description":"The internal ID for the product.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The source to use for sorting order.","in":"path","name":"sortingOrderSource","required":true,"schema":{"type":"string","enum":["RELATION_DEFINITION","PRODUCT"]}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update a product relations sorting order source.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products/{relationId}":{"delete":{"description":"Deletes all relations that link the product `id` to other products under the relation definition `relationId`,\nin a single call. Use this to clear a whole relation type at once. To remove only specific related products,\ndelete a single pair with `DELETE /products/{id}/connections/products/{relationId}/{connectedProductId}`, or a\nselected subset with `DELETE /products/{id}/connections/products/{relationId}/bulk`.\n\nFor more details on working with products and\nrelations, refer to the [Add product relations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"deleteProductConnectionsByRelation","parameters":[{"description":"The internal ID of the product whose relations are removed.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the relation definition whose relations are all removed.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Remove every relation of one relation definition from a product.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]},"get":{"description":"This operation allows you to retrieve related products\nfor a given product, relation and direction. For more details on working with products and relations, refer to the\n[Add product relations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"getProductForRelation","parameters":[{"description":"The internal ID for the product.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation definition.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}},{"description":"The direction of the relation, either `DIRECT` or `REVERSE`.","in":"query","name":"direction","required":true,"schema":{"type":"string","enum":["DIRECT","REVERSE"]}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductConnectionProductResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Retrieve related products for given product and relation.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]},"post":{"description":"Creates relations from the source product `id` to every target product listed in the request body, all under the\nrelation definition `relationId`. Use this to add many related products in a single call; to relate to just one\nproduct use `POST /products/{id}/connections/products`. The operation is all-or-nothing: if the source product,\nthe relation definition, or any target product does not exist, or if any target is already related to the source\nunder this relation definition, the call fails and no relations are created.\n\n For more details on working with\nproducts and relations, refer to the [Add product relations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"createProductConnections","parameters":[{"description":"The internal ID for the product from where one wants to create relations to other products.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation definition.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProductConnectionsRequest"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Relate a product to several other products at once under one relation definition.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products/{relationId}/bulk":{"delete":{"description":"This operation allows you to remove\nmultiple product relations from the specified product and relation. For more details on working with products\nand relations, refer to the [Add product relations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"deleteManyProductConnections","parameters":[{"description":"The internal ID for the product.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation definition.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProductConnectionsRemovalRequest"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Remove multiple product relations from a specified product and relation.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products/{relationId}/order":{"put":{"description":"This endpoint allows you to update the order of relation\ndefinitions for a given product by specifying the product, a relation and its target position. For more detailed\ninformation on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help pages [Get started\nwith Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"updateOrderProductRelation","parameters":[{"description":"The internal ID for the product you want to update the order for.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation definition.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}},{"description":"The new target position for the product relation.\n\n**Example:** `0`","in":"query","name":"targetPosition","required":true,"schema":{"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update the order of relation definitions on product.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products/{relationId}/{connectedProductId}":{"delete":{"description":"This endpoint allows you to delete the relation between two products for a\nspecified relation. For more information on how to work with the Management API (MAPI) in Bluestone PIM, refer\nto our help pages [Get started with Management\nAPI](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"deleteProductConnection","parameters":[{"description":"The internal ID for the product you want to delete the relation for.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation definition.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the related product.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"connectedProductId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete relation between two products.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/products/{relationId}/{connectedProductId}/order":{"put":{"description":"This endpoint allows you to update the order of the products in\na relation definition on the specified product by also specifying one of the related products and a wished for\ntarget position. For more detailed information on how to work with the Management API (MAPI) in Bluestone PIM,\nrefer to our help pages [Get started with Management\nAPI](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"updateOrderProductConnections","parameters":[{"description":"The internal ID for the product you want to update.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation definition.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the related product.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"connectedProductId","required":true,"schema":{"type":"string"}},{"description":"The new zero-based target position for the related product.\n\n**Example:** `0`","in":"query","name":"targetPosition","required":true,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The direction of the relation. Can be either `DIRECT` or `REVERSE`.","in":"query","name":"direction","required":true,"schema":{"type":"string","enum":["DIRECT","REVERSE"]}}],"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update the order of products in a product relation.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/connections/{rightProductId}/{relationId}":{"put":{"description":"","operationId":"updateConnectionQuantity","parameters":[{"description":"The internal ID for the product you want to update the connection quantity for.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the right product.\n\n**Example:** `78y3566b5c65c1325edexx7c`","in":"path","name":"rightProductId","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the relation.\n\n**Example:** `78y3566b5c65c1325edexx8e`","in":"path","name":"relationId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductConnectionUpdateRequest"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update connection quantity.","tags":["Products relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"CONNECTIONS"}],"security":[{"oauth2":[]}]}},"/products/{id}/copy":{"post":{"description":"This endpoint allows you to create a copy of an existing product in the system. The new product's ID is\ngenerated by Bluestone PIM and is included in the response headers under `resource-id`.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"copyProduct","parameters":[{"description":"The internal ID for the product you want to copy.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"responses":{"201":{"description":"Created\n\nThe new ID is included in the response headers under `resource-id`. See the example below:\n\n**Example:**\n```\nresource-id: 664cc80da825236207fe01a7\n```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create a copy of product.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"COPY","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/get/views":{"post":{"description":"This endpoint allows you to retrieve a product filtered by its ID, providing details from specified views\\*.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES` to be included in\nthe response, if no view is specified in the request, an error will be returned.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"findProductViewsById","parameters":[{"description":"The internal ID for the product you want to retrieve the view for.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductIdViewsRequestDto"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductViewDto"}}},"description":"OK\n\nThe request was successfully processed, and the products view is returned in the response."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show product filtered by id with view.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/groupedAttributes":{"get":{"description":"This endpoint allows you to retrieve attribute groups with child attributes for a specified product.\n\nThe grouped attributes provide a consolidated view of the product's attributes, considering the specified\ncontext and archive state.\n\nFor more information, refer to the [Create, edit or remove\nattributes](https://help.bluestonepim.com/edit-attributes) article.","operationId":"getGroupedProductAttributes","parameters":[{"description":"The internal ID for the product you want to retrieve grouped attributes for.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableGroupedAttributeValuesDto"}}},"description":"OK\n\nThe request was successfully processed, and the grouped product attributes are returned in the response."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Get grouped product attributes.","tags":["Products attributes"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/groups":{"post":{"description":"Converts a SINGLE product to a FAMILY product type. This operation creates a new hierarchy level\nthat allows variant groups to be organized under a common family.","operationId":"convertToProductFamily","parameters":[{"description":"The internal ID for the product to be converted to a FAMILY type.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created\n\nThe product was successfully converted to FAMILY type."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create variant family.","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/groups/attributes/{definitionId}":{"get":{"description":"Retrieve the details of a specific group level attribute set in a variant family product.\nGroup Level Attribute is a product attribute used to manage product group variations.","operationId":"getProductGroupAttribute","parameters":[{"description":"The internal ID for the variant family product whose group level attribute is being retrieved.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductVariantAttributeDto"}}},"description":"OK\n\nSuccessful operation. Returns the group level attribute details."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Retrieve group level attribute.","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"Updates the specified group level attribute for a variant family.\n\n**Group Attribute Configuration Validation**\n\nVariant-defining attributes must be properly configured to be propagated to groups.\nThis error occurs when a variant level attribute is not configured to be propagated to its groups.\n\nAttributes marked as `definingAttributes`, `locked` or `mandatory` require `copy = true`.\n\nIf `copy` is set to `false` (or omitted), the configuration becomes inconsistent and the request is rejected\nwith HTTP 400 Bad Request.","operationId":"updateProductGroupAttribute","parameters":[{"description":"The internal ID for the variant family whose group level attribute  is being updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"When propagating this Variant Level Attribute to groups in this variant family, this\nflag controls what to do if a group already has this attribute assigned:\n\n`false` = Keep existing value, only update empty ones\n\n`true` = Override existing value\n\nIf omitted, the default value `false` will be used.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductVariantAttributeDto"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThe group level attribute was successfully updated."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update group level attribute (VLA).","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/groups/{groupId}":{"delete":{"description":"Unassigns the specified GROUP product from the given FAMILY product. The GROUP product will remain\na GROUP type.","operationId":"unassignProductGroup","parameters":[{"description":"The internal ID for the FAMILY product from which a GROUP is to be unassigned.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the GROUP product to be unassigned.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"groupId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThe GROUP product was successfully unassigned from the FAMILY product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Unassign product group from variant family.","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/groups/{groupId}/order":{"put":{"description":"Updates the order of the specified GROUP within a FAMILY product. This operation helps in organizing\nproduct groups and maintaining accurate product hierarchies.","operationId":"moveProductGroup","parameters":[{"description":"The internal ID for the FAMILY product whose GROUP is being moved.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the GROUP product to be moved.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"groupId","required":true,"schema":{"type":"string"}},{"description":"The target position for the group (0-based).","in":"query","name":"position","required":true,"schema":{"maximum":100000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK\n\nSuccessful operation. The group's order was updated."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update product group order.","tags":["Product groups"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/labels":{"delete":{"description":"Detaches the given labels from the product in one call; any listed label that is not currently\nassigned is ignored (it does not fail). Other labels on the product are left in place. Fails if\nthe product does not exist. To remove one label at a time use the single-label delete endpoint;\nto remove one label from many products at once use remove_label_from_products.\n\nFor more detailed information on how to work with product labels in Bluestone PIM,\nrefer to our help pages [Add/remove product labels](https://help.bluestonepim.com/bulk-actions#add-product-labels).","operationId":"removeLabelsFromProduct","parameters":[{"description":"The ID of the product to remove the labels from.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemoveLabelsFromProductRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Remove a set of labels from a product.","tags":["Products labels"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"get":{"description":"Retrieve the list of product label IDs associated with a product. This endpoint helps in managing and organizing product labels efficiently.\n\nFor more detailed information on how to work with product labels in Bluestone PIM,\nrefer to our help pages [Add/remove product labels](https://help.bluestonepim.com/bulk-actions#add-product-labels).","operationId":"getProductsLabels","parameters":[{"description":"The ID for the product whose product labels are being retrieved.\n\n**Example:** `78y3566b5c65c1325edexx8f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableString"}}},"description":"OK\n\nSuccessful operation. Returns the list of product label IDs associated with the product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Retrieve product labels.","tags":["Products labels"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"post":{"description":"Appends the given labels to the product's existing labels; labels already assigned are left\nunchanged, so this never removes or replaces the current set. Fails if the product or any of\nthe given labels does not exist. To remove labels from a single product use\ndelete_product_labels; to assign one label across many products use add_label_to_products.","operationId":"addLabelsToProduct","parameters":[{"description":"The ID of the product to add the labels to.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LabelReferenceRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThe product labels were successfully added to the product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add product labels to a product.","tags":["Products labels"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/labels/{labelId}":{"delete":{"description":"Removes the specified product label from the given product. This operation helps\nin updating and managing product labels to ensure accurate tagging.","operationId":"removeLabelFromProduct","parameters":[{"description":"The ID for the product from which product labels are to be removed.","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The ID for the product label to be removed from the product.","in":"path","name":"labelId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThe product label was successfully removed from the product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Remove product label from product.","tags":["Products labels"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/overview":{"get":{"description":"This endpoint allows you to retrieve an overview of a product, providing a summary of key product information.\nThe overview includes essential details about the product without the full data set.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our help\npages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"productOverview","parameters":[{"description":"The internal ID for the product you want to retrieve the overview for.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the archive state of the entity. The default value is `active`.","in":"query","name":"archiveState","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductOverviewDto"}}},"description":"OK\n\nThis response indicates that the request was successful and returns the product overview data."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show product overview.","tags":["Products"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/variants":{"post":{"description":"Promotes the specified product to a variant group (changes its type from SINGLE to GROUP) so other products can\nlater be assigned to it as variants. This only turns the product into a group; it does not add any variants — use\nadd_product_variant to attach a product as a variant afterwards.\n\nFails if the product is not currently a SINGLE product (e.g. it is already a group or already a variant).\n\nFor more detailed information on how to work with variants and variant groups in Bluestone PIM, refer to our\nhelp pages [Create and connect variants](https://help.bluestonepim.com/create-and-connect-variants).","operationId":"setProductGroup","parameters":[{"description":"The internal ID of the product to turn into a variant group.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created\n\nThe variant group was successfully created."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create variant group.","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/variants/attributes/{definitionId}":{"get":{"description":"Retrieve the details of a specific variant level attribute (VLA) set in a variant group product.\nVariant Level Attribute (VLA) is a product attribute used to manage product variations like size or color.\n\nFor more detailed information on how to work with Variant Level Attributes (VLA) in Bluestone PIM, refer to our\nhelp pages [The data model - Variant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).","operationId":"getProductVariantAttribute","parameters":[{"description":"The internal ID for the variant group product whose variant level attribute is being retrieved.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductVariantAttributeDto"}}},"description":"OK\n\nSuccessful operation. Returns the variant level attribute details."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Retrieve variant level attribute (VLA).","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]},"put":{"description":"Updates the specified variant level attribute (VLA) for a variant group.\n\nFor more detailed information on how to work with Variant Level Attributes (VLA) in Bluestone PIM, refer to our\nhelp pages [The data model - Variant Level Attribute (VLA)](https://help.bluestonepim.com/the-data-model#VLA).\n\n**Variant Attribute Configuration Validation**\n\nVariant-defining attributes must be properly configured to be propagated to variants.\nThis error occurs when a variant level attribute is not configured to be propagated to its variants.\n\nAttributes marked as `definingAttributes`, `locked` or `mandatory` require `copy = true`.\n\nIf `copy` is set to `false` (or omitted), the configuration becomes inconsistent and the request is rejected\nwith HTTP 400 Bad Request.","operationId":"updateProductVariantAttribute","parameters":[{"description":"The internal ID for the variant group whose variant level attribute (VLA) is being updated.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"definitionId","required":true,"schema":{"type":"string"}},{"description":"When propagating this Variant Level Attribute (VLA) to variants in this variant group, this\nflag controls what to do if a variant already has this attribute assigned:\n\n`false` = Keep existing value, only update empty ones\n\n`true` = Override existing value\n\nIf omitted, the default value `false` will be used.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductVariantAttributeDto"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThe variant level attribute (VLA) was successfully updated."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update variant level attribute (VLA).","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"ATTRIBUTES"}],"security":[{"oauth2":[]}]}},"/products/{id}/variants/{variantProductId}":{"delete":{"description":"Detaches a variant from its variant group. The product is not deleted — it is disconnected from the group and\nreverts to a standalone SINGLE product.\n\nFails if the group product is not a variant group, or if the given product is not currently a variant of that\ngroup.\n\nFor more detailed information on how to work with the data model in Bluestone PIM, refer to our help\npages [The data model](https://help.bluestonepim.com/the-data-model).","operationId":"unassignProductVariant","parameters":[{"description":"The internal ID of the variant group the product is currently assigned to.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the variant to detach from the group.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"variantProductId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content\n\nThe variant product was successfully unassigned from the variant group product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Unassign product variant.","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]},"put":{"description":"Attaches an existing product to a variant group as one of its variants, and propagates the group's variant level\nattributes (VLAs) down to the newly assigned variant. The target group must already be a variant group — use\ncreate_product_variant_group first to promote a product to a group.\n\nFails if the target is not a variant group, if the product being added is not a SINGLE product, or if that\nproduct is already a variant of another group.\n\nFor more detailed information on how to work with the data model in Bluestone PIM, refer to our help\npages [The data model](https://help.bluestonepim.com/the-data-model).","operationId":"addProductVariant","parameters":[{"description":"The internal ID of the variant group to assign the product to.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID of the product to attach as a variant.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"variantProductId","required":true,"schema":{"type":"string"}},{"description":"Controls how the group's variant level attributes are applied to the newly assigned variant when\nthe variant already has a value for one of them:\n\n`false` = keep the variant's existing value, only fill in empty ones\n\n`true` = overwrite the variant's existing value with the group's\n\nIf omitted, defaults to `false`.","in":"query","name":"forceVla","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"204":{"description":"No Content\n\nThe variant product was successfully assigned to the variant group product."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Assign product variant.","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/products/{id}/variants/{variantProductId}/order":{"put":{"description":"Updates the order of the specified variant for a variant group product. This operation helps in organizing\nproduct variants and maintaining accurate product groupings.\n\nFor more detailed information on how to work with the data model in Bluestone PIM, refer to our help\npages [The data model](https://help.bluestonepim.com/the-data-model).","operationId":"moveProductVariant","parameters":[{"description":"The internal ID for the variant group product whose variant is being moved.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The internal ID for the variant product to be moved.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"variantProductId","required":true,"schema":{"type":"string"}},{"description":"The target position for the variant.","in":"query","name":"targetPosition","required":true,"schema":{"maximum":100000,"minimum":0,"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK\n\nSuccessful operation. The variant's order was updated."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update product variant order.","tags":["Product variants"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"PRODUCTS"}],"security":[{"oauth2":[]}]}},"/relations":{"get":{"description":"Show all relation definitions available in the organization. This endpoint allows you to retrieve a list of\nrelation definitions, optionally filtering by context and using pagination to manage large result sets.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"findRelations","parameters":[{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableRelationResponse"}}},"description":"OK\n\nThis respond indicates that the request was successful and returns a list of relation definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show all relation definitions.","tags":["Relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"RELATIONS"}],"security":[{"oauth2":[]}]},"post":{"description":"Create a new relation definition. The ID for the new relation definition is generated by Bluestone PIM\nand included in the response headers under `resource-id`.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"createRelation","parameters":[{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationRequest"}}},"required":true},"responses":{"201":{"description":"Created\n\nThe new ID is included in the response headers under `resource-id`.\n\nSee the example below:\n\n```\nresource-id: 664cc80da825236207fe01a9\n```","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Create new relation definition.","tags":["Relations"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"ADD","module":"RELATIONS"}],"security":[{"oauth2":[]}]}},"/relations/list":{"post":{"description":"Filter relation definitions based on specified criteria. This endpoint allows you to retrieve a list of relation\n definitions that match the given filters.\n\n **Note**: For a relation definitions to be found it needs to map to at least one of the values in each object in the filters array.\n\n **Example**:\n Imagine if we have these two relation definitions:\n\n Relation definition: `Contains`\n - Number: `contains-relation`\n - ID: `64ef9336bec72f3271090e97`\n\n Relation definition: `Spare part of`\n - Number: `spare-part-of-relation`\n - ID: `64ef9336bec72f3271090e98`\n\n And then we filter on the criteria's below. Then only the relation definition `Contains` will be found since\n it maps to one of the values in both the `NUMBER_IN` and `ID_IN` objects. The relation definition\n `Spare part of` will **not** be found since it only maps to a value in the `NUMBER_IN` object but not to any\n value in the `ID_IN` object:\n\n```\n  \"filters\": [\n    {\n      \"type\": \"NUMBER_IN\",\n      \"values\": [\n        \"contains-relation\",\n        \"spare-part-of-relation\"\n      ]\n    },\n    {\n      \"type\": \"ID_IN\",\n      \"values\": [\n        \"64ef9336bec72f3271090e97\",\n        \"111111111111111111111111\"\n      ]\n    }\n  ]\n ```\n\n For more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\n pages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"getFilteredRelations","parameters":[{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationFilteringRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableRelationResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of filtered relation definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Filter relation definitions.","tags":["Relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"LIST","module":"RELATIONS"}],"security":[{"oauth2":[]}]}},"/relations/{id}":{"delete":{"description":"Delete a specific relation definition identified by its ID.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"delete","parameters":[{"description":"The ID for the relation definition you want to delete.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies whether to force the deletion of the relation definition even if it is in use by a product\nrelation.\n\nIf the relation definition is in use by a product relation and `force` is omitted or set to `false`, then\na HTTP 400 will be returned and the deletion of the relation definition will not occur.\n\nIf omitted, the default value `false` will be used.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"query","name":"force","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed, and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete relation definition.","tags":["Relations"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"DELETE","module":"RELATIONS"}],"security":[{"oauth2":[]}]},"get":{"description":"Retrieve the details of a specific relation definition identified by its ID.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"findOne","parameters":[{"description":"The ID for the relation definition you want to retrieve.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationResponse"}}},"description":"OK\n\nThis response indicates that the request to retrieve a relation definition was successful. The response\nbody contains the details of the relation definition, formatted as a JSON object."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Show relation definition details.","tags":["Relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"RELATIONS"}],"security":[{"oauth2":[]}]},"patch":{"description":"Updates only the fields present in the request body (`name`, `reverseName`, `description`, `number`,\n`direction`, `quantityEnabled`); omitted fields are left unchanged. Use this for a partial edit. To replace\nall of a relation definition's details in one call, use the full-update PUT on the same path instead.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"partialUpdateRelation","parameters":[{"description":"The ID for the relation definition you want to update.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationPartialUpdateRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed, and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Partially update relation definition.","tags":["Relations"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"RELATIONS"}],"security":[{"oauth2":[]}]},"put":{"deprecated":true,"description":"Update the details of a specific relation definition identified by its ID.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).\n\n**Note:** this endpoint is deprecated. Use `PATCH /relations/{id}` (Partially update relation definition)\nto change a relation definition's details, or `POST /relations/{id}/direction`\n(Update relation definition direction) to change its direction.","operationId":"updateRelation","parameters":[{"description":"The ID for the relation definition you want to update.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response indicates that the request was successfully processed, and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"[DEPRECATED; EOL 2027-06-09] Update relation definition.","tags":["Relations"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-deprecated-since":"2026.09.09","x-bluestone-permission":[{"accessType":"UPDATE","module":"RELATIONS"}],"security":[{"oauth2":[]}]}},"/relations/{id}/direction":{"post":{"description":"Switch the relation's direction between `ONE_WAY` and `TWO_WAY`. The change is processed by a background\ntask that reconciles product connections for the relation. Switching from `TWO_WAY` to `ONE_WAY` is always\nallowed; switching from `ONE_WAY` to `TWO_WAY` requires the relation to have no product connections.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"updateRelationDirection","parameters":[{"description":"The ID for the relation definition you want to update.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationDirectionUpdateRequest"}}},"required":true},"responses":{"200":{"description":"OK\n\n`202 Accepted` with a `Location` header pointing at the scheduled background task's status.","headers":{"Location":{"description":" Location URI (Uniform Resource Identifier). This field is the URI of the newly created resource.\n","schema":{"type":"string","example":"location: https://domain.com/.../66d0228066f7c16ce825e2d0"}},"Resource-Id":{"description":"  Entity ID. The unique ID of the newly created resource.\n","schema":{"type":"string","example":"resource-id: 664cc80da825236207fe01a7"}}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Conflict\n\nThis response indicates that the request could not be completed due to a conflict with the current state of the target resource. This typically occurs when there are duplicate entries or other data conflicts."}},"summary":"Update relation definition direction.","tags":["Relations"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"RELATIONS"}],"security":[{"oauth2":[]}]}},"/relations/{id}/order":{"put":{"description":"Update the order of a specific relation definition identified by its ID.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).","operationId":"updateOrderRelation","parameters":[{"description":"The ID for the relation definition you want to update the order for.\n\n**Example:** `78y3566b5c65c1325edexx8g`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Specifies the zero-based target position for the relation definition. This parameter is\nused to update the order of the relation definition within the list of all relation definitions in the organization.","in":"query","name":"targetPosition","required":true,"schema":{"minimum":0,"type":"integer","format":"int32"}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed, and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Update relation definition order.","tags":["Relations"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"UPDATE","module":"RELATIONS"}],"security":[{"oauth2":[]}]}},"/relations/{id}/policy":{"get":{"description":"Retrieve the policies associated with a specific relation. This endpoint allows you to fetch a list of\npolicies that govern the relation, ensuring compliance and governance.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer\nto our help pages [Access management](https://help.bluestonepim.com/access-management).","operationId":"getByRelationId","parameters":[{"description":"The ID for the relation you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListablePolicyDto"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of policies associated with the relation."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Get relation policies.","tags":["Relation policy"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"READ","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]},"post":{"description":"Add a policy to a specific relation identified by its ID. This endpoint allows you to associate a policy\nwith a relation to ensure compliance and governance.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer\nto our help pages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"addPolicyToRelation","parameters":[{"description":"The ID for the relation to update.\n\n**Example:** `66159308bfa3207886a9d45e`","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequest"}}},"required":true},"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Add policy to the relation.","tags":["Relation policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/relations/{id}/policy/{policyId}/{policyType}":{"delete":{"description":"Delete a specific policy associated with a relation identified by its ID.\nThis endpoint allows you to remove a policy from a relation, ensuring the relation's policies are up-to-date.\n\nFor more detailed information on how to work with access management in Bluestone PIM, refer\nto our help pages [Access management](https://help.bluestonepim.com/access-management).","operationId":"deletePolicyForRelation","parameters":[{"description":"The ID for the relation you want to delete the policy from.\n\n**Example:** `634c26e14cedfd0001775e9e`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"The policy ID to delete from the relation.\n\n**Example:** `450c4ef0-048e-422d-8e0b-00e0b0e33461`","in":"path","name":"policyId","required":true,"schema":{"type":"string"}},{"description":"The type of policy to delete from the relation. Possible values are `READ` and `WRITE`.","in":"path","name":"policyType","required":true,"schema":{"type":"string","enum":["READ","WRITE"]}}],"responses":{"204":{"description":"No Content\n\nThis response status indicates that the request was successfully processed and there is no content to return."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found\n\nThis response indicates that the requested resource could not be found on the server. It typically occurs when no resource matches the requested URI, or the resource identifier used in the request does not exist."}},"summary":"Delete policy.","tags":["Relation policy"],"x-bluestone-allowed-user-types":["STANDARD"],"x-bluestone-permission":[{"accessType":"WRITE","module":"DETAILED_PERMISSION"}],"security":[{"oauth2":[]}]}},"/relations/{id}/products/connections":{"get":{"description":"Retrieve the product relations associated with a specific relation definition.\n\nFor more detailed information on how to work with relation definitions in Bluestone PIM, refer to our help\npages [The data model > Relations](https://help.bluestonepim.com/the-data-model#relations).\n\nFor more details on working with products and relations, refer to the\n[Add product relations](https://help.bluestonepim.com/add-a-relation-to-a-product).","operationId":"getProductConnectionsByRelationId","parameters":[{"description":"The ID for the relation definition you want to retrieve.\n\n**Example:** `634c26e14cedfd0001775e9f`","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0` will be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","in":"query","name":"page","required":false,"schema":{"minimum":0,"type":"integer","format":"int32"}},{"description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter works with the `page` parameter to paginate the result set, allowing you to control the size of each page of results.\n\n**Default value:** `1000`","in":"query","name":"pageSize","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListableProductConnectionResponse"}}},"description":"OK\n\nThis response indicates that the request was successful and returns a list of product relations\nassociated with the relation definition."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show all product relations using relation definition.","tags":["Relations"],"x-bluestone-allowed-user-types":["RESTRICTED","STANDARD"],"x-bluestone-permission":[{"accessType":"DETAILS","module":"RELATIONS"}],"security":[{"oauth2":[]}]}},"/technical/version":{"get":{"description":"Retrieve the current version of the Bluestone PIM service. This endpoint allows you to check the version of\nthe service to ensure compatibility and proper integration.\n\nFor more detailed information on how to work with the Management API (MAPI) in Bluestone PIM, refer to our\nhelp pages [Get started with Management API](https://help.bluestonepim.com/get-started-with-management-api).","operationId":"getVersion","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PimVersion"}}},"description":"OK\n\nThis response indicates that the request was successful and returns the version of the Bluestone PIM service."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Show service version.","tags":["Technical"],"security":[{"oauth2":[]}]}},"/validate/definitions":{"post":{"description":"This endpoint allows you to validate attribute definitions for a product.","operationId":"validateAttribute","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeValidationRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttributeValidationResponse"}}},"description":"OK\n\nReturns the validation result for the attribute definitions."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Validates attribute definitions.","tags":["Validation"],"security":[{"oauth2":[]}]}},"/validate/product":{"post":{"deprecated":true,"description":"This endpoint is deprecated and will be removed soon.\n\nFor product validation, please use endpoint from bs-core-completeness-score service:\n\nPOST /validations/product/attribute Validate product attribute.","operationId":"validateProducts","parameters":[{"description":"Specifies the context in which to operate. If omitted, the default context `en` is used.\n\nIn Bluestone PIM, the context is generally synonymous with the language setting. The context determines how product information is tailored and presented based on language or other local specifications.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** The default context is identified by the ID `\"en\"`. IDs for additional contexts begin with a lowercase `\"L\"`, **not** with the digit `\"1\"`, followed by a number. This naming convention helps distinguish between default and custom contexts within Bluestone PIM.","in":"header","name":"context","schema":{"type":"string"}},{"description":"Specifies whether to enable the fallback mechanism for the context. If omitted, the default value `true` will be used. When set to `true`, the system will provide a default translation or relevant information if the requested context's specific translation is missing.\n\nFor more detailed information on how context relates to language settings in Bluestone PIM, refer to the [Languages and Context documentation](https://help.bluestonepim.com/languages-and-context).\n\n**Note:** Setting the `context-fallback` parameter to `false` disables the fallback mechanism. In this configuration, if a translation or specific context information is not available, the system will not provide an alternative or default content. This ensures that only content that matches the exact context ID requested is returned, potentially leading to cases where no content is available if the specific translation is missing.","in":"header","name":"context-fallback","schema":{"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProductValidationRequest"}}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProductValidationIssueResponse"}}}},"description":"OK\n\nReturns a list of validation issues for the provided products."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"[DEPRECATED; EOL 2026-12-20] Validates list of products.","tags":["Validation"],"x-bluestone-deprecated-since":"2026.03.20","security":[{"oauth2":[]}]}},"/validate/value":{"post":{"description":"This endpoint allows you to validate a single attribute value for a product.","operationId":"validateValue","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValueValidationRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValueValidationResponse"}}},"description":"OK\n\nReturns the validation result for the attribute value."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request\n\nThis response indicates that the server could not understand the request due to invalid syntax. It is typically triggered by client-side input errors such as improperly formatted requests, missing required fields, or invalid data values."}},"summary":"Validates attribute value.","tags":["Validation"],"security":[{"oauth2":[]}]}}},"components":{"schemas":{"AddProductVariantsRequest":{"required":["productIds","variantGroupId"],"type":"object","properties":{"productIds":{"maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","description":"Specifies the set of product IDs to be assigned to the specified variant group.\n\n\n **Example:**\n ```\n \"productIds\": [\n   \"667a6c664d59943c1504c738\",\n   \"67958a6c664d59943c1504c7\"\n]\n```","items":{"type":"string"}},"variantGroupId":{"type":"string","description":"Specifies the ID of the variant group to which products will be assigned.\n\n\n **Example:**\n ```\n \"variantGroupId\": \"667a6c664d59943c1504c738\"\n```"}}},"AppendDictionaryValueRequest":{"required":["attributeDefinitionId","dictionaryValueIds","productIds"],"type":"object","properties":{"attributeDefinitionId":{"$ref":"#/components/schemas/ObjectId"},"dictionaryValueIds":{"title":"Attribute definition value ids that to append.","maxItems":100,"minItems":1,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}},"productIds":{"title":"Product IDs that will be affected.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}}}},"AppendSelectValuesToProductsAttributeRequest":{"title":"Request model for appending select/multiselect values to products with assigned attribute definition.","required":["attributeDefinitionId","productIds","selectValueIds"],"type":"object","properties":{"attributeDefinitionId":{"$ref":"#/components/schemas/ObjectId"},"productIds":{"title":"Product ids with assigned select/multiselect attribute definition.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}},"selectValueIds":{"title":"Select/multiselect value ids to be appended.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}}}},"AssetIdListViewsRequestDto":{"required":["assetIds"],"type":"object","properties":{"assetIds":{"maxItems":100,"minItems":0,"type":"array","description":"Specifies a list of asset IDs to retrieve products linked to those given assets. This field is mandatory.\n\n\n **Example:**\n ```\n assetIds: [\n   \"ff1df72b-8d79-4b32-a7e4-579caa589ade\",\n   \"ff1df72b-8d79-4b32-a7e4-579caa589adf\"\n]\n```","items":{"type":"string"}},"page":{"minimum":0,"type":"integer","description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0`\nwill be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","format":"int32"},"pageSize":{"maximum":100,"minimum":1,"type":"integer","description":"The number of items to return in each block. If omitted, the default value `100` will be used. This parameter\nworks with the `page` parameter to paginate the result set, allowing you to control the size of each page of\nresults. The value must be between 1 and 100.\n\n**Default value:** `100`","format":"int32"},"views":{"type":"array","description":"Specifies the list of entity views\\* to be included in the response.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES`, to be included\nin the response, if no views are specified in the request, only product IDs will be returned.\n\n**Example:**\n```\n\"views\": [\n  {\n    \"type\": \"ASSETS\"\n  },///   {\n    \"type\": \"ATTRIBUTES\",\n    \"definitionIds\": [\n      \"664cc90da825236207yt01a7\"\n    ]\n  }\n]\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/AttributesFilteringViewsDto"},{"$ref":"#/components/schemas/BundlesFilteringViewsDto"},{"$ref":"#/components/schemas/CategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/GroupsFilteringViewsDto"},{"$ref":"#/components/schemas/LabelsFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedCategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedProductsFilteringViewsDto"},{"$ref":"#/components/schemas/VariantsFilteringViewsDto"}]}}}},"AssetsFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"},{"$ref":"#/components/schemas/CategoryFilteringViewsDto"}]},"AssignProductsToCategoryRequest":{"type":"object","properties":{"categoryId":{"type":"string","description":"Specifies the ID of the category to which products will be assigned.\n\n\n **Example:**\n ```\n \"categoryId\": \"667a6c664d59943c1504c738\"\n```","nullable":true},"productIds":{"maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","description":"Specifies the set of product IDs to be assigned to the specified category.\n\n\n**Example:**\n```\n\"productIds\": [\n  \"667a6c664d59943c1504c738\",\n  \"67958a6c664d59943c1504c7\"\n]\n```","nullable":true,"items":{"type":"string"}}}},"AssociateProductAssetsRequest":{"type":"object","properties":{"assets":{"maxItems":100,"minItems":1,"type":"array","description":"The IDs of the existing media-bank assets to attach to the product. Must contain 1 to 100 IDs, and each asset\nmust already exist. These are added to any assets the product already has, not replacing them.","items":{"type":"string"}}}},"AttributeDefinitionDeleteResponse":{"type":"object","properties":{"numberOfAlteredCompoundAttributeDefinitions":{"type":"integer","description":"Number of altered compound attribute definitions.","format":"int64"},"numberOfDeletedCategoryLevelAttributes":{"type":"integer","description":"Number of deleted category level attributes (CLA).","format":"int64"},"numberOfDeletedProductAttributes":{"type":"integer","description":"Number of deleted product attributes.","format":"int64"}}},"AttributeDefinitionFilterDto":{"type":"object","properties":{"type":{"type":"string","description":"Specifies the type of attribute definition filter. Available values are `NUMBER_IN`, `ID_IN`.","enum":["NUMBER_IN","ID_IN"]},"values":{"maxItems":2147483647,"minItems":1,"type":"array","description":"Specifies the set of values. The input of this field is used for filtering attribute definitions based on the\nselected filter type.","items":{"type":"string"}}}},"AttributeDefinitionFilteringRequestDto":{"type":"object","properties":{"filters":{"type":"array","description":"Specifies the list of attribute definition filters. This field is used for filtering attribute definitions based\non various criteria.","nullable":true,"items":{"$ref":"#/components/schemas/AttributeDefinitionFilterDto"}},"page":{"minimum":0,"type":"integer","description":"The number of items to return in each block. If omitted, the default value `1000` will be used. This parameter\nworks with the `page` parameter to paginate the result set, allowing you to control the size of each page of\nresults. The value must be between 1 and 1000.\n\n**Default value:** `1000`","format":"int32"},"pageSize":{"maximum":1000,"minimum":1,"type":"integer","description":"A number sequence representing a block of items to return as a result set. If omitted, the default value `0`\nwill be used. This parameter is used for pagination to specify which page of the results to retrieve.\n\n**Default value:** `0`","format":"int32"}}},"AttributeDefinitionIdDto":{"type":"object","properties":{"id":{"type":"string","description":"A unique ID used to define attribute definition in Bluestone PIM. This value is automatically generated by the\nsystem.\n\n**Example:** `634c26e14cedfd0001775e9f`"}}},"AttributeDefinitionMetadataUpdateRequest":{"type":"object","properties":{"description":{"$ref":"#/components/schemas/PropertyUpdateString"},"externalSource":{"type":"boolean","description":"Specifies whether the origin of the attribute is managed in an external source like ERP systems and hence should\nbe read-only for the editors in the Bluestone PIM UI. Note that the value still can be modified via the\nManagement API.","nullable":true},"internal":{"type":"boolean","description":"Indicates that the attribute is for internal use only within Bluestone PIM, meaning this value is not visible in\nthe Public API (PAPI) or accessible outside the system; for example, attributes for system configuration or\ninternal categorization.","nullable":true},"name":{"$ref":"#/components/schemas/PropertyUpdateString"},"number":{"$ref":"#/components/schemas/PropertyUpdateString"}}},"AttributeDefinitionResponse":{"type":"object","properties":{"charset":{"type":"string","description":"Character and symbol used for encoding text for the attribute definition.","nullable":true},"contentType":{"type":"string","description":"Format of the attribute's content such as text/markdown","nullable":true},"contextAware":{"type":"boolean","description":"Indicates whether the attribute is context aware.","nullable":true},"dataType":{"type":"string","description":"Format of data that an attribute can hold. It determines how the data is stored, displayed and used within the\nsystem.","nullable":true,"enum":["boolean","integer","decimal","date","time","date_time","location","single_select","multi_select","text","formatted_text","pattern","multiline","column","matrix","dictionary"]},"description":{"type":"string","description":"Details of the attribute definition.","nullable":true},"dictionaryMetadataType":{"type":"string","description":"Specifies the type of metadata associated with a dictionary attribute definition, providing additional context","nullable":true},"externalSource":{"type":"boolean","nullable":true},"filterParentDefinitionId":{"type":"string","description":"Unique ID for the parent definition of a dictionary attribute, applicable only to attributes that belong to a\nchild dictionary.","nullable":true},"group":{"type":"string","description":"Name of the group that the attribute definition belongs to.","nullable":true},"groupId":{"type":"string","nullable":true},"id":{"type":"string","description":"Attribute definition ID. This value is automatically generated by the system.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"internal":{"type":"boolean","nullable":true},"isCompound":{"type":"boolean","description":"Indicates whether the attribute is a compound attribute, if the value is TRUE, it means the attribute consists\nof multiple attribute values. Otherwise, it represents a single attribute value. In Bluestone PIM, a compound\nattribute is often used to represent more complex data structures, such as a full address that includes\nsub-attributes like street, city, and postcode, or a product dimension that includes length, width, and height.\nFor more details, please refer to [Compound attribute type](https://help.bluestonepim.com/attribute-types-1#compound)","nullable":true},"name":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"readOnly":{"type":"boolean","description":"Specifies that the current user has read-only access to this attribute definition."},"restrictions":{"$ref":"#/components/schemas/RestrictionsDto"},"selectedValuesLimit":{"type":"integer","description":"The maximum number of selections allowed per product. This field will be included in the response if the\nattribute type is `Dictionary`.","format":"int32","nullable":true},"toBeRemoved":{"type":"boolean","description":"Indicates whether the attribute is scheduled for removal.","nullable":true},"unit":{"type":"string","description":"Shows the measurement unit for the attribute definition. This field will be included in the response if the\nattribute type is `integer` or `decimal`. Omitted when value is not specified.","nullable":true}}},"AttributeDefinitionUpdateResponse":{"type":"object","properties":{"numberOfAlteredCategoriesWithColumnAttributes":{"type":"integer","description":"Number of categories with altered column attributes. This field helps track changes in column attributes at the\ncategory level.","format":"int64"},"numberOfAlteredCategoriesWithMatrixAttributes":{"type":"integer","description":"Number of categories with altered matrix attributes. This field helps track changes in matrix attributes at the\ncategory level.","format":"int64"},"numberOfAlteredCategoriesWithSelectAttributes":{"type":"integer","description":"Number of categories with altered select attributes. This field helps track changes in select attributes at the\ncategory level.","format":"int64"},"numberOfAlteredProductWithColumnAttributes":{"type":"integer","description":"Number of products with altered column attributes. This field helps track changes in column attributes at the\nproduct level.","format":"int64"},"numberOfAlteredProductWithMatrixAttributes":{"type":"integer","description":"Number of products with altered matrix attributes. This field helps track changes in matrix attributes at the\nproduct level.","format":"int64"},"numberOfAlteredProductWithSelectAttributes":{"type":"integer","description":"Number of products with altered select attributes. This field helps track changes in select attributes at the\nproduct level.","format":"int64"}}},"AttributeGroupRequest":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"Specifies the attribute group name. This value must be unique across all attribute groups, it helps users\nunderstand what the attribute is and how it is used within the system.","nullable":true},"number":{"type":"string","description":"Specifies the attribute group number. This value must be unique across all attribute group. If not specified,\nthe system will use the attribute group ID, generated by the system, as the default attribute group number.","nullable":true}}},"AttributeGroupResponse":{"required":["name"],"type":"object","properties":{"id":{"type":"string","description":"Unique ID for the attribute group. This value is automatically generated by the system.\n\n**Example:** `5be16d624cedfd000b2e75ff`","nullable":true},"name":{"minLength":1,"type":"string","description":"The name given to the attribute group, it is unique across all attribute groups in Bluestone PIM.","nullable":true},"number":{"type":"string","description":"The number given to the attribute group. This value distinguishes the attribute within the system, if not\nspecified, the system will use the attribute group ID, generated by the system, as the default attribute group\nnumber.","nullable":true},"orderByName":{"type":"boolean","description":"Indicates if the attribute group is sorted by name alphabetically.","nullable":true}}},"AttributeValidationData":{"type":"object","properties":{"id":{"type":"string","description":"Unique ID for attribute definition. This value is automatically generated by the system.\n\n**Example:** `5be16d624cedfd000b2e75ff`"},"issues":{"type":"array","description":"Array of validation issues found during the validation process. Each validation issue object contains its code,\ndetails and, message.","nullable":true,"items":{"$ref":"#/components/schemas/AttributeValidationIssue"}},"status":{"type":"string","description":"Status of the validation process, indicating whether it was successful or failed.","enum":["SUCCESSFUL","FAILED"]}}},"AttributeValidationIssue":{"type":"object","properties":{"code":{"type":"string","description":"Code representing the type of validation issue. Possible values: `DUPLICATED_SELECT_VALUE` and `NOT_FOUND`","enum":["DUPLICATED_SELECT_VALUE","NOT_FOUND"]},"details":{"$ref":"#/components/schemas/AttributeValidationIssueDetails"},"message":{"type":"string","description":"Simple text to describe the issue found during validation."}}},"AttributeValidationIssueDetails":{"type":"object","properties":{"duplicatedSelectValue":{"$ref":"#/components/schemas/DuplicatedSelectValue"}},"nullable":true},"AttributeValidationRequest":{"type":"object","properties":{"definitions":{"maxItems":100,"minItems":1,"type":"array","description":"Specifies a list of the unique ID for attribute definition that are subject to validation. The minimum number\nof definition IDs is 1, and the maximum allowed is 100.\n\n**Example:**\n```\ndefinitions: [\n  {\n    \"id\": \"5be16d624cedfd000b2e75ff\"\n  },\n  {\n    \"id\": \"5be16d624cedfd000b2e7599\"\n  }","items":{"$ref":"#/components/schemas/AttributeDefinitionIdDto"}}}},"AttributeValidationResponse":{"type":"object","properties":{"data":{"type":"array","description":"Array of validation data objects, each containing details about the validation results for specific attributes.","items":{"$ref":"#/components/schemas/AttributeValidationData"}}}},"AttributeValueAll":{"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Values for column attributes associated with the product.","nullable":true},"definitionId":{"type":"string","description":"ID of the attribute definition for the given value."},"dictionary":{"type":"array","description":"Values for dictionary attributes associated with the product.","nullable":true,"items":{"type":"string"}},"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"Values for matrix attributes associated with the product.","nullable":true},"values":{"type":"array","description":"Set of attribute values associated with the product.\n\n**Note**: For a simple attribute type like `text` that only have one value, only the first string in the list will be used for the value.","nullable":true,"items":{"type":"string"}}}},"AttributeValueFull":{"title":"Product's attributes.","required":["definitionId"],"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Values for column attributes associated with the product.","nullable":true},"copy":{"type":"boolean","description":"Flag indicating whether the attribute is a Variant Level Attribute (`VLA`).\n\n**Note**: This is only relevant for `VARIANT GROUP` products.\n\nAn attribute added to a `VARIANT GROUP` product can be set as a Variant Level Attribute (`VLA`) for easier management of the same attribute for the belonging child `VARIANT` products.\n\n`\"copy\": true` means that the attribute is to be set as a `VLA` on the `VARIANT GROUP` product, hence it will be inherited down to any child variants.\n\nIf this property is included in the request when creating an other type of product (like `SINGLE`, `VARIANT` or `BUNDLE`), a `HTTP 400` Bad Request response will be returned.","nullable":true},"definingAttributes":{"type":"boolean","description":"Indicates that a `VLA` attribute is used to distinguish the variants from each other. E.g. for product variations like color.\n\n**Note**: This is only relevant for `VARIANT GROUP` products. Also `copy` needs to be set to `true`.\n\nIf this property is included in the request when creating an other type of product (like `SINGLE`, `VARIANT` or `BUNDLE`), a `HTTP 400` Bad Request response will be returned.","nullable":true},"definitionId":{"minLength":1,"type":"string","description":"ID of the attribute definition associated with the attribute value."},"dictionary":{"type":"array","description":"Values for dictionary attributes associated with the product.","nullable":true,"items":{"type":"string"}},"locked":{"type":"boolean","description":"Flag indicating whether the `VLA` attribute is locked. A locked `VLA` will require all child variants to have the same value as specified for the variant group. Once locked, the attribute implicitly becomes mandatory on the variants, meaning that a value must be set in the attribute on all child variants\n\n**Note**: This is only relevant for `VARIANT GROUP` products. Also `copy` needs to be set to `true`.\n\nIf this property is included in the request when creating an other type of product (like `SINGLE`, `VARIANT` or `BUNDLE`), a `HTTP 400` Bad Request response will be returned.","nullable":true},"mandatory":{"type":"boolean","description":"Flag indicating whether the `VLA` attribute is mandatory. A mandatory `VLA` will require that a value is specified in all child variants.\n\n**Note**: This is only relevant for `VARIANT GROUP` products. Also `copy` needs to be set to `true`.\n\nIf this property is included in the request when creating an other type of product (like `SINGLE`, `VARIANT` or `BUNDLE`), a `HTTP 400` Bad Request response will be returned.","nullable":true},"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"Values for matrix attributes associated with the product.","nullable":true},"readOnly":{"type":"boolean","description":"The flag indicates whether the attribute is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)","nullable":true},"values":{"type":"array","description":"Array of attribute values associated with the product.\n\n**Note**: For a simple attribute type like `text` that only have one value, only the first string in the list will be used for the value.","nullable":true,"items":{"type":"string"}}}},"AttributeValueValues":{"type":"object","properties":{"values":{"type":"array","description":"List of attribute values associated with the product.\n\n**Note**: For a simple attribute type like `text` that only have one value, only the first string in the list will be used to set the new value.","nullable":true,"items":{"type":"string"}}}},"AttributesFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"},{"type":"object","properties":{"definitionIds":{"maxItems":2147483647,"minItems":1,"type":"array","items":{"type":"string"}}}}]},"BulkAssignGroupsRequest":{"required":["familyVariantId","productIds"],"type":"object","properties":{"familyVariantId":{"type":"string"},"productIds":{"maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"type":"string"}}},"description":"Represents a request to bulk assign variant group products to a variant family product."},"BulkAttributeDefinitionPolicyRequest":{"required":["policyId","readOnly"],"type":"object","properties":{"attributeDefinitionIds":{"title":"Attribute definition IDs the policy should be assigned to.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"title":"Attribute definition IDs the policy should be assigned to.","type":"string"}},"policyId":{"title":"An identifier randomly generated by PIM. ID is unique across all policies.","type":"string"},"readOnly":{"title":"Read only flag.","type":"boolean"}}},"BulkDeleteAttributeDefinitionPolicyRequest":{"required":["attributeDefinitionIds","policyId"],"type":"object","properties":{"attributeDefinitionIds":{"maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","description":"Attribute definition IDs the policy should be removed from.","items":{"type":"string"}},"policyId":{"minLength":1,"type":"string","description":"An identifier randomly generated by PIM. ID is unique across all policies."}}},"BundlesFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]},"CategoriesFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]},"CategoryAttributeBaseMetadataResponse":{"type":"object","properties":{"attributeDefinitionId":{"type":"string","description":"ID of the attribute definition associated with the attribute value."},"attributeValue":{"type":"string","description":"Value of the attribute associated with the category.\n\n **Note**: This field is used for simple attribute types like `text`, `date`, `integer`, `decimal`, `boolean`, `single-select` and `multi-select`.\n\n **Examples:**\n ```\n \"attributeValue\": \"\"\n \"attributeValue\": \"Some text\"\n \"attributeValue\": \"2025-04-25\"\n \"attributeValue\": \"true\"\n \"attributeValue\": \"653fcdb609bb847693ae69dd\"\n \"attributeValue\": \"6512cb9679d0233a632627d6,6512cb9679d0233a632627d5\"\n```","nullable":true},"categoryId":{"type":"string","description":"ID of the category associated with the attribute value."},"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Values for column attributes associated with the category.","nullable":true},"dictionary":{"type":"array","description":"Values for dictionary attributes associated with the category.","nullable":true,"items":{"type":"string"}},"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"Values for matrix attributes associated with the category.","nullable":true}}},"CategoryAttributeDto":{"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Values for column attributes associated with the category.","nullable":true},"definitionId":{"type":"string","description":"ID of the attribute definition associated with the attribute value."},"dictionary":{"uniqueItems":true,"type":"array","description":"Values for dictionary attributes associated with the category.","nullable":true,"items":{"type":"string"}},"isCopyAttribute":{"type":"boolean","description":"Flag indicating whether the attribute is a copy from another attribute.","nullable":true},"isLocked":{"type":"boolean","description":"Flag indicating whether the attribute is locked.","nullable":true},"isMandatory":{"type":"boolean","description":"Flag indicating whether the attribute is mandatory.","nullable":true},"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"Values for matrix attributes associated with the category.","nullable":true},"select":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"Values for select attributes associated with the category.","nullable":true},"value":{"type":"string","description":"Value of the attribute associated with the category.","nullable":true}}},"CategoryAttributeMetadataResponse":{"type":"object","properties":{"assignedOn":{"type":"string","description":"ID of the category (catalog node) that the Category Level Attribute (CLA) is assigned to.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"attributeDefinitionId":{"type":"string","description":"ID of the attribute definition used as a Category Level Attribute (CLA).\n\n**Example:** `634c26e14cedfd0001775e9e`"},"attributeDefinitionName":{"type":"string","description":"Name of the attribute definition used as a Category Level Attribute (CLA).","nullable":true},"attributeValue":{"type":"string","description":"Value of attribute when used as a Category Level Attribute (CLA) associated with the category (catalog node).\n\n **Note**: This field is used for simple attribute types like `text`, `date`, `integer`, `decimal`, `boolean`, `single-select` and `multi-select`.\n\n **Examples:**\n ```\n \"attributeValue\": \"\"\n \"attributeValue\": \"Some text\"\n \"attributeValue\": \"2025-04-25\"\n \"attributeValue\": \"true\"\n \"attributeValue\": \"653fcdb609bb847693ae69dd\"\n \"attributeValue\": \"6512cb9679d0233a632627d6,6512cb9679d0233a632627d5\"\n```","nullable":true},"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Values if column attribute when used as a Category Level Attribute (CLA) associated with the category (catalog node).","nullable":true},"copySetOn":{"type":"string","description":"Used only when propagation* is enabled for the Category Level Attribute (CLA). It contains the ID of the category (catalog node) that the Category Level Attribute (CLA) is assigned to.\n\n* Propagation means that all products in this category (catalog node) and any sub-categories will inherit this attribute and its value.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"dictionary":{"type":"array","description":"Values if dictionary attribute when used as a Category Level Attribute (CLA) associated with the category (catalog node).","nullable":true,"items":{"type":"string"}},"lockedSetOn":{"type":"string","description":"Used only when \"Lock attribute value\"* is enabled for the Category Level Attribute (CLA). It contains the ID of the category (catalog node) that the Category Level Attribute (CLA) is assigned to.\n\n* When activated, the attribute on products in the category must have the same value as the CLA for the products to be valid for synchronization.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"mandatorySetOn":{"type":"string","description":"Used only when \"Make attribute value mandatory\"* is enabled for the Category Level Attribute (CLA). It contains the ID of the category (catalog node) that the Category Level Attribute (CLA) is assigned to.\n\n* When activated, the attribute on products in the category must have a value for the products to be valid for synchronization.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"Values for matrix attribute when used as a Category Level Attribute (CLA) associated with the category (catalog node).","nullable":true},"readOnly":{"type":"boolean","description":"The flag indicates whether the attribute used as a Category Level Attribute (CLA) is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)"}}},"CategoryAttributeRequest":{"type":"object","properties":{"value":{"type":"string","description":"Value to set on the Category Level Attribute (CLA), given as text - for example `Some text`, `2025-04-25` for a\ndate or `true` for a boolean. For single-select and multi-select definitions pass select value IDs instead,\nseparated by commas for multi-select. Leave it out to attach the attribute without a value.","nullable":true}}},"CategoryBasicResponse":{"type":"object","properties":{"assets":{"type":"array","description":"List of catalog or category's asset IDs.\n\n **Example:**\n ```\n   \"assets\": [\n     \"ff5975d7-c629-4a4c-8e11-ec3df61ec9ce\"\n  ]\n```","nullable":true,"items":{"type":"string"}},"description":{"type":"string","description":"Catalog or category's description.","nullable":true},"id":{"type":"string","description":"Catalog or category's ID. This value is randomly generated by PIM on creation of the catalog or category and is unique across all catalogs and categories.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"name":{"type":"string","description":"Catalog or category's name.","nullable":true},"number":{"type":"string","description":"Catalog or category's number.","nullable":true},"parentId":{"type":"string","description":"Category's parent ID.\n\n**Example:** `634c26e14cedfd0001775e9a`","nullable":true},"readOnly":{"type":"boolean","description":"The flag indicates whether the catalog or category is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)","nullable":true},"toBeRemoved":{"type":"boolean","description":"Indicates whether the catalog/category is under an async removal (a delete or archive is in progress).","nullable":true}}},"CategoryColumnAttributeRequest":{"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Value per column, keyed by the column value ID taken from the attribute definition's restriction. Keys that are\nnot columns of the definition are rejected; columns left out stay empty. The `column` key itself must always be\npresent - send an empty object `{}` to attach the attribute with every column left empty.","nullable":true}}},"CategoryFilter":{"type":"object","properties":{"type":{"type":"string","description":"Filter type for category searches.\n\nUse `NUMBER_IN` to send in a list of category (catalog node) numbers, or use `ID_IN` to send in a list of category (catalog node) IDs.","enum":["NUMBER_IN","ID_IN"]},"values":{"type":"array","description":"List of filter values for category searches.\n\nDepending on the `type` property, this should be a list of category (catalog node) numbers, or a list of category (catalog node) IDs.","items":{"type":"string"}}}},"CategoryFilteringRequest":{"type":"object","properties":{"filters":{"type":"array","description":"Specifies a list of attribute definition filters.","nullable":true,"items":{"$ref":"#/components/schemas/CategoryFilter"}},"page":{"minimum":0,"type":"integer","description":"Specifies the page number for pagination. Default value is 0.","format":"int32"},"pageSize":{"maximum":1000,"minimum":1,"type":"integer","description":"Specifies the number of items to return in each page. The value must be between 1 and 1000.","format":"int32"}}},"CategoryFilteringViewsDto":{"required":["type"],"type":"object","properties":{"type":{"type":"string"}},"description":"Type of entity view, such as ASSETS, METADATA or DESCRIPTION\n\n| View type          | View dto                          |\n| ---------          | --------                          |\n| ASSETS             | AssetsFilteringViewsDto           |\n| METADATA           | MetadataFilteringViewsDto         |\n| DESCRIPTION        | DescriptionFilteringViewsDto      |"},"CategoryFullResponse":{"type":"object","properties":{"assets":{"type":"array","description":"List of catalog or category's assets.","nullable":true,"items":{"type":"string"}},"attributes":{"type":"array","description":"List of catalog or category's level attributes (CLA).","nullable":true,"items":{"$ref":"#/components/schemas/CategoryAttributeDto"}},"description":{"type":"string","description":"Catalog or category's description.","nullable":true},"id":{"type":"string","description":"Catalog or category's ID. This value is randomly generated by PIM on creation of the catalog or category (catalog node) and is unique across all catalogs and categories.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"name":{"type":"string","description":"Catalog or category's name.","nullable":true},"number":{"type":"string","description":"Catalog or category's number.","nullable":true},"parentId":{"type":"string","description":"Category's parent ID.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"path":{"type":"string","description":"Catalog or category's path.\n\n **Example**:\n ```\n \"path\": \"/650354cf5450c60cb73f38ac/650354df4bc6e505b4bdc78e\"\n```","nullable":true},"pathIds":{"type":"array","description":"List of catalog or category's path IDs.\n\n **Example**:\n ```\n \"pathIds\": [\n   \"650354cf5450c60cb73f38ac\",\n   \"650354df4bc6e505b4bdc78e\"\n]\n```","nullable":true,"items":{"type":"string"}},"readOnly":{"type":"boolean","description":"The flag indicates whether the catalog or category is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)","nullable":true},"state":{"type":"string","description":"Catalog or category's state.","nullable":true,"enum":["ACTIVE","ARCHIVED"]}}},"CategoryMatrixAttributeRequest":{"type":"object","properties":{"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"Value per cell, keyed first by the column value ID and then by the row value ID, both taken from the attribute\ndefinition's restriction. IDs that do not belong to the definition are rejected; cells left out stay empty. The\n`matrix` key itself must always be present - send an empty object `{}` to attach the attribute with every cell\nleft empty.","nullable":true}}},"CategoryMetadataUpdateRequest":{"type":"object","properties":{"description":{"$ref":"#/components/schemas/PropertyUpdateString"},"name":{"$ref":"#/components/schemas/PropertyUpdateString"},"number":{"title":"Category number value.","type":"string","nullable":true}}},"CategoryProductRequest":{"type":"object","properties":{"productId":{"type":"string","description":"Specifies the product ID for the product to be assigned to the category.\n\n**Example:** `634c26e14cedfd0001775e9f`"}}},"CategoryProductResponse":{"type":"object","properties":{"productId":{"type":"string","description":"ID of product that is assigned to the catalog/category (catalog node).\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"productName":{"type":"string","description":"Name of product that is assigned to the catalog/category (catalog node).","nullable":true}}},"CategoryReferenceRequest":{"required":["categoryIds"],"type":"object","properties":{"categoryIds":{"minItems":1,"uniqueItems":true,"type":"array","description":"The internal IDs of the existing catalog categories to assign the product to. Must be non-empty.","items":{"type":"string"}}}},"CategoryWithChildrenResponse":{"type":"object","properties":{"assets":{"type":"array","description":"List of catalog or category's assets IDs.\n\n**Example**:\n```\n  \"assets\": [\n    \"0a747b67-4062-480f-a438-5ee1370046e2\"\n  ]\n```","nullable":true,"items":{"type":"string"}},"children":{"type":"array","description":"Catalog or category's children.","nullable":true,"items":{"$ref":"#/components/schemas/CategoryWithChildrenResponse"}},"description":{"type":"string","description":"Catalog or category's description.","nullable":true},"id":{"type":"string","description":"Catalog or category's ID.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"name":{"type":"string","description":"Catalog or category's name.","nullable":true},"number":{"type":"string","description":"Catalog or category's number.","nullable":true},"readOnly":{"type":"boolean","description":"The flag indicates whether the catalog or category is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)","nullable":true},"toBeRemoved":{"type":"boolean","description":"Indicates whether the catalog/category is under an async removal (a delete or archive is in progress).","nullable":true}}},"CategoryWithCursorAndViewRequestDto":{"type":"object","properties":{"count":{"maximum":100,"minimum":1,"type":"integer","description":"Specifies the number of products to return in the result set. Used together with a cursor ID to fetch the next batch of results.","format":"int32"},"cursor":{"type":"string","nullable":true},"views":{"type":"array","description":"Specifies the list of entities views\\* to be included in the response.\n\n\\*A **view** is a subset of category data, like `METADATA`, `ASSETS` and `DESCRIPTION`, to be included in the response, if no views are specified in the request, only category IDs will be returned.\n\n**Note**: The `METADATA` view includes these properties in the response:\n```json\n    \"metadata\": {\n        \"name\": {\n          \"value\": {\n            \"en\": \"Category 11\"\n          }\n        },\n        \"number\": \"11\",\n        \"parentId\": \"69cbbb0eddb0f6ae88c55e47\",\n        \"readOnly\": false\n      }\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/DescriptionFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"}]}}}},"CategoryWithCursorAndViewResponse":{"type":"object","properties":{"assets":{"type":"array","description":"List of Category's assets IDs.\n\n**Example**:\n```\n  \"assets\": [\n    \"0a747b67-4062-480f-a438-5ee1370046e2\"\n  ]\n```","nullable":true,"items":{"type":"string"}},"description":{"$ref":"#/components/schemas/MultiLanguageDto"},"id":{"type":"string","description":"Category's ID.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"metadata":{"$ref":"#/components/schemas/CategoryWithCursorViewMetadata"}}},"CategoryWithCursorViewMetadata":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/MultiLanguageDto"},"number":{"type":"string","description":"Catalog or category's number.","nullable":true},"parentId":{"type":"string","description":"Catalog or category's description.","nullable":true},"readOnly":{"type":"boolean","description":"The flag indicates whether the catalog or category is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)","nullable":true}},"nullable":true},"ColumnAttributeDefinitionDto":{"type":"object","properties":{"contextAware":{"type":"boolean","nullable":true},"description":{"type":"string","nullable":true},"externalSource":{"type":"boolean","description":"Specifies whether the origin of the attribute is managed in an external source like an ERP system or managed by a cloud function like an AWS Lambda or Azure Function and hence the attribute should be read-only for the editors in the Bluestone PIM web application UI.\n\n**Note**: The value of the attribute can still be modified via the Management API, for example by an integration or a cloud function triggered by a webhook message from Bluestone PIM.","nullable":true},"groupId":{"type":"string","description":"ID of the attribute group that the attribute definition belongs to.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"internal":{"type":"boolean","description":"Indicates that the attribute is for internal use only within Bluestone PIM, meaning this value is not visible in the Public API (PAPI) for systems downstream of Bluestone PIM; for example, attributes for system configuration, enrichment workflows, or internal categorization.","nullable":true},"name":{"type":"string","description":"Name of the attribute definition.","nullable":true},"number":{"type":"string","description":"Number of the attribute definition.","nullable":true},"restrictions":{"$ref":"#/components/schemas/ColumnRestrictionDto"}}},"ColumnAttributeValueAddRequest":{"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Column attribute values for the product.\n\nA column attribute has a number of pre-defined columns and only one attribute value per column. One can think of it as a table with pre-defined columns but only one row.\n\nExpected input format:\n```json\n\"column\": {\n  \"<column ID>\": \"<column value>\",\n  \"<column ID>\": \"<column value>\",\n  ...\n}\n```\n\n**Example:**\n\nLet us say that I have these columns pre-defined in the column attribute definition:\n\"Column 1\", with ID: 6356b491590801000124ef2d\n\"Column 2\", with ID: 6356b491590801000124ef2e\n\"Column 3\", with ID: 6356b491590801000124ef2f\n\nI would like to store these values (\"A\", \"B\" and \"C\") in the columns:\n\n|                | \"Column 1\" | \"Column 2\" | \"Column 3\" |\n| -------------- | ---------- | ---------- | ---------- |\n| Value (row 1): | \"A\"        | \"B\"        | \"C\"        |\n\nThen that would correspond to this json structure:\n```json\n\"column\": {\n  \"6356b491590801000124ef2d\": \"A\",\n  \"6356b491590801000124ef2e\": \"B\",\n  \"6356b491590801000124ef2f\": \"C\"\n}\n```","nullable":true},"definitionId":{"type":"string","description":"ID of the attribute definition.\n\n**Example:** `634c26e14cedfd0001775e9f`"}}},"ColumnAttributeValueDto":{"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"Column attribute values for the product.\n\nA column attribute have a number of pre-defined columns and only one attribute value per column. One can think of it as a table with pre-defined columns but only one row.\n\nExpected input format:\n```json\n\"column\": {\n  \"<column ID>\": \"<column value>\",\n  \"<column ID>\": \"<column value>\",\n  ...\n}\n```\n\n**Example**:\n\nLet us say that I have these columns pre-defined in the column attribute definition:\n\"Column 1\", with ID: 6356b491590801000124ef2d\n\"Column 2\", with ID: 6356b491590801000124ef2e\n\"Column 3\", with ID: 6356b491590801000124ef2f\n\nI would like to store these values (\"A\", \"B\" and \"C\") in the columns:\n\n|                | \"Column 1\" | \"Column 2\" | \"Column 3\" |\n| -------------- | ---------- | ---------- | ---------- |\n| Value (row 1): | \"A\"        | \"B\"        | \"C\"        |\n\nThen that would correspond to this json structure:\n```json\n\"column\": {\n  \"6356b491590801000124ef2d\": \"A\",\n  \"6356b491590801000124ef2e\": \"B\",\n  \"6356b491590801000124ef2f\": \"C\"\n}\n```","nullable":true}}},"ColumnRestrictionDto":{"type":"object","properties":{"column":{"$ref":"#/components/schemas/ColumnRestrictionsDto"}}},"ColumnRestrictionsDto":{"title":"Allowed values for the column data type; used by the create-column definition endpoint (/definitions/column), not by this simple-attribute endpoint.","type":"object","properties":{"columns":{"maxItems":2147483647,"minItems":1,"type":"array","description":"Column attribute definition restrictions.\n\n**Examples**:\n\nExample for a new column attribute definition with three columns:\n```json\n\"columns\": [\n  { \"value\": \"Column 1\" },\n  { \"value\": \"Column 2\" },\n  { \"value\": \"Column 3\" }\n]\n```\n\nExample for updating an existing column attribute definition (adding a fourth column):\n```json\n\"columns\": [\n  { \"id\": \"67f5579936016948acd8da8f\", \"value\": \"Column 1\" },\n  { \"id\": \"67f5579936016948acd8da90\", \"value\": \"Column 2\" },\n  { \"id\": \"67f5579936016948acd8da91\", \"value\": \"Column 3\" },\n  { \"value\": \"Column 4\" }\n]\n```","nullable":true,"items":{"$ref":"#/components/schemas/IdentifiableValueDto"}}},"nullable":true},"CompoundAttributeDefinitionRequest":{"type":"object","properties":{"contextAware":{"type":"boolean","nullable":true},"description":{"type":"string","nullable":true},"externalSource":{"type":"boolean","description":"Specifies whether the origin of the attribute is managed in an external source like an ERP system or managed by a cloud function like an AWS Lambda or Azure Function and hence the attribute should be read-only for the editors in the Bluestone PIM web application UI.\n\n**Note**: The value of the attribute can still be modified via the Management API, for example by an integration or a cloud function triggered by a webhook message from Bluestone PIM.\n\n**Note**: A `Compound` attribute does not have an editable value since its value is generated dynamically on request, so in the case of `Compound` attributes, this flag only controls whether the editors in Bluestone PIM web application UI are able to add or remove the `Compound` attribute to/from a product.","nullable":true},"format":{"type":"array","description":"Specifies a set of strings that, together with the subattribute values, will be concatenated to form a compound value.\n\n**Example**:\nGiven I have a `Compound` attribute definition with only one subattribute added.\n\nSubattribute value: \"RED\"\n\nFormat contains two strings, the string to use before the value from the subattribute the string to use after the value of the subattribute:\n```json\n \"format\": [\n    \"This is the value of my subattribute: '\",\n    \"', and this is the end of the compound.\"\n  ]\n```\nThis would generate this dynamically generated compound attribute value when requested:\n`This is the value of my subattribute: 'RED', and this is the end of the compound.`","nullable":true,"items":{"type":"string"}},"groupId":{"type":"string","description":"Specifies the group ID to which the attribute definition belongs.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"internal":{"type":"boolean","description":"Indicates that the attribute is for internal use only within Bluestone PIM, meaning this value is not visible in the Public API (PAPI) for systems downstream of Bluestone PIM; for example, attributes for system configuration, enrichment workflows, or internal categorization.","nullable":true},"name":{"type":"string","description":"Specifies the name of the attribute definition.","nullable":true},"number":{"type":"string","description":"Specifies the number of the attribute definition.","nullable":true},"subDefinitions":{"maxItems":64,"minItems":1,"type":"array","description":"Specifies the ordered list of subattribute definitions in format: `id`, `compound`.","items":{"$ref":"#/components/schemas/CompoundAttributeSubDefinitionDto"}}}},"CompoundAttributeDefinitionResponse":{"required":["name"],"type":"object","properties":{"contextAware":{"type":"boolean","nullable":true},"description":{"type":"string","description":"Description of the compound attribute definition.","nullable":true},"externalSource":{"type":"boolean","description":"Specifies whether the origin of the attribute is managed in an external source like an ERP system or managed by a cloud function like an AWS Lambda or Azure Function and hence the attribute should be read-only for the editors in the Bluestone PIM web application UI.\n\n**Note**: The value of the attribute can still be modified via the Management API, for example by an integration or a cloud function triggered by a webhook message from Bluestone PIM.\n\n**Note**: A `Compound` attribute does not have an editable value since its value is generated dynamically on request, so in the case of `Compound` attributes, this flag only controls whether the editors in Bluestone PIM web application UI are able to add or remove the `Compound` attribute to/from a product.","nullable":true},"format":{"type":"array","description":"Specifies a set of strings that, together with the subattribute values, will be concatenated to form a compound value.\n\n**Example**:\nGiven I have a `Compound` attribute definition with only one subattribute added.\n\nSubattribute value: \"RED\"\n\nFormat contains two strings, the string to use before the value from the subattribute the string to use after the value of the subattribute:\n```json\n \"format\": [\n    \"This is the value of my subattribute: '\",\n    \"', and this is the end of the compound.\"\n  ]\n```\nThis would generate this dynamically generated compound attribute value when requested:\n`This is the value of my subattribute: 'RED', and this is the end of the compound.`","nullable":true,"items":{"type":"string"}},"groupId":{"type":"string","description":"The attribute group ID to which the attribute definition belongs.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"id":{"type":"string","description":"Compound attribute ID. This value is randomly generated by PIM and unique across all definitions.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"internal":{"type":"boolean","description":"Indicates that the attribute is for internal use only within Bluestone PIM, meaning this value is not visible in the Public API (PAPI) for systems downstream of Bluestone PIM; for example, attributes for system configuration, enrichment workflows, or internal categorization.","nullable":true},"name":{"minLength":1,"type":"string","description":"The name of the attribute definition.","nullable":true},"number":{"type":"string","description":"Number of the attribute definition.","nullable":true},"readOnly":{"type":"boolean","description":"Specifies that the current user has read-only access to this attribute definition."},"subDefinitions":{"maxItems":64,"minItems":1,"type":"array","description":"Specifies the ordered list of subattribute definitions in format: `id`, `compound`.","items":{"$ref":"#/components/schemas/CompoundAttributeSubDefinitionDto"}},"toBeRemoved":{"type":"boolean","description":"Flag indicating if the attribute is scheduled for removal.","nullable":true}}},"CompoundAttributeSubDefinitionDto":{"type":"object","properties":{"compound":{"type":"boolean","description":"Flag defining if the attribute is a `compound` attribute definition type.","nullable":true},"id":{"type":"string","description":"Attribute definition ID.\n\n**Example:** `634c26e14cedfd0001775e9f`"}}},"ConflictingEntity":{"type":"object","properties":{"entityId":{"title":"Identifier of the related entity causing the conflict","type":"string"},"entityType":{"title":"Type of the related entity causing the conflict","type":"string"}}},"ConnectionDto":{"title":"Related categories.","type":"object","properties":{"quantity":{"type":"number","description":"The quantity value for a related product.\n- In a **two-way relation**, each side of the relation can have its own separate quantity.\n- In a **one-way relation**, the quantity is set only on the related product’s side, since there’s no reverse link.\n\n**Note**: To retrieve quantities of related products, you can use endpoint `GET /products/{id}` to fetch the product, the response will contain information about any related products and their quantities if set.\n\n**Note**: This property is obsolete and should not be used.","nullable":true},"relatedId":{"type":"string","description":"ID of related product.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"relationId":{"type":"string","description":"ID of relation definition.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"reverse":{"type":"boolean","description":"Specifies whether the direction of the relationship between two products should be interpreted in reverse.\n\nWhen `true`, the relation is viewed from the target product back to the source, effectively flipping the usual source → target orientation.\n\nThis is useful for defining inverse or complementary product relationships (e.g., if Product A is an \"accessory of\" Product B, the value `reverse: true` would represent that Product B \"has accessory\" Product A)."}}},"CopyProductRequest":{"required":["name"],"type":"object","properties":{"id":{"type":"string","description":"Specifies the ID of the product to copy.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"name":{"minLength":1,"type":"string","description":"Specifies a new product name."},"number":{"type":"string","description":"Specifies a new product number. This value must be unique across all products in Bluestone PIM. If not specified, the system will use the product ID, which is a unique identifier generated by the system, as the default product number.","nullable":true}}},"CountDto":{"type":"object","properties":{"count":{"type":"integer","format":"int32"}}},"CountableLong":{"type":"object","properties":{"count":{"type":"integer","format":"int64"}}},"CreateCategoryRequest":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":1,"type":"string","description":"Specifies the name of the category (catalog node)."},"number":{"maxLength":1000,"minLength":0,"type":"string","description":"Specifies the number of the category (catalog node). This value must be unique across all catalogs and categories in Bluestone PIM. If not specified, the system will use the category ID, which is a unique identifier generated by the system, as the default category number.","nullable":true},"parentId":{"type":"string","description":"Specifies the ID of the parent category (catalog node) to which this category belongs.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true}}},"CreateSimpleAttributeRequest":{"type":"object","properties":{"definitionId":{"type":"string","description":"Specifies the ID of the attribute definition to be added to the product.\n\n**Note**: Only simple attribute types are supported by this endpoint, not `dictionary`, `column` or `matrix`.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"values":{"type":"array","description":"Specifies value(s) of the attribute for the product.\n\n**Example for a decimal attribute**:\n```json\n  \"values\": [\n    \"1.5\"\n  ]\n```\n**Example for a boolean attribute**:\n```json\n  \"values\": [\n    \"true\"\n  ]\n```\n**Example for a multi-select attribute with two selected options**:\n```json\n  \"values\": [\n    \"660fdaf0e0dad11667037a0d\",\n    \"660fdaf0e0dad11667037a0e\"\n  ]\n```","nullable":true,"items":{"type":"string"}}}},"CursorWithViewsRequestDto":{"type":"object","properties":{"count":{"maximum":100,"minimum":1,"type":"integer","description":"Specifies the number of products to return in the result set. Used together with a cursor ID to fetch the next batch of results.","format":"int32"},"cursor":{"type":"string","nullable":true},"views":{"type":"array","description":"Specifies the list of entities views\\* to be included in the response.\n\n\\*A **view** is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES`, to be included in the response, if no views are specified in the request, only product IDs will be returned.\n\n**Note**: The `METADATA` view includes these properties in the response:\n```json\n      \"metadata\": {\n        \"name\": {\n          \"value\": {\n            \"en\": \"My Product\"\n          }\n        },\n        \"number\": \"my-product\",\n        \"description\": {\n          \"value\": {\n            \"en\": \"A description for my product\"\n          }\n        },\n        \"archived\": false,\n        \"lastUpdate\": 1744386096497,\n        \"createDate\": 1744386039893,\n        \"type\": \"SINGLE\",\n        \"readOnly\": false,\n        \"relatedProductsRelationSortingOrderSource\": \"RELATION_DEFINITION\"\n      }\n```\n**Note**: The `ATTRIBUTES` view takes an optional list of attribute definition IDs to include, if omitted all attribute definitions will be included in the response.\n\n**Example:**\n```json\n\"views\": [\n  {\n    \"type\": \"ASSETS\"\n  },\n  {\n    \"type\": \"ATTRIBUTES\",\n    \"definitionIds\": [\n      \"664cc90da825236207yt01a7\"\n    ]\n  }\n]\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/AttributesFilteringViewsDto"},{"$ref":"#/components/schemas/BundlesFilteringViewsDto"},{"$ref":"#/components/schemas/CategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/GroupsFilteringViewsDto"},{"$ref":"#/components/schemas/LabelsFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedCategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedProductsFilteringViewsDto"},{"$ref":"#/components/schemas/VariantsFilteringViewsDto"}]}}}},"DeductDictionaryValueRequest":{"required":["attributeDefinitionId","dictionaryValueIds","productIds"],"type":"object","properties":{"attributeDefinitionId":{"$ref":"#/components/schemas/ObjectId"},"dictionaryValueIds":{"title":"Attribute definition value ids that to deduct.","maxItems":100,"minItems":1,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}},"productIds":{"title":"Product IDs that will be affected.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}}}},"DeductSelectValuesFromProductsAttributeRequest":{"title":"Request model for deducting select/multiselect values from products with assigned attribute definition.","required":["attributeDefinitionId","productIds","selectValueIds"],"type":"object","properties":{"attributeDefinitionId":{"$ref":"#/components/schemas/ObjectId"},"productIds":{"title":"Product ids with assigned select/multiselect attribute definition.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}},"selectValueIds":{"title":"Select/multiselect value ids to be deducted.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}}}},"DeleteProductsAttributesBulkRequest":{"required":["productIds"],"type":"object","properties":{"attributeDefinitionId":{"type":"string","description":"Specifies the ID of the attribute definition to be deleted from products.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"productIds":{"minItems":1,"uniqueItems":true,"type":"array","description":"Specifies product IDs to remove the attribute from, enabling targeted deletion of a specified attribute from multiple products.","items":{"type":"string"}}}},"DescriptionFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/CategoryFilteringViewsDto"}]},"DictionaryAttributeCreateRequest":{"required":["value"],"type":"object","properties":{"metadata":{"maxLength":100,"minLength":0,"type":"string","description":"Specifies the new metadata for the dictionary attribute value.","nullable":true},"number":{"maxLength":100,"minLength":0,"type":"string","description":"Specifies the new number of the dictionary attribute value. This value must be unique within the dictionary attribute definition. If not specified, the system will use the dictionary attribute value ID, which is a unique identifier generated by the system, as the default dictionary attribute value number.","nullable":true},"value":{"minLength":1,"type":"string","description":"Specifies the new value for the dictionary attribute value (sometimes referred to as a dictionary attribute option)."}}},"DictionaryAttributeDefinitionCreateRequest":{"type":"object","properties":{"contextAware":{"type":"boolean","description":"Indicates whether the attribute is context aware.","nullable":true},"description":{"type":"string","description":"Details of the attribute definition.","nullable":true},"dictionaryMetadataType":{"type":"string","description":"The type of metadata associated with the dictionary attribute.","nullable":true},"externalSource":{"type":"boolean","description":"Specifies whether the origin of the attribute is managed in an external source like an ERP system or managed by\na cloud function like an AWS Lambda or Azure Function and hence the attribute should be read-only for the\neditors in the Bluestone PIM web application UI.\n\n**Note**: The value can still be modified via the Management API, for example by an integration or a cloud\nfunction triggered by a webhook message from Bluestone PIM.","nullable":true},"groupId":{"type":"string","description":"The internal ID of the attribute group that the attribute definition belongs to.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"internal":{"type":"boolean","description":"Indicates that the attribute is for internal use only within Bluestone PIM, meaning this value is not visible in\nthe Public API (PAPI) for systems downstream of Bluestone PIM; for example, attributes for system configuration,\nenrichment workflows, or internal categorization.","nullable":true},"name":{"type":"string","description":"Name of the attribute definition.","nullable":true},"number":{"type":"string","description":"Number of the attribute definition. This value must be unique across all attribute definitions in Bluestone PIM.\nIf not specified when creating the attribute definition, the system will use the attribute definition ID, which\nis a unique identifier generated by the system, as the default attribute definition number.","nullable":true},"selectedValuesLimit":{"type":"integer","description":"The maximum number of selected values allowed for this dictionary attribute.","format":"int32","nullable":true}}},"DictionaryAttributeDefinitionDto":{"type":"object","properties":{"dictionaryMetadataType":{"type":"string","description":"The type of metadata associated with the dictionary attribute.","nullable":true},"externalSource":{"type":"boolean","description":"Specifies whether the origin of the attribute is managed in an external source like an ERP system or managed by\na cloud function like an AWS Lambda or Azure Function and hence the attribute should be read-only for the\neditors in the Bluestone PIM web application UI.\n\n**Note**: The value can still be modified via the Management API, for example by an integration or a cloud\nfunction triggered by a webhook message from Bluestone PIM.","nullable":true},"groupId":{"type":"string","description":"The internal ID of the attribute group that the attribute definition belongs to.\n\n**Example:** `634c26e14cedfd0001775e9f`","nullable":true},"internal":{"type":"boolean","description":"Indicates that the attribute is for internal use only within Bluestone PIM, meaning this value is not visible in\nthe Public API (PAPI) for systems downstream of Bluestone PIM; for example, attributes for system configuration,\nenrichment workflows, or internal categorization.","nullable":true},"name":{"type":"string","description":"Name of the attribute definition.","nullable":true},"number":{"type":"string","description":"Number of the attribute definition. This value must be unique across all attribute definitions in Bluestone PIM.\nIf not specified when creating the attribute definition, the system will use the attribute definition ID, which\nis a unique identifier generated by the system, as the default attribute definition number.","nullable":true},"selectedValuesLimit":{"type":"integer","description":"The maximum number of selected values allowed for this dictionary attribute.","format":"int32","nullable":true}}},"DictionaryAttributeDefinitionUpdate":{"type":"object","properties":{"dictionaryValuesMetadataType":{"$ref":"#/components/schemas/PropertyUpdateString"},"selectedValuesLimit":{"$ref":"#/components/schemas/PropertyUpdateInteger"}}},"DictionaryAttributeFilterDto":{"type":"object","properties":{"type":{"type":"string","description":"Filter type values based on the selected filter type, either a list of dictionary attribute value IDs or a list\nof dictionary attribute value numbers.","enum":["ID_IN","NUMBER_IN"]},"values":{"maxItems":2147483647,"minItems":1,"type":"array","description":"Filter type for dictionary attribute values. Either `ID_IN` or `NUMBER_IN`.","items":{"type":"string"}}}},"DictionaryAttributeFilteringRequestDto":{"type":"object","properties":{"filters":{"type":"array","description":"Specifies a list of dictionary attribute value filters. This helps in optionally applying multiple filters to\nnarrow down search results when a dictionary have many values.","nullable":true,"items":{"$ref":"#/components/schemas/DictionaryAttributeFilterDto"}},"page":{"minimum":0,"type":"integer","description":"Specifies the number of items to return in each page. The value must be between 1 and 1000.","format":"int32"},"pageSize":{"maximum":1000,"minimum":1,"type":"integer","description":"Specifies the page number for pagination. Default value is 0.","format":"int32"}}},"DictionaryAttributeResponse":{"type":"object","properties":{"createdDate":{"type":"integer","description":"Timestamp of date and time when the dictionary value was first created in Bluestone PIM. This value is displayed\nin Unix timestamp format in milliseconds.\n\n**Example:** `1669087072424`","format":"int64","nullable":true},"definitionId":{"type":"string","description":"The internal ID of the dictionary attribute definition that this dictionary attribute value belongs to.\n\n**Example:** `634c26e14cedfd0001775e9f`"},"id":{"type":"string","description":"The internal ID of the dictionary attribute value."},"lastUpdate":{"type":"integer","description":"Timestamp of date and time when the dictionary value was last updated. This value is displayed in Unix timestamp\nformat in milliseconds.\n\n**Example:** `1669087072424`","format":"int64","nullable":true},"metadata":{"type":"string","description":"Dictionary metadata (e.g. color in hex).","nullable":true},"number":{"type":"string","description":"Number of the dictionary attribute value. This value must be unique across all dictionary attribute values\nwithin the same dictionary attribute definition. If not specified when creating the dictionary attribute value,\nthe system will use the dictionary attribute value ID, which is a unique identifier generated by the system, as\nthe default dictionary attribute value number.","nullable":true},"toBeRemoved":{"type":"boolean","description":"Indicates whether the attribute value is scheduled for removal.","nullable":true},"value":{"$ref":"#/components/schemas/MultiLanguageDto"}}},"DictionaryAttributeUpdateRequest":{"type":"object","properties":{"metadata":{"$ref":"#/components/schemas/PropertyUpdateString"},"number":{"$ref":"#/components/schemas/PropertyUpdateString"},"value":{"$ref":"#/components/schemas/PropertyUpdateString"}}},"DictionaryAttributeValueAddRequest":{"type":"object","properties":{"definitionId":{"type":"string","description":"Specifies the internal ID of the dictionary attribute definition to be added to the product."}}},"DictionaryValueFilterDto":{"type":"object","properties":{"type":{"type":"string","description":"Filter type for dictionary attribute values for parent or child dictionaries. Either `PARENT_VALUE_ID_IN` or\n`CHILD_VALUE_ID_IN`.","enum":["PARENT_VALUE_ID_IN","CHILD_VALUE_ID_IN"]},"valueIds":{"maxItems":100,"minItems":1,"type":"array","description":"Filter type values based on the selected filter type, either a list of parent dictionary attribute value IDs or\na list of child dictionary attribute value IDs.","items":{"type":"string"}}}},"DictionaryValueFilterResponse":{"type":"object","properties":{"childValueId":{"type":"string","description":"The internal ID of the child dictionary value (sometimes referred to as a dictionary attribute option).","nullable":true},"parentValueId":{"type":"string","description":"The internal ID of the parent dictionary value (sometimes referred to as a dictionary attribute option)."}}},"DictionaryValueFilteringRequest":{"type":"object","properties":{"filters":{"type":"array","description":"The `filters` property allows you to retrieve the valid values/options for **either** a parent dictionary\nor a child dictionary, depending on your current use case. This is relevant when working with\n**filtered dictionaries**, where a child dictionary's values are dependent on selections made in a parent dictionary.\n\n**Note**: The `id` property should be the ID of the child dictionary attribute definition.\n\nThe `filters` object has two required sub-properties:\n\n- `type`: Indicates whether you are filtering by a **parent value/option** or a **child value/option**.\n  - Allowed values:\n    - `\"PARENT_VALUE_ID_IN\"` – Use this when you have selected one or more values/options in the **parent dictionary**,\n      and want to fetch the **valid child values/options**.\n    - `\"CHILD_VALUE_ID_IN\"` – Use this when you have one or more values/options in the **child dictionary**,\n      and want to fetch the **corresponding parent values/options**.\n- `valueIds`: An array of selected value/option IDs, depending on the `type`.\n  - If `type` is `\"PARENT_VALUE_ID_IN\"`, this should be an array of parent dictionary value IDs.\n  - If `type` is `\"CHILD_VALUE_ID_IN\"`, this should be an array of child dictionary value IDs.\n\n### Example Use Cases\n\n1. **Filtering Child Values by Parent Selection**\n   Use this when you're working with a child dictionary and want to display only the values that match\n   one or more selected values in the parent dictionary.\n\n```json\n\"filters\": [\n  {\n    \"type\": \"PARENT_VALUE_ID_IN\",\n    \"valueIds\": [\n      \"{parent_val_1_id}\",\n      \"{parent_val_3_id}\"\n    ]\n  }\n]\n```\n\nThe response will include the subset of value IDs in the child dictionary that are allowed when\n`parent_val_1` and `parent_val_3` are selected.\n\n2. **Filtering Parent Values by Child Selection**\n   Use this when you're in the context of the child dictionary and want to determine which parent\n   values are linked to one or more selected child values.\n\n```json\n\"filters\": [\n  {\n    \"type\": \"CHILD_VALUE_ID_IN\",\n    \"valueIds\": [\n      \"{child_val_3_id}\",\n      \"{child_val_7_id}\"\n    ]\n  }\n]\n```\n\nThe response will include the parent dictionary value IDs that are associated with the selected\nchild values `child_val_3` and `child_val_7`.","items":{"$ref":"#/components/schemas/DictionaryValueFilterDto"}},"page":{"minimum":0,"type":"integer","description":"Specifies the number of items to return in each page. The value must be between 1 and 100.","format":"int32"},"pageSize":{"maximum":100,"minimum":1,"type":"integer","description":"Specifies the page number for pagination. Default value is 0.","format":"int32"}}},"DuplicatedSelectValue":{"type":"object","properties":{"values":{"type":"array","description":"A list of duplicated select attribute values (sometimes referred to as select attribute options).","items":{"$ref":"#/components/schemas/SelectValueIdDto"}}},"nullable":true},"ErrorDetails":{"type":"object","properties":{"entityId":{"title":"Identifier of the entity related to the error.","type":"string"},"entityType":{"title":"Type of the entity related to the error.","type":"string"},"field":{"title":"Error related field.","type":"string"},"message":{"title":"Error message.","type":"string"},"rejectedValue":{"title":"Invalid value causing error.","type":"string"}}},"ErrorResponse":{"type":"object","properties":{"conflictingEntities":{"title":"Additional entity id list related to error","type":"array","items":{"$ref":"#/components/schemas/ConflictingEntity"}},"error":{"title":"General error description.","type":"string"},"errorDetails":{"title":"List of errors details.","type":"array","items":{"$ref":"#/components/schemas/ErrorDetails"}},"quotaLimitExceededDetails":{"title":"Additional details related to quota limit exceeded errors","type":"array","items":{"$ref":"#/components/schemas/LimitExceededDetails"}},"requestId":{"title":"Request ID used for logging.","type":"string"},"status":{"title":"Error status code.","type":"integer","format":"int32"},"timestamp":{"title":"Error timestamp.","type":"integer","format":"int64"}}},"FilteringViewsDto":{"required":["type"],"type":"object","properties":{"type":{"type":"string"}},"description":"Type of entity view, such as ASSETS, ATTRIBUTES, METADATA, CATEGORIES, BUNDLES, LABELS, VARIANTS, RELATED_PRODUCTS,\nor RELATED_CATEGORIES.\n\n<table>\n  <tr>\n    <th>View type</th>\n    <th>View dto</th>\n  </tr>\n  <tr>\n    <td>ASSETS</td>\n    <td>AssetsFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>ATTRIBUTES</td>\n    <td>AttributesFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>METADATA</td>\n    <td>MetadataFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>CATEGORIES</td>\n    <td>CategoriesFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>BUNDLES</td>\n    <td>BundlesFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>LABELS</td>\n    <td>LabelsFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>VARIANTS</td>\n    <td>VariantsFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>GROUPS</td>\n    <td>GroupsFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>RELATED_PRODUCTS</td>\n    <td>RelatedProductsFilteringViewsDto</td>\n  </tr>\n  <tr>\n    <td>RELATED_CATEGORIES</td>\n    <td>RelatedCategoriesFilteringViewsDto</td>\n  </tr>\n</table>"},"GroupedAttributeValuesDto":{"type":"object","properties":{"attributes":{"type":"array","description":"List of attributes within the specified attribute group.","nullable":true,"items":{"$ref":"#/components/schemas/AttributeValueFull"}},"groupId":{"type":"string","description":"The internal ID of the attribute group that the listed attributes belongs to."}}},"GroupsFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]},"IdentifiableValueDto":{"title":"Matrix row values.","type":"object","properties":{"id":{"type":"string","description":"The internal ID of the column or row. An identifier randomly generated by PIM (so you must not include any `id`\nproperty when creating columns or rows). ID is unique across all columns and rows.\n\n**Example**: `652d80e4bd32755ca11da69b`","nullable":true},"value":{"type":"string","description":"Name of the column or row.","nullable":true}}},"JobStatusResponse":{"type":"object","properties":{"count":{"type":"integer","description":"Count of items processed in the job.","format":"int64"},"errorMessage":{"type":"string","description":"Error message returned if the job fails."},"status":{"type":"string","description":"Status of the job.\n\n**Examples**:\n- `\"WAITING\"`\n- `\"COMPLETED\"`"}}},"LabelReferenceRequest":{"type":"object","properties":{"labelIds":{"title":"IDs of existing product labels to add to the product. At least one is required.","maxItems":2147483647,"minItems":1,"type":"array","items":{"title":"IDs of existing product labels to add to the product. At least one is required.","type":"string"}}}},"LabelsFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]},"LimitExceededDetails":{"type":"object","properties":{"entityId":{"title":"ID of the entity that violated the quota","type":"string","nullable":true},"entityType":{"title":"Type of the entity that violated the quota","type":"string","nullable":true},"limit":{"title":"Allowed limit","type":"integer","format":"int32"},"message":{"title":"Detailed quota error message","type":"string"},"quota":{"title":"Unique quota identifier","type":"string"}}},"ListableAttributeDefinitionResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AttributeDefinitionResponse"}}},"description":"A common class resources returning collection of elements."},"ListableAttributeGroupResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AttributeGroupResponse"}}},"description":"A common class resources returning collection of elements."},"ListableAttributeValueAll":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AttributeValueAll"}}},"description":"A common class resources returning collection of elements."},"ListableCategoryAttributeBaseMetadataResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CategoryAttributeBaseMetadataResponse"}}},"description":"A common class resources returning collection of elements."},"ListableCategoryAttributeMetadataResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CategoryAttributeMetadataResponse"}}},"description":"A common class resources returning collection of elements."},"ListableCategoryBasicResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CategoryBasicResponse"}}},"description":"A common class resources returning collection of elements."},"ListableCategoryFullResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CategoryFullResponse"}}},"description":"A common class resources returning collection of elements."},"ListableCategoryProductResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CategoryProductResponse"}}},"description":"A common class resources returning collection of elements."},"ListableCompoundAttributeDefinitionResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CompoundAttributeDefinitionResponse"}}},"description":"A common class resources returning collection of elements."},"ListableDictionaryAttributeResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DictionaryAttributeResponse"}}},"description":"A common class resources returning collection of elements."},"ListableDictionaryValueFilterResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DictionaryValueFilterResponse"}}},"description":"A common class resources returning collection of elements."},"ListableGroupedAttributeValuesDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/GroupedAttributeValuesDto"}}},"description":"A common class resources returning collection of elements."},"ListableLocalCategoryAttributeDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/LocalCategoryAttributeDto"}}},"description":"A common class resources returning collection of elements."},"ListablePolicyDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PolicyDto"}}},"description":"A common class resources returning collection of elements."},"ListableProductConnectionInfoResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductConnectionInfoResponse"}}},"description":"A common class resources returning collection of elements."},"ListableProductConnectionProductResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductConnectionProductResponse"}}},"description":"A common class resources returning collection of elements."},"ListableProductConnectionResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductConnectionResponse"}}},"description":"A common class resources returning collection of elements."},"ListableProductTemplateResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductTemplateResponse"}}},"description":"A common class resources returning collection of elements."},"ListableProductViewDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductViewDto"}}},"description":"A common class resources returning collection of elements."},"ListableProductWithAttributeValuesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductWithAttributeValuesResponse"}}},"description":"A common class resources returning collection of elements."},"ListableRelationResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RelationResponse"}}},"description":"A common class resources returning collection of elements."},"ListableString":{"type":"object","properties":{"data":{"type":"array","items":{"type":"string"}}},"description":"A common class resources returning collection of elements."},"ListableWithCursorCategoryWithCursorAndViewResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CategoryWithCursorAndViewResponse"}},"nextCursor":{"title":"Cursor for next page.","type":"string","nullable":true}},"description":"Returns collection of elements with cursor which can be used for further scan."},"ListableWithCursorProductViewDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductViewDto"}},"nextCursor":{"title":"Cursor for next page.","type":"string","nullable":true}},"description":"Returns collection of elements with cursor which can be used for further scan."},"LocalCategoryAttributeDto":{"type":"object","properties":{"definitionId":{"type":"string"},"dictionaryIds":{"type":"array","nullable":true,"items":{"type":"string"}},"readOnly":{"type":"boolean"},"selectIds":{"type":"array","nullable":true,"items":{"type":"string"}},"value":{"type":"string","nullable":true}}},"MatrixAttributeDefinitionDto":{"type":"object","properties":{"contextAware":{"type":"boolean","nullable":true},"description":{"type":"string","nullable":true},"externalSource":{"type":"boolean","nullable":true},"groupId":{"type":"string","nullable":true},"internal":{"type":"boolean","nullable":true},"name":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"restrictions":{"$ref":"#/components/schemas/MatrixRestrictionDto"}}},"MatrixAttributeValueAddRequest":{"type":"object","properties":{"definitionId":{"title":"Attribute definition ID for given value.","type":"string"},"matrix":{"title":"Attribute values for product.","type":"object","additionalProperties":{"title":"Attribute values for product.","type":"object","additionalProperties":{"title":"Attribute values for product.","type":"string"}},"nullable":true}}},"MatrixAttributeValueDto":{"type":"object","properties":{"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string","description":"Attribute values for product."},"description":"Attribute values for product."},"description":"Attribute values for product.","nullable":true}}},"MatrixRestrictionDto":{"type":"object","properties":{"matrix":{"$ref":"#/components/schemas/MatrixRestrictionsDto"}}},"MatrixRestrictionsDto":{"title":"Allowed values for the matrix data type; used by the create-matrix definition endpoint (/definitions/matrix), not by this simple-attribute endpoint.","type":"object","properties":{"columns":{"title":"Matrix column values.","maxItems":2147483647,"minItems":1,"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/IdentifiableValueDto"}},"rows":{"title":"Matrix row values.","maxItems":2147483647,"minItems":1,"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/IdentifiableValueDto"}}},"nullable":true},"MetadataFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"},{"$ref":"#/components/schemas/CategoryFilteringViewsDto"}]},"ModifyLabelInProductsRequestDto":{"required":["labelId"],"type":"object","properties":{"labelId":{"title":"Identifier randomly generated by PIM. ID is unique across all labels.","minLength":1,"type":"string"},"productIds":{"title":"Set of identifiers randomly generated by PIM. IDs are unique across all products.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"title":"Set of identifiers randomly generated by PIM. IDs are unique across all products.","type":"string"}}}},"MoveCategoryRequest":{"type":"object","properties":{"parentId":{"title":"Id of new parent category.","type":"string"}}},"MultiLanguageDto":{"title":"Product's description.","type":"object","properties":{"value":{"type":"object","additionalProperties":{"type":"string"},"description":"Map of multi language values.","nullable":true}},"nullable":true},"MultiLanguageListDto":{"title":"Context aware dictionary attribute value for product.","type":"object","properties":{"value":{"title":"Map of multi language values.","type":"object","additionalProperties":{"title":"Map of multi language values.","type":"array","items":{"title":"Map of multi language values.","type":"string"}},"nullable":true}},"nullable":true},"ObjectId":{"type":"string"},"PimVersion":{"type":"object","properties":{"version":{"title":"Pim service version.","type":"string","nullable":true}}},"PolicyDto":{"type":"object","properties":{"entityId":{"title":"An identifier randomly generated by PIM.","type":"string"},"policyId":{"title":"An identifier randomly generated by PIM. ID is unique across all policies.","type":"string"},"readOnly":{"title":"Whether the policy is read only or not.","type":"boolean"}}},"PolicyRequest":{"required":["readOnly"],"type":"object","properties":{"policyId":{"title":"An identifier randomly generated by PIM. ID is unique across all policies.","type":"string"},"readOnly":{"title":"Read only flag.","type":"boolean"}}},"ProductAll":{"type":"object","properties":{"archived":{"title":"Is product in archive state.","type":"boolean","nullable":true},"assets":{"title":"Assigned to product asset ids.","type":"array","nullable":true,"items":{"title":"Assigned to product asset ids.","type":"string"}},"attributes":{"title":"Product's attributes.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/AttributeValueFull"}},"categories":{"title":"Associated with product category ids.","type":"array","nullable":true,"items":{"title":"Associated with product category ids.","type":"string"}},"createDate":{"title":"The timestamp of product creation.","type":"integer","format":"int64","nullable":true},"description":{"title":"Product's description.","type":"string","nullable":true},"groupParentId":{"title":"Parent of variant group product.","type":"string","nullable":true},"id":{"title":"An identifier randomly generated by PIM. ID is unique across all products.","type":"string","nullable":true},"labels":{"title":"Associated with product label ids.","type":"array","nullable":true,"items":{"title":"Associated with product label ids.","type":"string"}},"lastUpdate":{"title":"The timestamp of last product update operation.","type":"integer","format":"int64","nullable":true},"name":{"title":"Product's name.","type":"string","nullable":true},"number":{"title":"Product's number.","type":"string","nullable":true},"productBundles":{"title":"Bundle complementary products.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ProductBundleDto"}},"productGroups":{"title":"Associated with product variant groups.","type":"array","nullable":true,"items":{"title":"Associated with product variant groups.","type":"string"}},"productVariants":{"title":"Associated with product variants.","type":"array","nullable":true,"items":{"title":"Associated with product variants.","type":"string"}},"quantity":{"title":"A value specifying quantity associated with connection.","type":"number","nullable":true},"readOnly":{"title":"Is the product has read only access for current user.","type":"boolean","nullable":true},"relatedCategories":{"title":"Categories related with this product.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ConnectionDto"}},"relatedProducts":{"title":"Products related with this product.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ConnectionDto"}},"relatedProductsRelationSortingOrderSource":{"title":"Selected sorting order source for related product relations.","type":"string","nullable":true,"enum":["RELATION_DEFINITION","PRODUCT"]},"toBeRemoved":{"title":"Flag set while the product is being archived by the background job.","type":"boolean","nullable":true},"type":{"title":"Product type.","type":"string","nullable":true,"enum":["SINGLE","BUNDLE","GROUP","VARIANT","FAMILY"]},"variantParentId":{"title":"Variant of parent product.","type":"string","nullable":true}}},"ProductArchiveStateRequest":{"type":"object","properties":{"ids":{"title":"The internal IDs of the products to archive; 1 to 100 IDs.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"title":"The internal IDs of the products to archive; 1 to 100 IDs.","type":"string"}}}},"ProductAttributeValue":{"title":"A value specifying the list of product attributes.","required":["definitionId"],"type":"object","properties":{"column":{"title":"Column attribute values for product.","type":"object","additionalProperties":{"title":"Column attribute values for product.","type":"string"},"nullable":true},"copy":{"title":"Variant copy flag.","type":"boolean","nullable":true},"definingAttributes":{"title":"Variant defining attributes flag.","type":"boolean","nullable":true},"definitionId":{"title":"Attribute definition ID for given value.","minLength":1,"type":"string"},"dictionary":{"title":"Dictionary attribute values for product.","type":"array","nullable":true,"items":{"title":"Dictionary attribute values for product.","type":"string"}},"locked":{"title":"Variant lock flag.","type":"boolean","nullable":true},"mandatory":{"title":"Variant mandatory flag.","type":"boolean","nullable":true},"matrix":{"title":"Matrix attribute values for product.","type":"object","additionalProperties":{"title":"Matrix attribute values for product.","type":"object","additionalProperties":{"title":"Matrix attribute values for product.","type":"string"}},"nullable":true},"values":{"title":"Attribute values for product.","type":"array","nullable":true,"items":{"title":"Attribute values for product.","type":"string"}}}},"ProductAttributeViewDto":{"title":"Product's Attributes.","type":"object","properties":{"column":{"title":"Column attribute values for product.","type":"object","additionalProperties":{"$ref":"#/components/schemas/MultiLanguageDto"},"nullable":true},"contextAwareDictionary":{"$ref":"#/components/schemas/MultiLanguageListDto"},"contextAwareSelect":{"$ref":"#/components/schemas/MultiLanguageListDto"},"copy":{"title":"Variant copy flag.","type":"boolean","nullable":true},"definingAttributes":{"title":"Variant defining attributes flag.","type":"boolean","nullable":true},"definitionId":{"title":"An identifier randomly generated by PIM. ID is unique across all attribute definitions.","type":"string"},"dictionary":{"title":"Dictionary attribute values for product.","type":"array","nullable":true,"deprecated":true,"items":{"title":"Dictionary attribute values for product.","type":"string","deprecated":true}},"locked":{"title":"Variant lock flag.","type":"boolean","nullable":true},"mandatory":{"title":"Variant mandatory flag.","type":"boolean","nullable":true},"matrix":{"title":"Matrix attribute values for product.","type":"object","additionalProperties":{"title":"Matrix attribute values for product.","type":"object","additionalProperties":{"$ref":"#/components/schemas/MultiLanguageDto"}},"nullable":true},"readOnly":{"title":"Has attribute value read only access for current user.","type":"boolean","nullable":true},"select":{"title":"Select attribute values for product.","type":"array","nullable":true,"deprecated":true,"items":{"title":"Select attribute values for product.","type":"string","deprecated":true}},"value":{"$ref":"#/components/schemas/MultiLanguageDto"}}},"ProductBundleDto":{"title":"Product's Bundles.","type":"object","properties":{"productId":{"title":"An identifier randomly generated by PIM. ID is unique across all products.","type":"string"},"quantity":{"title":"Quantity associated with product bundle.","type":"number","nullable":true}}},"ProductBundleRequest":{"type":"object","properties":{"quantity":{"title":"Quantity associated with product bundle.","minimum":1,"type":"number"}}},"ProductConnectionInfoResponse":{"type":"object","properties":{"directions":{"title":"Directions used for given relation definition ID.","type":"array","items":{"title":"Directions used for given relation definition ID.","type":"string","enum":["DIRECT","REVERSE"]}},"id":{"title":"Relation definition ID.","type":"string"}}},"ProductConnectionMetadata":{"title":"Response with basic information about product in relation.","type":"object","properties":{"archived":{"title":"A value specifying if product is in archive state.","type":"boolean","nullable":true},"createDate":{"title":"A value specifying the timestamp of product creation.","type":"integer","format":"int64","nullable":true},"description":{"title":"A value specifying the product description.","type":"string","nullable":true},"id":{"title":"A value specifying the product id.","type":"string","nullable":true},"lastUpdate":{"title":"A value specifying the timestamp of last product update operation.","type":"integer","format":"int64","nullable":true},"name":{"title":"A value specifying the product name.","type":"string","nullable":true},"number":{"title":"A value specifying the product number.","type":"string","nullable":true},"quantity":{"title":"A value specifying quantity associated with connection.","type":"number","nullable":true}}},"ProductConnectionProductResponse":{"type":"object","properties":{"productId":{"type":"string"}}},"ProductConnectionRequest":{"type":"object","properties":{"quantity":{"title":"Optional quantity to associate with the relation.","type":"number","nullable":true},"relationId":{"title":"The internal ID of the relation definition (the relation type) to create the relation under.","type":"string"},"to":{"title":"The internal ID of the product to relate the source product to.","type":"string"}}},"ProductConnectionResponse":{"type":"object","properties":{"leftProduct":{"$ref":"#/components/schemas/ProductConnectionMetadata"},"relation":{"$ref":"#/components/schemas/RelationResponse"},"rightProduct":{"$ref":"#/components/schemas/ProductConnectionMetadata"}}},"ProductConnectionUpdateRequest":{"type":"object","properties":{"quantity":{"title":"Quantity associated with connection.","type":"number"}}},"ProductConnectionsRemovalRequest":{"type":"object","properties":{"to":{"title":"Id of related product.","type":"string"}}},"ProductConnectionsRequest":{"type":"object","properties":{"quantity":{"title":"Quantity associated with connection.","type":"number","nullable":true},"to":{"title":"Id of related product.","type":"string"}}},"ProductCreateRequest":{"required":["name"],"type":"object","properties":{"assets":{"title":"A value specifying the list of product assets id.","type":"array","nullable":true,"items":{"title":"A value specifying the list of product assets id.","type":"string"}},"attributes":{"title":"A value specifying the list of product attributes.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ProductAttributeValue"}},"categories":{"title":"A value specifying the list of product categories id.","type":"array","nullable":true,"items":{"title":"A value specifying the list of product categories id.","type":"string"}},"description":{"title":"A value specifying the product description.","type":"string","nullable":true},"labels":{"title":"A value specifying the list of product labels id.","type":"array","nullable":true,"items":{"title":"A value specifying the list of product labels id.","type":"string"}},"name":{"title":"A value specifying the product name.","type":"string"},"number":{"title":"The product number. If omitted, the generated product ID is used as the number.","type":"string","nullable":true},"relatedProductsRelationSortingOrderSource":{"title":"A value specifying selected sorting order source for related product relations.","type":"string","nullable":true,"enum":["RELATION_DEFINITION","PRODUCT"]},"type":{"title":"The product type. GROUP creates a product that holds variants; when GROUP is used, variant-defining attributes must be configured to propagate to variants (copy = true) or creation fails.","type":"string","nullable":true,"enum":["SINGLE","BUNDLE","GROUP","FAMILY"]}}},"ProductIdListViewsRequestDto":{"required":["ids"],"type":"object","properties":{"ids":{"title":"Product IDs that will be returned.","maxItems":100,"minItems":0,"type":"array","items":{"title":"Product IDs that will be returned.","type":"string"}},"views":{"type":"array","description":"Specifies the list of entity views\\* to be included in the response.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES`, to be included\nin the response, if no views are specified in the request, only product IDs will be returned.\n\n**Example:**\n```\n\"views\": [\n  {\n    \"type\": \"ASSETS\"\n  },\n  {\n    \"type\": \"ATTRIBUTES\",\n    \"definitionIds\": [\n      \"664cc90da825236207yt01a7\"\n    ]\n  }\n]\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/AttributesFilteringViewsDto"},{"$ref":"#/components/schemas/BundlesFilteringViewsDto"},{"$ref":"#/components/schemas/CategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/GroupsFilteringViewsDto"},{"$ref":"#/components/schemas/LabelsFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedCategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedProductsFilteringViewsDto"},{"$ref":"#/components/schemas/VariantsFilteringViewsDto"}]}}}},"ProductIdViewsRequestDto":{"type":"object","properties":{"views":{"type":"array","description":"Specifies the list of entity views\\* to be included in the response.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES`, to be included\nin the response, if no views are specified in the request, only product IDs will be returned.\n\n**Example:**\n```\n\"views\": [\n  {\n    \"type\": \"ASSETS\"\n  },\n  {\n    \"type\": \"ATTRIBUTES\",\n    \"definitionIds\": [\n      \"664cc90da825236207yt01a7\"\n    ]\n  }\n]\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/AttributesFilteringViewsDto"},{"$ref":"#/components/schemas/BundlesFilteringViewsDto"},{"$ref":"#/components/schemas/CategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/GroupsFilteringViewsDto"},{"$ref":"#/components/schemas/LabelsFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedCategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedProductsFilteringViewsDto"},{"$ref":"#/components/schemas/VariantsFilteringViewsDto"}]}}}},"ProductMetadataUpdateRequest":{"type":"object","properties":{"description":{"$ref":"#/components/schemas/PropertyUpdateString"},"name":{"$ref":"#/components/schemas/PropertyUpdateString"},"number":{"title":"New product number. Omit to leave the current number unchanged.","type":"string","nullable":true}}},"ProductMetadataViewDto":{"title":"Product's metadata.","type":"object","properties":{"archived":{"title":"Flag defines if product is in archive state.","type":"boolean","nullable":true},"createDate":{"title":"The timestamp of product creation.","type":"integer","format":"int64","nullable":true},"description":{"$ref":"#/components/schemas/MultiLanguageDto"},"groupParentId":{"title":"Variant of parent product.","type":"string","nullable":true},"lastUpdate":{"title":"The timestamp of last product update operation.","type":"integer","format":"int64","nullable":true},"name":{"$ref":"#/components/schemas/MultiLanguageDto"},"number":{"title":"Product's number.","type":"string","nullable":true},"readOnly":{"title":"Flag defines if the product has read only access for current user.","type":"boolean","nullable":true},"relatedProductsRelationSortingOrderSource":{"title":"Selected sorting order source for related product relations.","type":"string","nullable":true,"enum":["RELATION_DEFINITION","PRODUCT"]},"toBeRemoved":{"title":"Flag set while the product is being archived by the background job.","type":"boolean","nullable":true},"type":{"title":"Product's type.","type":"string","nullable":true,"enum":["SINGLE","BUNDLE","GROUP","VARIANT","FAMILY"]},"variantParentId":{"title":"Variant of parent product.","type":"string","nullable":true}},"nullable":true},"ProductNumberListViewsRequestDto":{"type":"object","properties":{"numbers":{"title":"Product numbers that will be returned.","maxItems":100,"minItems":1,"type":"array","items":{"title":"Product numbers that will be returned.","type":"string"}},"page":{"title":"A number sequence representing a block of items to return as a result set.","minimum":0,"type":"integer","format":"int32"},"pageSize":{"title":"Size of a block of items to return. It corresponds with the page parameter.","maximum":100,"minimum":1,"type":"integer","format":"int32"},"views":{"type":"array","description":"Specifies the list of entity views\\* to be included in the response.\n\n\\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES`, to be included\nin the response, if no views are specified in the request, only product IDs will be returned.\n\n**Example:**\n```\n\"views\": [\n  {\n    \"type\": \"ASSETS\"\n  },\n  {\n    \"type\": \"ATTRIBUTES\",\n    \"definitionIds\": [\n      \"664cc90da825236207yt01a7\"\n    ]\n  }\n]\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/AttributesFilteringViewsDto"},{"$ref":"#/components/schemas/BundlesFilteringViewsDto"},{"$ref":"#/components/schemas/CategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/GroupsFilteringViewsDto"},{"$ref":"#/components/schemas/LabelsFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedCategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedProductsFilteringViewsDto"},{"$ref":"#/components/schemas/VariantsFilteringViewsDto"}]}}}},"ProductOverviewDto":{"type":"object","properties":{"assets":{"$ref":"#/components/schemas/CountDto"},"attributes":{"$ref":"#/components/schemas/CountDto"},"categories":{"$ref":"#/components/schemas/CountDto"},"productBundles":{"$ref":"#/components/schemas/CountDto"},"productVariants":{"$ref":"#/components/schemas/CountDto"},"relatedProducts":{"$ref":"#/components/schemas/CountDto"}}},"ProductTemplateRequest":{"required":["name"],"type":"object","properties":{"name":{"title":"Product template name.","minLength":1,"type":"string"}}},"ProductTemplateResponse":{"required":["name"],"type":"object","properties":{"name":{"title":"Product template name.","minLength":1,"type":"string"},"productId":{"title":"An identifier randomly generated by PIM. ID is unique across all product templates.","type":"string"}}},"ProductValidationIssueDto":{"title":"Detailed list of validation issues.","type":"object","properties":{"categoryId":{"title":"Category ID for given value.","type":"string","nullable":true},"definitionId":{"title":"Attribute definition ID for given value.","type":"string","nullable":true},"message":{"title":"Human readable description of issue.","type":"string","nullable":true},"missingAttributeDefinitionId":{"title":"Missing attribute definition ID for compound attribute.","type":"string","nullable":true},"statusCode":{"title":"Error code of issue.","type":"string","enum":["INVALID_VALUE","MISSING_CATEGORY_ATTRIBUTE","MISSING_CATEGORY_VALUE","INVALID_CATEGORY_CONSTRAINT","MISSING_PRODUCT","MISSING_COMPOUND_ATTRIBUTE","MISSING_VARIANT_ATTRIBUTE","INVALID_VARIANT_VALUE","MISSING_VARIANT_VALUE","DICTIONARY_VALUE_NOT_EXIST_IN_FILTER"]}}},"ProductValidationIssueResponse":{"type":"object","properties":{"id":{"title":"An identifier randomly generated by PIM. ID is unique across all products.","type":"string"},"issues":{"title":"Detailed list of validation issues.","type":"array","items":{"$ref":"#/components/schemas/ProductValidationIssueDto"}},"status":{"title":"General product validation status.","type":"string","enum":["SUCCESSFUL","FAILED"]}}},"ProductValidationRequest":{"type":"object","properties":{"attributes":{"title":"Product's attributes.","type":"array","items":{"$ref":"#/components/schemas/ValidableAttribute"}},"id":{"title":"A value specifying the product id.","type":"string"}}},"ProductVariantAttributeDto":{"type":"object","properties":{"copy":{"title":"Variant copy flag.","type":"boolean","nullable":true},"definingAttributes":{"title":"Variant defining attributes flag.","type":"boolean","nullable":true},"locked":{"title":"Lock flag to determine that attribute is locked/unlocked.","type":"boolean","nullable":true},"mandatory":{"title":"Variant mandatory flag.","type":"boolean","nullable":true}}},"ProductViewDto":{"type":"object","properties":{"assets":{"title":"Associated with product asset ids.","type":"array","nullable":true,"items":{"title":"Associated with product asset ids.","type":"string"}},"attributes":{"title":"Product's Attributes.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ProductAttributeViewDto"}},"categories":{"title":"Associated with product category ids.","type":"array","nullable":true,"items":{"title":"Associated with product category ids.","type":"string"}},"id":{"title":"An identifier randomly generated by PIM. ID is unique across all products.","type":"string","nullable":true},"labels":{"title":"Associated with product label ids.","type":"array","nullable":true,"items":{"title":"Associated with product label ids.","type":"string"}},"metadata":{"$ref":"#/components/schemas/ProductMetadataViewDto"},"productBundles":{"title":"Product's Bundles.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ProductBundleDto"}},"productGroups":{"title":"Associated with product group ids.","type":"array","nullable":true,"items":{"title":"Associated with product group ids.","type":"string"}},"productVariants":{"title":"Associated with product variant ids.","type":"array","nullable":true,"items":{"title":"Associated with product variant ids.","type":"string"}},"relatedCategories":{"title":"Related categories.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ConnectionDto"}},"relatedProducts":{"title":"Related products.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/ConnectionDto"}}}},"ProductViewsByTypeRequest":{"required":["types"],"type":"object","properties":{"count":{"maximum":100,"minimum":1,"type":"integer","description":"The number of products returned.","format":"int32"},"cursor":{"type":"string","description":"The unique string of the cursor.","nullable":true},"types":{"maxItems":2147483647,"minItems":1,"type":"array","description":"Types of products that will be returned.","items":{"type":"string","enum":["SINGLE","BUNDLE","GROUP","VARIANT","FAMILY"]}},"views":{"type":"array","description":"Specifies the list of entity views\\* to be included in the response.\n\n \\*A view is a subset of product data, like `METADATA`, `ATTRIBUTES`, `ASSETS` and `CATEGORIES`, to be included\n in the response, if no views are specified in the request, only product IDs will be returned.\n\n **Example:**\n ```\n \"views\": [\n{\n     \"type\": \"ASSETS\"\n},\n{\n     \"type\": \"ATTRIBUTES\",\n     \"definitionIds\": [\n       \"664cc90da825236207yt01a7\"\n]\n}\n]\n```","nullable":true,"items":{"oneOf":[{"$ref":"#/components/schemas/AssetsFilteringViewsDto"},{"$ref":"#/components/schemas/AttributesFilteringViewsDto"},{"$ref":"#/components/schemas/BundlesFilteringViewsDto"},{"$ref":"#/components/schemas/CategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/GroupsFilteringViewsDto"},{"$ref":"#/components/schemas/LabelsFilteringViewsDto"},{"$ref":"#/components/schemas/MetadataFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedCategoriesFilteringViewsDto"},{"$ref":"#/components/schemas/RelatedProductsFilteringViewsDto"},{"$ref":"#/components/schemas/VariantsFilteringViewsDto"}]}}}},"ProductWithAttributeValuesResponse":{"type":"object","properties":{"attributeValues":{"title":"List of attribute values.","type":"array","nullable":true,"items":{"title":"List of attribute values.","type":"string"}},"productName":{"title":"Product name.","type":"string","nullable":true}}},"PropertyUpdateInteger":{"type":"object","properties":{"value":{"type":"integer","description":"Nullable value for partial update.","format":"int32"}},"nullable":true},"PropertyUpdateString":{"type":"object","properties":{"value":{"type":"string","description":"Nullable value for partial update."}},"nullable":true},"RangeRestrictionsDto":{"title":"Min/max/step range of allowed values. Applies to the scalar data types: integer, decimal, date, time and date_time.","type":"object","properties":{"max":{"title":"Defines maximum allowed value.","type":"string","nullable":true},"min":{"title":"Defines minimum allowed value.","type":"string","nullable":true},"step":{"title":"Defines incremental step between minimum and maximum value.","type":"string","nullable":true}},"nullable":true},"RelatedCategoriesFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]},"RelatedProductsFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]},"RelationDirectionUpdateRequest":{"required":["direction"],"type":"object","properties":{"direction":{"title":"Direction of relation (ONE_WAY or TWO_WAY).","type":"string","description":"Target direction of the relation (`ONE_WAY` or `TWO_WAY`).","enum":["ONE_WAY","TWO_WAY"]}}},"RelationFilter":{"title":"Filters by which relations are searched.","type":"object","properties":{"type":{"title":"Define filter type.","type":"string","enum":["NUMBER_IN","ID_IN"]},"values":{"title":"Define the list of filter values.","type":"array","items":{"title":"Define the list of filter values.","type":"string"}}}},"RelationFilteringRequest":{"type":"object","properties":{"filters":{"title":"Filters by which relations are searched.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/RelationFilter"}},"page":{"title":"A number sequence representing a block of items to return as a result set.","minimum":0,"type":"integer","format":"int32"},"pageSize":{"title":"Size of a block of items to return. It corresponds with the page parameter.","maximum":1000,"minimum":1,"type":"integer","format":"int32"}}},"RelationPartialUpdateRequest":{"type":"object","properties":{"description":{"$ref":"#/components/schemas/PropertyUpdateString"},"name":{"$ref":"#/components/schemas/PropertyUpdateString"},"number":{"maxLength":500,"minLength":1,"type":"string","description":"Number of the relation. Omit to leave the current number unchanged.","nullable":true},"quantityEnabled":{"type":"boolean","description":"Is quantity enabled for the relation. Omit to leave it unchanged.","nullable":true},"reverseName":{"$ref":"#/components/schemas/PropertyUpdateString"}}},"RelationRequest":{"required":["name"],"type":"object","properties":{"description":{"title":"Text to display describing relation.","type":"string","nullable":true},"direction":{"title":"Direction of relation (ONE_WAY or TWO_WAY).","type":"string"},"name":{"title":"Name of the relation.","minLength":1,"type":"string"},"number":{"title":"Number of the relation.","type":"string","nullable":true},"quantityEnabled":{"title":"Is quantity enable for relation.","type":"boolean","nullable":true},"reverseName":{"title":"Reverse name of the relation (required if has two way direction).","type":"string","nullable":true}}},"RelationResponse":{"type":"object","properties":{"description":{"type":"string","description":"Text to display describing relation.","nullable":true},"direction":{"type":"string","description":"Direction of relation (ONE_WAY or TWO_WAY)."},"id":{"type":"string","description":"An identifier randomly generated by PIM. ID is unique across all relation definitions."},"name":{"type":"string","description":"Name of the relation.","nullable":true},"number":{"type":"string","description":"Number of the relation."},"order":{"type":"integer","description":"Order of relation definition.","format":"int32","nullable":true},"quantityEnabled":{"type":"boolean","description":"Is quantity enable for relation.","nullable":true},"readOnly":{"type":"boolean","description":"The flag indicates whether the relation is read-only for the currently logged in user in Bluestone PIM web application based on what policies are applied for the user.\n\n**Note**: This flag is only relevant on calls to the endpoint performed from the Bluestone PIM web application and not for calls done to the Management API (MAPI). The endpoint will always return `readOnly: false` when calling the endpoint via the Management API (MAPI)","nullable":true},"reverseName":{"type":"string","description":"Reverse name of the relation.","nullable":true}}},"RemoveLabelsFromProductRequest":{"required":["labelIds"],"type":"object","properties":{"labelIds":{"title":"IDs of the labels to detach from the product; IDs not currently assigned are ignored. Between 1 and 100.","maxItems":100,"minItems":1,"type":"array","items":{"title":"IDs of the labels to detach from the product; IDs not currently assigned are ignored. Between 1 and 100.","type":"string"}}}},"RenameAttributeGroupRequest":{"type":"object","properties":{"name":{"title":"New name of the attribute group.","type":"string","nullable":true}}},"RestrictionsDto":{"title":"Type-specific constraints on the attribute's values. The applicable sub-object depends on the data type — e.g. select values for the select types, a numeric or date range for scalar types, or a text pattern for the PATTERN type (optional at creation, but if provided it must be non-empty; without it no value can pass validation).","type":"object","properties":{"column":{"$ref":"#/components/schemas/ColumnRestrictionsDto"},"enum":{"$ref":"#/components/schemas/SelectRestrictionsDto"},"matrix":{"$ref":"#/components/schemas/MatrixRestrictionsDto"},"range":{"$ref":"#/components/schemas/RangeRestrictionsDto"},"text":{"$ref":"#/components/schemas/TextRestrictionsDto"}},"nullable":true},"SaveProductsAttributesByIdsRequest":{"required":["attributeDefinitionId"],"type":"object","properties":{"attributeDefinitionId":{"title":"Internal ID of the single attribute definition whose value is being set on the selected products.","type":"string"},"attributeValues":{"title":"New values to set for the attribute on the selected products. Omit or pass an empty list to clear the value.","type":"array","items":{"title":"New values to set for the attribute on the selected products. Omit or pass an empty list to clear the value.","type":"string"}},"productIds":{"title":"Internal IDs of the products to apply the change to; 1 to 100 IDs. The operation fails if any of them does not exist.","maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","items":{"title":"Internal IDs of the products to apply the change to; 1 to 100 IDs. The operation fails if any of them does not exist.","type":"string"}}}},"SaveProductsVlaSettingsByIdsRequest":{"required":["attributeDefinitionId","productIds"],"type":"object","properties":{"attributeDefinitionId":{"type":"string","description":"Internal ID of the single attribute definition whose VLA settings are being set."},"copy":{"type":"boolean","description":"Variant copy flag. Omitted = removed.","nullable":true},"definingAttributes":{"type":"boolean","description":"Variant defining attributes flag. Omitted = removed.","nullable":true},"locked":{"type":"boolean","description":"Lock flag to determine that attribute is locked/unlocked. Omitted = removed.","nullable":true},"mandatory":{"type":"boolean","description":"Variant mandatory flag. Omitted = removed.","nullable":true},"productIds":{"maxItems":100,"minItems":1,"uniqueItems":true,"type":"array","description":"Internal IDs of the products to apply the settings to; 1 to 100 IDs. The operation fails if any of them does not exist.","items":{"type":"string"}}}},"SelectAttributeValueDto":{"title":"The list of allowed select values; must be non-empty for the single_select and multi_select data types.","type":"object","properties":{"metadata":{"title":"Custom metadata for select attribute.","maxLength":500,"minLength":0,"type":"string","nullable":true},"number":{"title":"Number of select attribute.","maxLength":500,"minLength":0,"type":"string","nullable":true},"value":{"title":"Value of select attribute.","type":"string","nullable":true},"valueId":{"title":"Identifier of the select value, unique across all select attribute values. Leave empty when creating a definition — PIM generates it; supply it only to reference an existing value on update.","type":"string","nullable":true}}},"SelectRestrictionsDto":{"title":"Allowed values for the select data types single_select and multi_select.","type":"object","properties":{"type":{"title":"Optional free-form custom type label for the value set (max 100 characters). Stored as-is and does not affect value validation.","maxLength":100,"minLength":0,"type":"string","nullable":true},"values":{"title":"The list of allowed select values; must be non-empty for the single_select and multi_select data types.","type":"array","nullable":true,"items":{"$ref":"#/components/schemas/SelectAttributeValueDto"}}},"nullable":true},"SelectValueIdDto":{"type":"object","properties":{"selectValueId":{"title":"Duplicated select value ID.","type":"string"}}},"SelectValueRequest":{"required":["value"],"type":"object","properties":{"metadata":{"maxLength":500,"minLength":0,"type":"string","nullable":true},"number":{"maxLength":500,"minLength":0,"type":"string","nullable":true},"value":{"minLength":1,"type":"string"}}},"SetCategoryDictionaryAttributeValuesRequest":{"type":"object","properties":{"valueIds":{"type":"array","description":"IDs of the dictionary values to select. This is the complete set to keep - values not listed are unselected\nand an empty list clears the selection. Every ID must be a value of this attribute definition, and the\ndefinition's limit on the number of selected values applies.","nullable":true,"items":{"type":"string"}}}},"SetDictionaryValuesRequest":{"type":"object","properties":{"valueIds":{"title":"List of dictionary value ids.","type":"array","items":{"title":"List of dictionary value ids.","type":"string"}}}},"SetProductAssets":{"type":"object","properties":{"assets":{"title":"Assets ids.","type":"array","items":{"title":"Assets ids.","type":"string"}}}},"SimpleAttributeDefinitionRequest":{"type":"object","properties":{"charset":{"title":"The character set used for the attribute definition. Must be a valid charset name such as UTF-8; the request fails if the charset is not supported.","type":"string","nullable":true},"contentType":{"title":"Content type of the value's text. Allowed values: text/markdown (the default) or text/html; any other value is rejected. Applies only when the dataType is FORMATTED_TEXT; ignored for other data types.","type":"string","nullable":true},"contextAware":{"type":"boolean","nullable":true},"dataType":{"title":"The data type of the attribute definition.","type":"string","nullable":true,"enum":["boolean","integer","decimal","date","time","date_time","location","single_select","multi_select","text","formatted_text","pattern","multiline","column","matrix","dictionary"]},"description":{"type":"string","nullable":true},"externalSource":{"type":"boolean","nullable":true},"groupId":{"type":"string","nullable":true},"internal":{"type":"boolean","nullable":true},"name":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"restrictions":{"$ref":"#/components/schemas/RestrictionsDto"},"unit":{"title":"The unit of measurement for the attribute definition.","type":"string","nullable":true}}},"TextRestrictionsDto":{"title":"Constraints for textual values (max length, whitespace, regex pattern). Applies to text, multiline, formatted_text and pattern data types; for the pattern data type the regex in `pattern` defines the accepted format.","type":"object","properties":{"maxLength":{"title":"Defines the maximum length of text.","type":"integer","format":"int32","nullable":true},"pattern":{"title":"Defines allowed regular expression pattern for values.","type":"string","nullable":true},"whitespaces":{"title":"Defines whether whitespaces are allowed or not.","type":"boolean","nullable":true}},"nullable":true},"UpdateAttributeDto":{"type":"object","properties":{"definitionId":{"title":"Attribute id that we want to upsert.","type":"string"},"dictionaryValueIds":{"title":"Field needed when it is dictionary value. Ids of chosen options.","type":"array","nullable":true,"items":{"title":"Field needed when it is dictionary value. Ids of chosen options.","type":"string"}},"selectValueIds":{"title":"Field needed when it is select value. Ids of chosen options.","type":"array","nullable":true,"items":{"title":"Field needed when it is select value. Ids of chosen options.","type":"string"}},"value":{"title":"Field needed when it is simple value.","type":"string","nullable":true}}},"UpdateAttributeGroupNumberRequest":{"required":["number"],"type":"object","properties":{"number":{"title":"New number of the attribute group.","minLength":1,"type":"string"}}},"UpdateCategoryAttributeRequest":{"type":"object","properties":{"attributeValue":{"$ref":"#/components/schemas/PropertyUpdateString"},"copyAttribute":{"type":"boolean","description":"Propagation: when true, this attribute and its value are inherited by the subcategories of this category and\nby their products. Only the category that switched propagation on can change it.","nullable":true},"locked":{"type":"boolean","description":"Lock attribute value: when true, the attribute on products in the category must keep the CLA value for those\nproducts to be valid for synchronization. Not supported for column, matrix and compound definitions, which\nreject this field.","nullable":true},"mandatory":{"type":"boolean","description":"Make attribute value mandatory: when true, the attribute on products in the category must have a value for\nthose products to be valid for synchronization.","nullable":true}}},"UpdateCategoryColumnAttributeRequest":{"type":"object","properties":{"column":{"type":"object","additionalProperties":{"type":"string"},"description":"New value per column, keyed by the column value ID taken from the attribute definition's restriction. This\nis the complete set to keep - columns left out are cleared.","nullable":true},"copyAttribute":{"type":"boolean","description":"Propagation: when true, this attribute and its value are inherited by the subcategories of this category and\nby their products. Only the category that switched propagation on can change it.","nullable":true},"locked":{"type":"boolean","description":"Not supported for column definitions - sending this field fails the request.","nullable":true},"mandatory":{"type":"boolean","description":"Make attribute value mandatory: when true, the attribute on products in the category must have a value for\nthose products to be valid for synchronization.","nullable":true}}},"UpdateCategoryMatrixAttributeRequest":{"type":"object","properties":{"copyAttribute":{"type":"boolean","description":"Propagation: when true, this attribute and its value are inherited by the subcategories of this category and\nby their products. Only the category that switched propagation on can change it.","nullable":true},"locked":{"type":"boolean","description":"Not supported for matrix definitions - sending this field fails the request.","nullable":true},"mandatory":{"type":"boolean","description":"Make attribute value mandatory: when true, the attribute on products in the category must have a value for\nthose products to be valid for synchronization.","nullable":true},"matrix":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}},"description":"New value per cell, keyed first by the column value ID and then by the row value ID, both taken from the\nattribute definition's restriction. This is the complete set to keep - cells left out are cleared.","nullable":true}}},"UpdateCategoryRequest":{"type":"object","properties":{"description":{"title":"New description for catalog or category.","type":"string","nullable":true},"name":{"title":"New name for catalog or category.","maxLength":1000,"minLength":0,"type":"string"},"number":{"title":"New number for catalog or category.","maxLength":1000,"minLength":0,"type":"string","nullable":true}}},"UpdateContextAwareFlagRequest":{"required":["contextAware"],"type":"object","properties":{"contextAware":{"type":"boolean"}},"description":"Request object for updating the context-aware flag of an attribute definition."},"UpdateDictionaryCategoryAttributeValuesRequest":{"required":["dictionaryIds"],"type":"object","properties":{"dictionaryIds":{"maxItems":100,"minItems":0,"type":"array","items":{"type":"string"}}}},"UpdateSelectCategoryAttributeValuesRequest":{"required":["selectIds"],"type":"object","properties":{"selectIds":{"maxItems":100,"minItems":0,"type":"array","items":{"type":"string"}}}},"UpdateSelectValueRequest":{"type":"object","properties":{"metadata":{"$ref":"#/components/schemas/PropertyUpdateString"},"number":{"$ref":"#/components/schemas/PropertyUpdateString"},"value":{"$ref":"#/components/schemas/PropertyUpdateString"}}},"UpdateSimpleCategoryAttributeValueRequest":{"required":["value"],"type":"object","properties":{"value":{"type":"string"}}},"ValidableAttribute":{"title":"Product's attributes.","type":"object","properties":{"definitionId":{"title":"Attribute definition ID for given value.","type":"string"},"dictionaryValueIds":{"title":"List of dictionary values IDs.","type":"array","nullable":true,"items":{"title":"List of dictionary values IDs.","type":"string"}},"selectValueIds":{"type":"array","nullable":true,"items":{"type":"string"}},"values":{"title":"Attribute values for product.","type":"array","nullable":true,"items":{"title":"Attribute values for product.","type":"string"}}}},"ValueValidationIssue":{"title":"Validation issues.","type":"object","properties":{"message":{"title":"Validation message.","type":"string","nullable":true},"statusCode":{"title":"Validation issue code.","type":"string","enum":["INVALID_VALUE","MISSING_CATEGORY_ATTRIBUTE","MISSING_CATEGORY_VALUE","INVALID_CATEGORY_CONSTRAINT","MISSING_PRODUCT","MISSING_COMPOUND_ATTRIBUTE","MISSING_VARIANT_ATTRIBUTE","INVALID_VARIANT_VALUE","MISSING_VARIANT_VALUE","DICTIONARY_VALUE_NOT_EXIST_IN_FILTER"]}}},"ValueValidationRequest":{"type":"object","properties":{"definitionId":{"title":"Id of the simple attribute definition.","type":"string"},"value":{"title":"Attribute value.","type":"string"}}},"ValueValidationResponse":{"type":"object","properties":{"issues":{"title":"Validation issues.","type":"array","items":{"$ref":"#/components/schemas/ValueValidationIssue"}},"status":{"title":"Validation status.","type":"string","enum":["SUCCESSFUL","FAILED"]}}},"VariantsFilteringViewsDto":{"type":"object","allOf":[{"$ref":"#/components/schemas/FilteringViewsDto"}]}},"securitySchemes":{"oauth2":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"https://idp.test.bluestonepim.com/op/token","scopes":{"openid profile systemRoles permissions organization email name nickname":"All needed scopes."}}}}}},"x-amazon-apigateway-api-key-source":"AUTHORIZER"}