openapi: 3.1.1 info: version: 1.0.0 title: Elytra PIM Web APIs contact: email: support@elytra.ch url: https://www.elytra.ch/ x-logo: url: /openapi/elytra-logo.png description: | Elytra PIM Web APIs. servers: - url: https://example.com/api/v1 tags: - name: Product description: Product operations. - name: Product Group description: Product Group operations. - name: Tree Group description: Tree Group operations. - name: Attribute description: Attribute operations. - name: Attribute Group description: Attribute Group operations. - name: Media description: Media operations. - name: Text description: Text operations. paths: /products: get: tags: - Product summary: Get all products description: | Get all products. Optionally filter by product group ID to retrieve only products that belong to a specific group. **Query Parameters:** - Use `groupId` to filter products by group (queries the `prod_to_grp` linking table) - Products include originals, copies, and variants - Results are paginated and can be language-filtered operationId: getAllProducts security: - bearer_api_key: [] parameters: - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string - name: page in: query description: Page number schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of products to return schema: type: integer minimum: 1 maximum: 200 default: 10 - name: groupId in: query description: Optional product group ID to filter products by. When provided, only returns products that belong to the specified group. required: false schema: type: integer minimum: 1 example: 44471 responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleProductResponse' total: type: integer example: 100 description: The total number of products page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of products per page links: type: object description: The links to follow for pagination properties: self: type: string example: /products?page=2&limit=10&lang=de&groupId=44471 description: The current page of products next: type: - string - 'null' example: /products?page=3&limit=10&lang=de&groupId=44471 description: The next page of products, "null" if it's the last page previous: type: - string - 'null' example: /products?page=1&limit=10&lang=de&groupId=44471 description: The previous page of products, "null" if it's the first page first: type: string example: /products?page=1&limit=10&lang=de&groupId=44471 description: The first page of products last: type: string example: /products?page=9&limit=10&lang=de&groupId=44471 description: The last page of products '403': description: Forbidden '404': description: User not found post: tags: - Product summary: Create a new product description: Create a new product operationId: createProduct security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleProductResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleNewProductRequestBody' description: New product object required: true patch: tags: - Product summary: Update a product description: Update a product operationId: updateProduct security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleProductResponse' totalItemsUpdated: type: integer example: 1 description: The total number of products updated '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleUpdateProductRequestBody' description: Update product object required: true /products/bulk: post: tags: - Product summary: Create multiple new products description: Create multiple new products in bulk operationId: createMultipleProducts security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleProductResponse' totalItemsCreated: type: integer example: 10 description: The total number of products created '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleNewProductRequestBody' description: Array of new product objects required: true patch: tags: - Product summary: Update multiple products description: Update multiple products in bulk operationId: updateMultipleProducts security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleProductResponse' totalItemsUpdated: type: integer example: 10 description: The total number of products updated '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleUpdateProductRequestBody' description: Array of product objects to update required: true /products/{productId}: get: tags: - Product summary: Get product by ID description: | Get a product by product ID operationId: getProductById parameters: - name: productId in: path description: The ID of the product that needs to be fetched required: true schema: type: number - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: allOf: - $ref: '#/components/schemas/SingleProductResponse' - type: object properties: children: type: array description: The immediate children of the product items: type: object properties: id: type: integer description: The ID of the child object example: 1 name: type: string description: The name of the child object example: Child-Object type: type: string description: The type of the child object enum: - product - variant - text - media '403': description: Forbidden '404': description: User not found delete: tags: - Product summary: Delete product by ID description: Delete product by ID operationId: deleteProduct parameters: - name: productId in: path description: The ID of the product required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /products/{productId}/hierarchy: get: tags: - Product summary: Get the hierarchy of a product description: Get the hierarchy of a product operationId: getProductHierarchy parameters: - name: productId in: path description: The ID of the product required: true schema: type: number - name: depth in: query description: The depth of the hierarchy required: false schema: type: integer minimum: 1 default: 10 security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ProductHierarchyResponse' '403': description: Forbidden '404': description: User not found /products/operation: post: tags: - Product summary: Perform an operation on a product description: | Perform an operation on a product. Available operations: - **copy**: Copy the product with all children to a new parent. Requires a product group as parent. - **move**: Move the product to a new parent. Accepts product or product group as parent. - **link**: Link the product to a new parent. Accepts product or product group as parent. - **copy-structure**: Copy the group structure but link products. Requires a product group as parent. operationId: performProductOperation security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleProductResponse' '400': description: Invalid request. For copy and copy-structure operations, parentId must be a product group. '404': description: Product or parent not found requestBody: content: application/json: schema: type: object required: - operation - productId - parentId properties: operation: type: string description: | The operation to perform: - copy: Requires product group as parent - move: Accepts product or product group as parent - link: Accepts product or product group as parent - copy-structure: Requires product group as parent example: copy enum: - copy - move - link - copy-structure productId: type: integer description: The ID of the product to perform the operation on example: 1 parentId: type: integer description: | The ID of the destination parent. For copy and copy-structure operations, this must be a product group ID. For move and link operations, this can be either a product or product group ID. example: 1 description: Perform operation on product required: true /groups: get: tags: - Product Group summary: Get all product groups description: Get all product groups operationId: getAllProductGroups security: - bearer_api_key: [] parameters: - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string - name: page in: query description: Page number schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of product groups to return per page schema: type: integer minimum: 1 maximum: 200 default: 10 responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleProductGroupResponse' total: type: integer example: 100 description: The total number of product groups page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of product groups per page links: type: object description: The links to follow for pagination properties: self: type: string example: /groups?page=2&limit=10&lang=de description: The current page of product groups next: type: - string - 'null' example: /groups?page=3&limit=10&lang=de description: The next page of product groups, "null" if it's the last page previous: type: - string - 'null' example: /groups?page=1&limit=10&lang=de description: The previous page of product groups, "null" if it's the first page first: type: string example: /groups?page=1&limit=10&lang=de description: The first page of product groups last: type: string example: /groups?page=9&limit=10&lang=de description: The last page of product groups '403': description: Forbidden '404': description: User not found post: tags: - Product Group summary: Create a product group description: Create a product group operationId: createProductGroup security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleProductGroupResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleNewProductGroupRequestBody' description: New product group object required: true patch: tags: - Product Group summary: Update a product group description: Update a product group operationId: updateProductGroup security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleProductGroupResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleUpdateProductGroupRequestBody' description: Update product group object required: true /groups/{groupId}: get: tags: - Product Group summary: Get product group by ID description: Get product group by ID operationId: getProductGroupById parameters: - name: groupId in: path description: The ID of the product group required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: allOf: - $ref: '#/components/schemas/SingleProductGroupResponse' - type: object properties: children: type: array description: The immediate children of the product group items: type: object properties: id: type: integer description: The ID of the child object example: 1 name: type: string description: The name of the child object example: Child-Object type: type: string description: The type of the child object enum: - product - product-group - text - media '403': description: Forbidden '404': description: User not found delete: tags: - Product Group summary: Delete product group by ID description: Delete product group by ID operationId: deleteProductGroup parameters: - name: groupId in: path description: The ID of the product group required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /groups/{groupId}/hierarchy: get: tags: - Product Group summary: Get the hierarchy of a product group description: Get the hierarchy of a product group operationId: getProductGroupHierarchy parameters: - name: groupId in: path description: The ID of the product group required: true schema: type: number - name: depth in: query description: The depth of the hierarchy required: false schema: type: integer minimum: 1 default: 10 security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ProductGroupHierarchyResponse' '403': description: Forbidden '404': description: User not found /tree/groups: get: tags: - Tree Group summary: Get all tree groups description: Get all tree groups operationId: getAllTreeGroups security: - bearer_api_key: [] parameters: - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string - name: page in: query description: Page number schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of tree groups to return per page schema: type: integer minimum: 1 maximum: 200 default: 10 responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleTreeGroupResponse' total: type: integer example: 100 description: The total number of tree groups page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of tree groups per page links: type: object description: The links to follow for pagination properties: self: type: string example: /tree/groups?page=2&limit=10&lang=de description: The current page of tree groups next: type: - string - 'null' example: /tree/groups?page=3&limit=10&lang=de description: The next page of tree groups, "null" if it's the last page previous: type: - string - 'null' example: /tree/groups?page=1&limit=10&lang=de description: The previous page of tree groups, "null" if it's the first page first: type: string example: /tree/groups?page=1&limit=10&lang=de description: The first page of tree groups last: type: string example: /tree/groups?page=9&limit=10&lang=de description: The last page of tree groups '403': description: Forbidden '404': description: User not found post: tags: - Tree Group summary: Create a tree group description: Create a tree group operationId: createTreeGroup security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleTreeGroupResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleNewTreeGroupRequestBody' description: New tree group object required: true patch: tags: - Tree Group summary: Update a tree group description: Update a tree group operationId: updateTreeGroup security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleTreeGroupResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleUpdateTreeGroupRequestBody' description: Update tree group object required: true /tree/groups/{treeGroupId}: get: tags: - Tree Group summary: Get tree group by ID description: Get tree group by ID operationId: getTreeGroupById parameters: - name: treeGroupId in: path description: The ID of the tree group required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: allOf: - $ref: '#/components/schemas/SingleTreeGroupResponse' - type: object properties: children: type: array description: The immediate children of the tree group items: type: object properties: id: type: integer description: The ID of the child object example: 1 name: type: string description: The name of the child object example: Child-Object type: type: string description: The type of the child object enum: - tree-group - product-group - catalog-group '403': description: Forbidden '404': description: User not found delete: tags: - Tree Group summary: Delete tree group by ID description: Delete tree group by ID operationId: deleteTreeGroup parameters: - name: treeGroupId in: path description: The ID of the tree group required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /tree/groups/hierarchy: get: tags: - Tree Group summary: Get the hierarchy of tree groups description: Get the hierarchy of tree groups operationId: getTreeGroupHierarchy parameters: - name: depth in: query description: The depth of the hierarchy required: false schema: type: integer minimum: 1 default: 10 security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/TreeGroupHierarchyResponse' '403': description: Forbidden '404': description: User not found /attributes: get: tags: - Attribute summary: Get all attribute definitions description: | Get all attribute definitions operationId: getAllAttributes security: - bearer_api_key: [] parameters: - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string - name: page in: query description: Page number schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of attributes to return schema: type: integer minimum: 1 maximum: 200 default: 10 responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleAttributeResponse' total: type: integer example: 100 description: The total number of attributes page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of attributes per page links: type: object description: The links to follow for pagination properties: self: type: string example: /attributes?page=2&limit=10&lang=de description: The current page of attributes next: type: - string - 'null' example: /attributes?page=3&limit=10&lang=de description: The next page of attributes, "null" if it's the last page previous: type: - string - 'null' example: /attributes?page=1&limit=10&lang=de description: The previous page of attributes, "null" if it's the first page first: type: string example: /attributes?page=1&limit=10&lang=de description: The first page of attributes last: type: string example: /attributes?page=9&limit=10&lang=de description: The last page of attributes '403': description: Forbidden '404': description: User not found post: tags: - Attribute summary: Create a new attribute definition description: Create a new attribute definition operationId: createAttribute security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleAttributeResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleNewAttributeRequestBody' description: New attribute definition object required: true patch: tags: - Attribute summary: Update an attribute definition description: Update an attribute definition operationId: updateAttribute security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleAttributeResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleUpdateAttributeRequestBody' description: Update attribute definition object required: true /attributes/bulk: post: tags: - Attribute summary: Create multiple new attribute definitions description: Create multiple new attribute definitions in bulk operationId: createMultipleAttributes security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleAttributeResponse' totalItemsCreated: type: integer example: 10 description: The total number of attributes created '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleNewAttributeRequestBody' description: Array of new attribute definition objects required: true patch: tags: - Attribute summary: Update multiple attribute definitions description: Update multiple attribute definitions in bulk operationId: updateMultipleAttributes security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleAttributeResponse' totalItemsUpdated: type: integer example: 10 description: The total number of attributes updated '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleUpdateAttributeRequestBody' description: Array of attribute definition objects to update required: true /attributes/{attributeId}: get: tags: - Attribute summary: Get attribute definition by ID description: | Get attribute definition by ID operationId: getAttributeById parameters: - name: attributeId in: path description: The ID of the attribute definition that needs to be fetched required: true schema: type: string - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleAttributeResponse' '403': description: Forbidden '404': description: User not found delete: tags: - Attribute summary: Delete attribute definition by ID description: Delete attribute definition by ID operationId: deleteAttributeById parameters: - name: attributeId in: path description: The ID of the attribute definition required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /attributes/name/{attributeName}: get: tags: - Attribute summary: Get attribute definition by name description: | Get attribute definition by name operationId: getAttributeByName parameters: - name: attributeName in: path description: The independent name of the attribute definition that needs to be fetched required: true schema: type: string - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleAttributeResponse' '403': description: Forbidden '404': description: User not found /attribute/groups: get: tags: - Attribute Group summary: Get all attribute groups description: | Get all attribute groups operationId: getAllAttributeGroups security: - bearer_api_key: [] parameters: - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string - name: page in: query description: Page number schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of attribute groups to return schema: type: integer minimum: 1 maximum: 200 default: 10 responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleAttributeGroupResponse' total: type: integer example: 100 description: The total number of attribute groups page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of attribute groups per page links: type: object description: The links to follow for pagination properties: self: type: string example: /attribute/groups?page=2&limit=10&lang=de description: The current page of attribute groups next: type: - string - 'null' example: /attribute/groups?page=3&limit=10&lang=de description: The next page of attribute groups, "null" if it's the last page previous: type: - string - 'null' example: /attribute/groups?page=1&limit=10&lang=de description: The previous page of attribute groups, "null" if it's the first page first: type: string example: /attribute/groups?page=1&limit=10&lang=de description: The first page of attribute groups last: type: string example: /attribute/groups?page=9&limit=10&lang=de description: The last page of attribute groups '403': description: Forbidden '404': description: User not found post: tags: - Attribute Group summary: Create one or more new attribute groups description: Create one or more new attribute groups operationId: createAttributeGroups security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleAttributeGroupResponse' totalItemsCreated: type: integer example: 1 '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: oneOf: - $ref: '#/components/schemas/SingleNewAttributeGroupRequestBody' title: Single Product - type: array title: Multiple Products items: $ref: '#/components/schemas/SingleNewAttributeGroupRequestBody' description: New attribute definition object required: true patch: tags: - Attribute Group summary: Update one or more attribute groups description: Update one or more attribute groups operationId: updateAttributeGroups security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleAttributeGroupResponse' totalItemsCreated: type: integer example: 1 '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: oneOf: - $ref: '#/components/schemas/SingleUpdateAttributeGroupRequestBody' title: Single Attribute Group - type: array title: Multiple Attribute Groups items: $ref: '#/components/schemas/SingleUpdateAttributeGroupRequestBody' description: Update attribute group object required: true /attribute/groups/{attributeGroupId}: delete: tags: - Attribute Group summary: Delete attribute group by ID description: Delete attribute group by ID operationId: deleteAttributeGroupById parameters: - name: attributeGroupId in: path description: The ID of the attribute group required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /attribute/groups/id/{attributeGroupId}: get: tags: - Attribute Group summary: Get attribute group by ID description: | Get attribute group by ID operationId: getAttributeGroupById parameters: - name: attributeGroupId in: path description: The ID of the attribute group that needs to be fetched required: true schema: type: string - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleAttributeGroupResponse' '403': description: Forbidden '404': description: User not found /attribute/groups/name/{attributeGroupName}: get: tags: - Attribute Group summary: Get attribute group by name description: | Get attribute group by name operationId: getAttributeGroupName parameters: - name: attributeGroupName in: path description: The independent name of the attribute group that needs to be fetched required: true schema: type: string - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleAttributeGroupResponse' '403': description: Forbidden '404': description: User not found /attribute/groups/operations/add: post: tags: - Attribute Group summary: Add attributes to an attribute group description: Add attributes to an attribute group operationId: addAttributesToAttributeGroup security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found requestBody: content: application/json: schema: oneOf: - type: object title: By Attribute ID required: - attributeGroupId - attributeIds properties: attributeGroupId: type: integer description: The ID of the attribute group example: 1 attributeIds: type: array description: The IDs of the attributes to add to the attribute group items: type: integer description: The ID of the attribute example: 1 - type: object title: By Attribute Name required: - attributeGroupId - attributeNames properties: attributeGroupId: type: integer description: The ID of the attribute group example: 1 attributeNames: type: array description: The names of the attributes to add to the attribute group items: type: string description: The name of the attribute example: product_id description: Add attributes to an attribute group required: true /attribute/groups/hierarchy/{attributeGroupId}: get: tags: - Attribute Group summary: Get the hierarchy of an attribute group description: Get the hierarchy of an attribute group operationId: getAttributeGroupHierarchy parameters: - name: attributeGroupId in: path description: The ID of the attribute group required: true schema: type: number - name: depth in: query description: The depth of the hierarchy required: false schema: type: integer minimum: 1 default: 10 security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AttributeGroupHierarchyResponse' '403': description: Forbidden '404': description: User not found /media: get: tags: - Media summary: Get all media descriptors description: | Get all media descriptors. operationId: getAllMedia security: - bearer_api_key: [] parameters: - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string - name: page in: query description: Page number schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of media items to return schema: type: integer minimum: 1 maximum: 200 default: 10 responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleMediaResponse' total: type: integer example: 100 description: The total number of media items page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of media items per page links: type: object description: The links to follow for pagination properties: self: type: string example: /media?page=2&limit=10&lang=de description: The current page of media items next: type: - string - 'null' example: /media?page=3&limit=10&lang=de description: The next page of media items, "null" if it's the last page previous: type: - string - 'null' example: /media?page=1&limit=10&lang=de description: The previous page of media items, "null" if it's the first page first: type: string example: /media?page=1&limit=10&lang=de description: The first page of media items last: type: string example: /media?page=9&limit=10&lang=de description: The last page of media items '403': description: Forbidden '404': description: User not found post: tags: - Media summary: Create a new media descriptor description: Create a new media descriptor (metadata only, content uploaded separately) operationId: createMedia security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleMediaResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleNewMediaRequestBody' description: New media object required: true patch: tags: - Media summary: Update media descriptor description: Update media descriptor by ID operationId: updateMedia security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleMediaResponse' '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleUpdateMediaRequestBody' description: Update media object required: true /media/bulk: post: tags: - Media summary: Create multiple media descriptors description: Create multiple media descriptors operationId: createMultipleMedia security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleMediaResponse' totalItemsCreated: type: integer example: 10 description: The total number of media items created '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleNewMediaRequestBody' description: Array of new media objects required: true patch: tags: - Media summary: Update multiple media items description: Update multiple media descriptors operationId: updateMultipleMedia security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleMediaResponse' totalItemsUpdated: type: integer example: 10 description: The total number of media items updated '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleUpdateMediaRequestBody' description: Array of media objects to update required: true /media/{mediaId}: get: tags: - Media summary: Get media by ID description: | Get a media descriptor by media ID operationId: getMediaById parameters: - name: mediaId in: path description: The ID of the media that needs to be fetched required: true schema: type: number - name: lang in: query description: Language code examples: german: description: German value: de english: description: English value: en schema: type: string security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleMediaResponse' '403': description: Forbidden '404': description: User not found delete: tags: - Media summary: Delete media by ID description: Delete media by ID operationId: deleteMedia parameters: - name: mediaId in: path description: The ID of the media descriptor required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /media/file/{mediaFileId}: get: tags: - Media summary: Download media content description: | Download the binary content of a media file. operationId: getMediaContent parameters: - name: mediaFileId in: path description: The ID of the media file required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: Success - binary content returned content: '*/*': schema: type: string format: binary headers: Content-Type: description: The MIME type of the media content schema: type: string Content-Disposition: description: Attachment filename schema: type: string Content-Length: description: Size of the content in bytes schema: type: integer '403': description: Forbidden '404': description: Media not found delete: tags: - Media summary: Delete media file by ID description: Delete media file by ID operationId: deleteMediaFile parameters: - name: mediaFileId in: path description: The ID of the media file required: true schema: type: number security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: User not found /media/file: post: tags: - Media summary: Upload media file description: | Upload media file for a media descriptor. operationId: uploadMediaFile security: - bearer_api_key: [] requestBody: content: multipart/form-data: schema: type: object required: - file - mediaId - mamSystem properties: file: type: string format: binary description: The media file to upload mediaId: type: integer format: int64 description: The ID of the media descriptor example: 12345 mamSystem: type: string description: | The MAM system code. Possible values are: | Value | Description | |--------------|-------------------------------| | `fs` | File-System | | `sixomc` | SixOMC | | `cumulus` | Cumulus | example: sixomc languageCode: type: string description: The language code for this media file, i.e. `de`,`en`, default is `independent` example: independent required: true responses: '200': description: OK - content uploaded successfully content: application/json: schema: $ref: '#/components/schemas/MediaFileResponse' '400': description: Invalid request or file type '403': description: Forbidden '404': description: Media not found '413': description: File too large /text: get: tags: - Text summary: Get all texts description: | Get all text items with pagination. **Query Parameters:** - Use `lang` to filter text contents by language - Use `includeContent` to control whether text contents are returned - Use `includeAttributes` to control whether attributes are returned - Results are paginated operationId: getAllTexts security: - bearer_api_key: [] parameters: - name: page in: query description: Page number (1-based) schema: type: integer minimum: 1 default: 1 - name: limit in: query description: Number of text items to return per page schema: type: integer minimum: 1 maximum: 200 default: 10 - name: lang in: query description: Language code to filter text contents by language required: false examples: german: description: German value: de english: description: English value: en schema: type: string - name: includeContent in: query description: Whether to include the text contents in the response. Set to false to retrieve only metadata without content. required: false schema: type: boolean default: true example: true - name: includeAttributes in: query description: Whether to include attributes in the response. Set to false to retrieve only text metadata without attributes. required: false schema: type: boolean default: true example: true responses: '200': description: Success content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleTextResponse' total: type: integer example: 100 description: The total number of text items page: type: integer example: 1 description: The current page number limit: type: integer example: 10 description: The number of text items per page links: type: object description: The links to follow for pagination properties: self: type: string example: /text?page=2&limit=10&lang=de description: The current page of text items next: type: - string - 'null' example: /text?page=3&limit=10&lang=de description: The next page of text items, "null" if it's the last page previous: type: - string - 'null' example: /text?page=1&limit=10&lang=de description: The previous page of text items, "null" if it's the first page first: type: string example: /text?page=1&limit=10&lang=de description: The first page of text items last: type: string example: /text?page=9&limit=10&lang=de description: The last page of text items '403': description: Forbidden '404': description: Not found post: tags: - Text summary: Create a new text item description: Create a new text item with content operationId: createText security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleTextResponse' '400': description: Invalid request '404': description: Not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleNewTextRequestBody' description: New text object with content required: true patch: tags: - Text summary: Update a text item description: Update a text item with name, text type, tree, contents, and attributes. operationId: updateText security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SingleTextResponse' '400': description: Invalid request '404': description: Not found requestBody: content: application/json: schema: $ref: '#/components/schemas/SingleUpdateTextRequestBody' description: Update text object required: true /text/bulk: post: tags: - Text summary: Create multiple new text items description: Create multiple new text items with content in bulk operationId: createMultipleTexts security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleTextResponse' totalItemsCreated: type: integer example: 10 description: The total number of text items created '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleNewTextRequestBody' description: Array of new text objects with content required: true patch: tags: - Text summary: Update multiple text items description: Update multiple text items with optional content in bulk operationId: updateMultipleTexts security: - bearer_api_key: [] responses: '200': description: OK content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/SingleTextResponse' totalItemsUpdated: type: integer example: 10 description: The total number of text items updated '400': description: Invalid user supplied '404': description: User not found requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SingleUpdateTextRequestBody' description: Array of text objects to update required: true /text/{textId}: get: tags: - Text summary: Get text by ID description: | Get a text item by text ID. The response includes the text descriptor metadata. Use query parameters to control whether to include text contents and attributes in the response. operationId: getTextById parameters: - name: textId in: path description: The ID of the text that needs to be fetched required: true schema: type: integer format: int64 minimum: 1 - name: lang in: query description: Language code to filter text contents by language required: false examples: german: description: German value: de english: description: English value: en schema: type: string - name: includeContent in: query description: Whether to include the text contents in the response. Set to false to retrieve only metadata without content. required: false schema: type: boolean default: true example: true - name: includeAttributes in: query description: Whether to include attributes in the response. Set to false to retrieve only text metadata without attributes. required: false schema: type: boolean default: true example: true security: - bearer_api_key: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleTextResponse' '403': description: Forbidden '404': description: Text not found delete: tags: - Text summary: Delete text by ID description: Delete text by ID operationId: deleteText parameters: - name: textId in: path description: The ID of the text required: true schema: type: integer format: int64 minimum: 1 security: - bearer_api_key: [] responses: '200': description: OK '403': description: Forbidden '404': description: Text not found components: securitySchemes: bearer_api_key: type: http scheme: bearer schemas: ObjectStatuses: type: string description: | The status of the object - `original` - `copy` - `variant` example: original AttributeTypes: type: string description: | The type of the attribute - `double` - `integer` - `date` - `boolean` - `float` - `string` - `styled-text` - `formula` - `barcode` - `color` - `page` - `url` - `string:string` - `string:usage-path` - `link:absolute` - `link:relative` - `grid:string` - `layout:string` - `enumeration:string` - `enumeration:styled-text` - `extended-enumeration:string` - `extended-enumeration:styled-text` - `class:eclass-5.1.3` - `class:eclass-6.0.1` - `class:eclass-6.2` - `class:eclass-7.0` - `class:eclass-7.1` - `class:eclass-8.1` - `class:eclass-9` - `class:eclass-10` - `class:eclass-11` - `class:eclass-12` - `class:eclass-13` - `class:eclass-14` - `class:eclass-15` - `class:etim-4.0` - `class:etim-5.0` - `class:etim-6.0` - `class:etim-7.0` - `class:etim-8.0` - `class:etim-9.0` - `class:etim-10.0` - `class:proficlass-3.0` - `class:proficlass-5.1` - `class:proficlass-6.0` - `class-value:eclass-5.1.3` - `class-value:eclass-6.0.1` - `class-value:eclass-6.2` - `class-value:eclass-7.0` - `class-value:eclass-7.1` - `class-value:eclass-8.1` - `class-value:eclass-9` - `class-value:eclass-10` - `class-value:eclass-11` - `class-value:eclass-12` - `class-value:eclass-13` - `class-value:eclass-14` - `class-value:eclass-15` - `class-value:etim-4.0` - `class-value:etim-5.0` - `class-value:etim-6.0` - `class-value:etim-7.0` - `class-value:etim-8.0` - `class-value:etim-9.0` - `class-value:etim-10.0` - `class-value:proficlass-3.0` - `class-value:proficlass-5.1` - `class-value:proficlass-6.0` example: enumeration:string ProductAttributeResponse: type: object properties: id: type: integer description: The ID of the attribute example: 3802 attributeId: type: integer description: The ID of the attribute definition example: 293 attributeName: type: string description: The independent name of the attribute example: product_id attributeType: type: string description: The type of the attribute enum: - normal - meta - internal type: $ref: '#/components/schemas/AttributeTypes' value: type: string description: The value of the attribute example: '3596' autoSync: type: string description: The auto sync mode of the attribute enum: - copy_to_original - original_to_copies - none languageCode: type: string description: The language code of the attribute example: de modified: type: string description: The date and time the attribute was modified format: date-time example: '2025-04-08T12:00:00Z' modifierByUserId: type: integer description: The ID of user who modified the attribute example: 235 inherited: type: boolean description: Whether the attribute is inherited example: false SingleProductResponse: type: object properties: id: type: integer description: The ID of the product example: 3801 clientId: type: integer description: The ID of the client example: 231 productName: type: string description: The name of the product example: A05844 treeId: type: integer description: The ID of the tree example: 0 created: type: string description: The date and time the product was created format: date-time example: '2025-04-08T12:00:00Z' modified: type: string description: The date and time the product was modified format: date-time example: '2025-04-08T12:00:00Z' creatorUserId: type: integer description: The ID of user who created the product example: 235 modifierUserId: type: integer description: The ID of user who modified the product example: 235 objectStatus: $ref: '#/components/schemas/ObjectStatuses' originalId: type: integer description: The ID of the original product example: 0 attributes: type: array items: $ref: '#/components/schemas/ProductAttributeResponse' AttributeRequestBody: type: object required: - attributeId - value properties: attributeId: type: integer description: The ID of the attribute definition example: 1 value: type: string description: The value of the attribute example: A12345 languageCode: type: string description: The language code of the attribute, only used if the attribute is language dependent example: de SingleNewProductRequestBody: type: object required: - productName - parentId - attributeGroupId properties: productName: type: string description: The name of the product example: A05844 parentId: type: integer description: The ID of the parent group or product example: 1 attributeGroupId: type: integer description: The ID of the attribute group example: 10 attributes: type: array description: The attributes of the product items: $ref: '#/components/schemas/AttributeRequestBody' SingleUpdateProductRequestBody: type: object required: - id properties: id: type: integer description: The ID of the product example: 111 productName: type: string description: The name of the product example: A05844 parentId: type: integer description: The ID of the parent group or product example: 1 attributeGroupId: type: integer description: The ID of the attribute group example: 10 attributes: type: array description: The attributes of the product items: $ref: '#/components/schemas/AttributeRequestBody' ProductHierarchyResponse: type: object properties: id: type: integer description: The ID of the node example: 1 name: type: string description: The name of the node example: Product-0 type: type: string description: The type of node in the hierarchy enum: - product - variant - text - media children: type: array description: The immediate children of the node items: $ref: '#/components/schemas/ProductHierarchyResponse' example: id: 1 name: Product-1 type: product children: - id: 2 name: Product-2 type: product children: - id: 3 name: Product-3 type: product - id: 4 name: Product-variant-4 type: variant - id: 5 name: Text-5 type: text - id: 6 name: Media-6 type: media - id: 7 name: Product-7 type: product ProductGroupTypes: type: string description: The type of the product group enum: - product-tree - catalog-tree - catalog-page - text-tree - work-node - content-node - graphical-page - independent-graphical-page SingleProductGroupResponse: type: object properties: id: type: integer description: The ID of the product group example: 1 name: type: string description: The independent name of the product group example: Product-Group type: $ref: '#/components/schemas/ProductGroupTypes' parentId: type: integer description: The ID of the parent product group or tree group example: 1 objectStatus: $ref: '#/components/schemas/ObjectStatuses' attributeGroupId: type: integer description: The ID of the attribute group example: 2 clientId: type: integer description: The ID of the client example: 1 translations: type: object description: The translations of the product group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Product-Group-de en: Product-Group-en attributes: type: array items: $ref: '#/components/schemas/ProductAttributeResponse' SingleNewProductGroupRequestBody: type: object required: - name properties: name: type: string description: The independent name of the product group example: Product-Group type: $ref: '#/components/schemas/ProductGroupTypes' description: The type of Product Group, default is `product-tree` parentId: type: integer description: The ID of the parent product group or tree group example: 1 attributeGroupId: type: integer description: The ID of the attribute group example: 2 translations: type: object description: The translations of the product group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Product-Group-de en: Product-Group-en attributes: type: array description: The attributes of the product group items: $ref: '#/components/schemas/AttributeRequestBody' SingleUpdateProductGroupRequestBody: type: object required: - id properties: id: type: integer description: The ID of the product group example: 1 name: type: string description: The independent name of the product group example: Product-Group parentId: type: integer description: The ID of the parent product group minimum: 1 example: 1 attributeGroupId: type: integer description: The ID of the attribute group example: 2 translations: type: object description: The translations of the product group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Product-Group-de en: Product-Group-en attributes: type: array description: The attributes of the product group items: $ref: '#/components/schemas/AttributeRequestBody' ProductGroupHierarchyResponse: type: object properties: id: type: integer description: The ID of the node example: 1 name: type: string description: The name of the node example: Product-Group type: type: string description: The type of node in the hierarchy enum: - product-group - product - variant - text - media children: type: array description: The immediate children of the node items: $ref: '#/components/schemas/ProductGroupHierarchyResponse' example: id: 1 name: Product-Group-1 type: product-group children: - id: 2 name: Product-Group-2 type: product-group children: - id: 3 name: Product-3 type: product - id: 4 name: Product-variant-4 type: variant - id: 5 name: Text-5 type: text - id: 6 name: Media-6 type: media - id: 7 name: Product-7 type: product SingleTreeGroupResponse: type: object properties: id: type: integer description: The ID of the tree group example: 1 name: type: string description: The independent name of the tree group example: Tree-Group parentId: type: integer description: The ID of the parent tree group example: 1 clientId: type: integer description: The ID of the client example: 1 status: type: string description: The status of group enum: - normal - internal translations: type: object description: The translations of the tree group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Tree-Group-de en: Tree-Group-en SingleNewTreeGroupRequestBody: type: object required: - name - parentId properties: name: type: string description: The name of the tree group example: Tree-Group parentId: type: integer description: The ID of the parent tree group example: 1 status: type: string description: The status of the tree group default: normal enum: - normal - internal translations: type: object additionalProperties: type: string description: The translations of the tree group name, where the key is the language code i.e. `de` or `en` and the value is the translation example: de: Tree-Group-de en: Tree-Group-en SingleUpdateTreeGroupRequestBody: type: object required: - id properties: id: type: integer description: The ID of the tree group example: 1 name: type: string description: The name of the tree group example: Tree-Group parentId: type: integer description: The ID of the parent tree group example: 1 status: type: string description: The status of the tree group default: normal enum: - normal - internal translations: type: object additionalProperties: type: string description: The translations of the tree group name, where the key is the language code i.e. `de` or `en` and the value is the translation example: de: Tree-Group-de en: Tree-Group-en TreeGroupHierarchyResponse: type: object properties: id: type: integer description: The ID of the node example: 1 name: type: string description: The name of the node example: Tree-Group type: type: string description: The type of node in the hierarchy enum: - tree-group - product-group children: type: array description: The immediate children of the node items: $ref: '#/components/schemas/TreeGroupHierarchyResponse' example: id: 1 name: Tree-Group-1 type: tree-group children: - id: 2 name: Tree-Group-2 type: tree-group children: - id: 3 name: Tree-Group-3 type: tree-group - id: 4 name: Product-Group-4 type: product-group - id: 5 name: Product-Group-5 type: product-group CommonProperties: type: object properties: id: type: integer description: The ID of the attribute example: 1 name: type: string description: The independent name of the attribute example: Attribute-1 description: type: string description: The description of the attribute example: Attribute 1 description attributeType: type: string description: The type of the attribute enum: - normal - meta - internal type: type: string description: The type of the attribute autoSync: type: string description: The auto sync mode of the attribute enum: - none - copy_to_original - original_to_copies - copy_to_original_with_workflow - original_to_copies_with_workflow formatId: type: integer description: The ID of the attribute format example: 1 bmeCatId: type: string description: The BMEcat import ID of the attribute example: Attribute-1 neverCleanupHistory: type: boolean description: Whether the attribute history should never be cleaned up example: false workflowId: type: integer description: The ID of the workflow example: 1 colorIndex: type: integer description: The color index of the attribute for detail panel example: 1 translations: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-1-de en: Attribute-1-en Double: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a double value additionalProperties: type: number example: de: 1.2 en: 1.3 - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: number description: The default value of the attribute example: 0 formatId: type: integer description: The ID of the attribute output format example: 1 unitTypeId: type: integer description: The ID of the unit type example: 1 min: type: number description: The minimum value of the attribute max: type: number description: The maximum value of the attribute Integer: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the an integer value additionalProperties: type: integer example: de: 1 en: 2 - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: integer description: The default value of the attribute example: 1 formatId: type: integer description: The ID of the attribute output format example: 1 unitTypeId: type: integer description: The ID of the unit type example: 1 min: type: number description: The minimum value of the attribute max: type: number description: The maximum value of the attribute Boolean: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a boolean value additionalProperties: type: boolean example: de: true en: false - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: boolean description: The default value of the attribute example: true formatId: type: integer description: The ID of the attribute output format example: 1 Date: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a date value additionalProperties: type: string format: date example: de: '2025-01-01' en: '2025-01-01' - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string format: date description: The default value of the attribute example: '2025-01-01' formatId: type: integer description: The ID of the attribute output format example: 1 min: type: string format: date description: The minimum value of the attribute max: type: string format: date description: The maximum value of the attribute StyledText: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a styled text value additionalProperties: type: string example: de: Hello en: Hello - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: Hello formatId: type: integer description: The ID of the attribute output format example: 1 translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 Formula: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en formula: type: string description: The formula of the attribute example: formula-string Barcode: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true barcodeType: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the barcode type additionalProperties: type: string enum: - ean8 - ean13 - itf-14 - code128 - upc-a - auto - auto2 - interleaved-2of5 - qr example: de: ean13 en: upc-a - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false barcodeType: type: string description: The barcode type of the attribute enum: - ean8 - ean13 - itf-14 - code128 - upc-a - auto - auto2 - interleaved-2of5 - qr example: ean8 Color: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: colorType: type: string description: The type of the color enum: - rgb - cmyk languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a color value additionalProperties: type: string example: de: 255,255,255 en: 0,0,0 - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: 255,255,255 Page: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en Url: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the an url value additionalProperties: type: string format: uri example: de: https://www.example.com en: https://www.example.com - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string format: uri description: The default value of the attribute example: https://www.example.com showPreview: type: boolean description: Whether the attribute should show a preview example: true String: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a string value additionalProperties: type: string example: de: value-de en: value-en - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 StringUsagePath: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a string usage path value additionalProperties: type: string example: de: value-de en: value-en - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 EnumerationString: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en defaultValue: type: string description: The default enumeration independent value example: value-independent enumerationValues: type: array description: The enumeration values to add items: type: object properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true EnumerationStyledText: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en defaultValue: type: string description: The default enumeration independent value example: value-independent enumerationValues: type: array description: The enumeration values to add items: type: object properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true ExtendedEnumerationString: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en defaultValues: type: array description: The default enumeration independent values items: type: string description: The default enumeration independent value example: - value-independent - value-independent-2 enumerationValues: type: array description: The enumeration values to add items: type: object properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true addValueOnlyOnce: type: boolean description: Whether the enumeration values should be added only once example: true ExtendedEnumerationStyledText: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en defaultValues: type: array description: The default enumeration independent values items: type: string description: The default enumeration independent value example: - value-independent - value-independent-2 enumerationValues: type: array description: The enumeration values to add items: type: object properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true addValueOnlyOnce: type: boolean description: Whether the enumeration values should be added only once example: true GridString: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en LayoutString: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en LinkAbsolute: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en LinkRelative: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en CommonClassificationProperties: allOf: - $ref: '#/components/schemas/CommonProperties' - type: object properties: languageDependents: allOf: - type: object properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en SingleAttributeResponse: discriminator: propertyName: type mapping: double: '#/components/schemas/Double' integer: '#/components/schemas/Integer' boolean: '#/components/schemas/Boolean' date: '#/components/schemas/Date' styled-text: '#/components/schemas/StyledText' formula: '#/components/schemas/Formula' barcode: '#/components/schemas/Barcode' color: '#/components/schemas/Color' page: '#/components/schemas/Page' url: '#/components/schemas/Url' string:string: '#/components/schemas/String' string:usage-path: '#/components/schemas/StringUsagePath' enumeration:string: '#/components/schemas/EnumerationString' enumeration:styled-text: '#/components/schemas/EnumerationStyledText' extended-enumeration:string: '#/components/schemas/ExtendedEnumerationString' extended-enumeration:styled-text: '#/components/schemas/ExtendedEnumerationStyledText' grid:string: '#/components/schemas/GridString' layout:string: '#/components/schemas/LayoutString' link:absolute: '#/components/schemas/LinkAbsolute' link:relative: '#/components/schemas/LinkRelative' class:eclass-5.1.3: '#/components/schemas/CommonClassificationProperties' class:eclass-6.0.1: '#/components/schemas/CommonClassificationProperties' class:eclass-6.2: '#/components/schemas/CommonClassificationProperties' class:eclass-7.0: '#/components/schemas/CommonClassificationProperties' class:eclass-7.1: '#/components/schemas/CommonClassificationProperties' class:eclass-8.1: '#/components/schemas/CommonClassificationProperties' class:eclass-9: '#/components/schemas/CommonClassificationProperties' class:eclass-10: '#/components/schemas/CommonClassificationProperties' class:eclass-11: '#/components/schemas/CommonClassificationProperties' class:eclass-12: '#/components/schemas/CommonClassificationProperties' class:eclass-13: '#/components/schemas/CommonClassificationProperties' class:eclass-14: '#/components/schemas/CommonClassificationProperties' class:eclass-15: '#/components/schemas/CommonClassificationProperties' class:etim-4.0: '#/components/schemas/CommonClassificationProperties' class:etim-5.0: '#/components/schemas/CommonClassificationProperties' class:etim-6.0: '#/components/schemas/CommonClassificationProperties' class:etim-7.0: '#/components/schemas/CommonClassificationProperties' class:etim-8.0: '#/components/schemas/CommonClassificationProperties' class:etim-9.0: '#/components/schemas/CommonClassificationProperties' class:proficlass-3.0: '#/components/schemas/CommonClassificationProperties' class:proficlass-5.1: '#/components/schemas/CommonClassificationProperties' class:proficlass-6.0: '#/components/schemas/CommonClassificationProperties' class-value:eclass-5.1.3: '#/components/schemas/CommonClassificationProperties' class-value:eclass-6.0.1: '#/components/schemas/CommonClassificationProperties' class-value:eclass-6.2: '#/components/schemas/CommonClassificationProperties' class-value:eclass-7.0: '#/components/schemas/CommonClassificationProperties' class-value:eclass-7.1: '#/components/schemas/CommonClassificationProperties' class-value:eclass-8.1: '#/components/schemas/CommonClassificationProperties' class-value:eclass-9: '#/components/schemas/CommonClassificationProperties' class-value:eclass-10: '#/components/schemas/CommonClassificationProperties' class-value:eclass-11: '#/components/schemas/CommonClassificationProperties' class-value:eclass-12: '#/components/schemas/CommonClassificationProperties' class-value:eclass-13: '#/components/schemas/CommonClassificationProperties' class-value:eclass-14: '#/components/schemas/CommonClassificationProperties' class-value:eclass-15: '#/components/schemas/CommonClassificationProperties' class-value:etim-4.0: '#/components/schemas/CommonClassificationProperties' class-value:etim-5.0: '#/components/schemas/CommonClassificationProperties' class-value:etim-6.0: '#/components/schemas/CommonClassificationProperties' class-value:etim-7.0: '#/components/schemas/CommonClassificationProperties' class-value:etim-8.0: '#/components/schemas/CommonClassificationProperties' class-value:etim-9.0: '#/components/schemas/CommonClassificationProperties' class-value:proficlass-3.0: '#/components/schemas/CommonClassificationProperties' class-value:proficlass-5.1: '#/components/schemas/CommonClassificationProperties' class-value:proficlass-6.0: '#/components/schemas/CommonClassificationProperties' oneOf: - $ref: '#/components/schemas/Double' - $ref: '#/components/schemas/Integer' - $ref: '#/components/schemas/Boolean' - $ref: '#/components/schemas/Date' - $ref: '#/components/schemas/StyledText' - $ref: '#/components/schemas/Formula' - $ref: '#/components/schemas/Barcode' - $ref: '#/components/schemas/Color' - $ref: '#/components/schemas/Page' - $ref: '#/components/schemas/Url' - $ref: '#/components/schemas/String' - $ref: '#/components/schemas/StringUsagePath' - $ref: '#/components/schemas/EnumerationString' - $ref: '#/components/schemas/EnumerationStyledText' - $ref: '#/components/schemas/ExtendedEnumerationString' - $ref: '#/components/schemas/ExtendedEnumerationStyledText' - $ref: '#/components/schemas/GridString' - $ref: '#/components/schemas/LayoutString' - $ref: '#/components/schemas/LinkAbsolute' - $ref: '#/components/schemas/LinkRelative' - $ref: '#/components/schemas/CommonClassificationProperties' CommonProperties-2: type: object required: - name - attributeType - type properties: name: type: string description: The independent name of the attribute example: Attribute-1 description: type: string description: The description of the attribute example: Attribute 1 description attributeType: type: string description: The type of the attribute enum: - normal - meta type: type: string description: The type of the attribute autoSync: type: string description: The auto sync mode of the attribute enum: - none - copy_to_original - original_to_copies - copy_to_original_with_workflow - original_to_copies_with_workflow formatId: type: integer description: The ID of the attribute output media based format example: 1 bmeCatId: type: string description: The BMEcat import ID of the attribute example: Attribute-1 neverCleanupHistory: type: boolean description: Whether the attribute history should never be cleaned up example: false workflowId: type: integer description: The ID of the workflow example: 1 colorIndex: type: integer description: The color index of the attribute for detail panel example: 1 translations: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-1-de en: Attribute-1-en Double-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a double value additionalProperties: type: number example: de: 1.2 en: 1.3 - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: number description: The default value of the attribute example: 0 unitTypeId: type: integer description: The ID of the unit type example: 1 min: type: number description: The minimum value of the attribute max: type: number description: The maximum value of the attribute Integer-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the an integer value additionalProperties: type: integer example: de: 1 en: 2 - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: integer description: The default value of the attribute example: 1 unitTypeId: type: integer description: The ID of the unit type example: 1 min: type: number description: The minimum value of the attribute max: type: number description: The maximum value of the attribute Boolean-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a boolean value additionalProperties: type: boolean example: de: true en: false - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: boolean description: The default value of the attribute example: true Date-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a date value additionalProperties: type: string format: date example: de: '2025-01-01' en: '2025-01-01' - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string format: date description: The default value of the attribute example: '2025-01-01' min: type: string format: date description: The minimum value of the attribute max: type: string format: date description: The maximum value of the attribute StyledText-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a styled text value additionalProperties: type: string example: de: Hello en: Hello - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: Hello translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 Formula-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en formula: type: string description: The formula of the attribute example: formula-string Barcode-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true barcodeType: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the barcode type additionalProperties: type: string enum: - ean8 - ean13 - itf-14 - code128 - upc-a - auto - auto2 - interleaved-2of5 - qr example: de: ean13 en: upc-a - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false barcodeType: type: string description: The barcode type of the attribute enum: - ean8 - ean13 - itf-14 - code128 - upc-a - auto - auto2 - interleaved-2of5 - qr example: ean8 Color-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: colorType: type: string description: The type of the color enum: - rgb - cmyk languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a color value additionalProperties: type: string example: de: 255,255,255 en: 0,0,0 - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: 255,255,255 Page-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en Url-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the an url value additionalProperties: type: string format: uri example: de: https://www.example.com en: https://www.example.com - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string format: uri description: The default value of the attribute example: https://www.example.com showPreview: type: boolean description: Whether the attribute should show a preview example: true String-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a string value additionalProperties: type: string example: de: value-de en: value-en - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 StringUsagePath-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en - oneOf: - title: Language dependent type: object description: The language dependent properties properties: islanguageDependent: const: true defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a string usage path value additionalProperties: type: string example: de: value-de en: value-en - title: Language independent type: object description: The language independent properties properties: islanguageDependent: const: false defaultValue: type: string description: The default value of the attribute example: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 EnumerationString-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en enumerationValues: type: array description: The enumeration values to add items: type: object required: - value properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true EnumerationStyledText-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en enumerationValues: type: array description: The enumeration values to add items: type: object required: - value properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true ExtendedEnumerationString-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en enumerationValues: type: array description: The enumeration values to add items: type: object required: - value properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true addValueOnlyOnce: type: boolean description: Whether the enumeration values should be added only once example: true ExtendedEnumerationStyledText-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en enumerationValues: type: array description: The enumeration values to add items: type: object required: - value properties: value: type: string description: The independent enumeration value example: value-independent translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true addValueOnlyOnce: type: boolean description: Whether the enumeration values should be added only once example: true GridString-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en LayoutString-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en LinkAbsolute-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en LinkRelative-2: allOf: - $ref: '#/components/schemas/CommonProperties-2' - type: object required: - languageDependents properties: languageDependents: allOf: - type: object required: - islanguageDependent properties: islanguageDependent: type: boolean description: Whether the attribute is language dependent languageFallback: type: string description: The language fallback of the attribute examples: - de - en SingleNewAttributeRequestBody: discriminator: propertyName: type mapping: double: '#/components/schemas/Double-2' integer: '#/components/schemas/Integer-2' boolean: '#/components/schemas/Boolean-2' date: '#/components/schemas/Date-2' styled-text: '#/components/schemas/StyledText-2' formula: '#/components/schemas/Formula-2' barcode: '#/components/schemas/Barcode-2' color: '#/components/schemas/Color-2' page: '#/components/schemas/Page-2' url: '#/components/schemas/Url-2' string:string: '#/components/schemas/String-2' string:usage-path: '#/components/schemas/StringUsagePath-2' enumeration:string: '#/components/schemas/EnumerationString-2' enumeration:styled-text: '#/components/schemas/EnumerationStyledText-2' extended-enumeration:string: '#/components/schemas/ExtendedEnumerationString-2' extended-enumeration:styled-text: '#/components/schemas/ExtendedEnumerationStyledText-2' grid:string: '#/components/schemas/GridString-2' layout:string: '#/components/schemas/LayoutString-2' link:absolute: '#/components/schemas/LinkAbsolute-2' link:relative: '#/components/schemas/LinkRelative-2' oneOf: - $ref: '#/components/schemas/Double-2' - $ref: '#/components/schemas/Integer-2' - $ref: '#/components/schemas/Boolean-2' - $ref: '#/components/schemas/Date-2' - $ref: '#/components/schemas/StyledText-2' - $ref: '#/components/schemas/Formula-2' - $ref: '#/components/schemas/Barcode-2' - $ref: '#/components/schemas/Color-2' - $ref: '#/components/schemas/Page-2' - $ref: '#/components/schemas/Url-2' - $ref: '#/components/schemas/String-2' - $ref: '#/components/schemas/StringUsagePath-2' - $ref: '#/components/schemas/EnumerationString-2' - $ref: '#/components/schemas/EnumerationStyledText-2' - $ref: '#/components/schemas/ExtendedEnumerationString-2' - $ref: '#/components/schemas/ExtendedEnumerationStyledText-2' - $ref: '#/components/schemas/GridString-2' - $ref: '#/components/schemas/LayoutString-2' - $ref: '#/components/schemas/LinkAbsolute-2' - $ref: '#/components/schemas/LinkRelative-2' CommonProperties-3: type: object required: - id properties: id: type: integer description: The ID of the attribute example: 1 name: type: string description: The independent name of the attribute example: Attribute-1 description: type: string description: The description of the attribute example: Attribute 1 description autoSync: type: string description: The auto sync mode of the attribute enum: - none - copy_to_original - original_to_copies - copy_to_original_with_workflow - original_to_copies_with_workflow bmeCatId: type: string description: The BMEcat import ID of the attribute example: Attribute-1 neverCleanupHistory: type: boolean description: Whether the attribute history should never be cleaned up example: false workflowId: type: integer description: The ID of the workflow example: 1 colorIndex: type: integer description: The color index of the attribute for detail panel example: 1 translations: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-1-de en: Attribute-1-en Double-3: title: Double allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a double value additionalProperties: type: number example: de: 1.2 en: 1.3 - title: Language independent type: object description: The language independent properties properties: defaultValue: type: number description: The default value of the attribute example: 0 formatId: type: integer description: The ID of the attribute output format example: 1 unitTypeId: type: integer description: The ID of the unit type example: 1 min: type: number description: The minimum value of the attribute max: type: number description: The maximum value of the attribute Integer-3: title: Integer allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the an integer value additionalProperties: type: integer example: de: 1 en: 2 - title: Language independent type: object description: The language independent properties properties: defaultValue: type: integer description: The default value of the attribute example: 1 formatId: type: integer description: The ID of the attribute output format example: 1 unitTypeId: type: integer description: The ID of the unit type example: 1 min: type: number description: The minimum value of the attribute max: type: number description: The maximum value of the attribute Boolean-3: title: Boolean allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a boolean value additionalProperties: type: boolean example: de: true en: false - title: Language independent type: object description: The language independent properties properties: defaultValue: type: boolean description: The default value of the attribute example: true formatId: type: integer description: The ID of the attribute output media based format example: 1 Date-3: title: Date allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a date value additionalProperties: type: string format: date example: de: '2025-01-01' en: '2025-01-01' - title: Language independent type: object description: The language independent properties properties: defaultValue: type: string format: date description: The default value of the attribute example: '2025-01-01' formatId: type: integer description: The ID of the attribute output format example: 1 min: type: string format: date description: The minimum value of the attribute max: type: string format: date description: The maximum value of the attribute StyledText-3: title: Styled Text allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a styled text value additionalProperties: type: string example: de: Hello en: Hello - title: Language independent type: object description: The language independent properties properties: defaultValue: type: string description: The default value of the attribute example: Hello formatId: type: integer description: The ID of the attribute output format example: 1 translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 Formula-3: title: Formula allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: formula: type: string description: The formula of the attribute example: formula-string Barcode-3: title: Barcode allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: barcodeType: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the barcode type additionalProperties: type: string enum: - ean8 - ean13 - itf-14 - code128 - upc-a - auto - auto2 - interleaved-2of5 - qr example: de: ean13 en: upc-a - title: Language independent type: object description: The language independent properties properties: barcodeType: type: string description: The barcode type of the attribute enum: - ean8 - ean13 - itf-14 - code128 - upc-a - auto - auto2 - interleaved-2of5 - qr example: ean8 Color-3: title: Color allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: colorType: type: string description: The type of the color enum: - rgb - cmyk languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a color value additionalProperties: type: string example: de: 255,255,255 en: 0,0,0 - title: Language independent type: object description: The language independent properties properties: defaultValue: type: string description: The default value of the attribute example: 255,255,255 Page-3: title: Page allOf: - $ref: '#/components/schemas/CommonProperties-3' Url-3: title: URL allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the an url value additionalProperties: type: string format: uri example: de: https://www.example.com en: https://www.example.com - title: Language independent type: object description: The language independent properties properties: defaultValue: type: string format: uri description: The default value of the attribute example: https://www.example.com showPreview: type: boolean description: Whether the attribute should show a preview example: true String-3: title: String allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a string value additionalProperties: type: string example: de: value-de en: value-en - title: Language independent type: object description: The language independent properties properties: defaultValue: type: string description: The default value of the attribute example: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 StringUsagePath-3: title: String Usage Path allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: oneOf: - title: Language dependent type: object description: The language dependent properties properties: defaultValues: type: object description: The translations of the attribute name, where the key is the language code i.e. `de` or `en` and the value is the a string usage path value additionalProperties: type: string example: de: value-de en: value-en - title: Language independent type: object description: The language independent properties properties: defaultValue: type: string description: The default value of the attribute example: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true maxLength: type: integer description: The maximum length of the content of the attribute example: 32768 EnumerationString-3: title: Enumeration String allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: type: object properties: defaultValue: type: string description: The default enumeration independent value example: value-independent enumerationValues: type: array description: | The enumeration values to add, update, or delete. - If delete = true and id is provided, the enumeration value with that id will be deleted. - If delete = false and id is provided, the enumeration value with that id will be updated with the provided value. - If delete = false and id is not provided, a new enumeration value will be added. items: type: object properties: id: type: integer description: The ID of the enumeration value (required for update/delete operations) example: 1 value: type: string description: The independent enumeration value example: value-independent delete: type: boolean description: Whether the enumeration value should be deleted default: false example: false translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true EnumerationStyledText-3: title: Enumeration Styled Text allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: type: object properties: defaultValue: type: string description: The default enumeration independent value example: value-independent enumerationValues: type: array description: | The enumeration values to add, update, or delete. - If delete = true and id is provided, the enumeration value with that id will be deleted. - If delete = false and id is provided, the enumeration value with that id will be updated with the provided value. - If delete = false and id is not provided, a new enumeration value will be added. items: type: object properties: id: type: integer description: The ID of the enumeration value (required for update/delete operations) example: 1 value: type: string description: The independent enumeration value example: value-independent delete: type: boolean description: Whether the enumeration value should be deleted default: false example: false translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true ExtendedEnumerationString-3: title: Extended Enumeration String allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: type: object properties: defaultValues: type: array description: The default enumeration independent values items: type: string description: The default enumeration independent value example: - value-independent - value-independent-2 enumerationValues: type: array description: | The enumeration values to add, update, or delete. - If delete = true and id is provided, the enumeration value with that id will be deleted. - If delete = false and id is provided, the enumeration value with that id will be updated with the provided value. - If delete = false and id is not provided, a new enumeration value will be added. items: type: object properties: id: type: integer description: The ID of the enumeration value (required for update/delete operations) example: 1 value: type: string description: The independent enumeration value example: value-independent delete: type: boolean description: Whether the enumeration value should be deleted default: false example: false translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true addValueOnlyOnce: type: boolean description: Whether the enumeration values should be added only once example: true ExtendedEnumerationStyledText-3: title: Extended Enumeration Styled Text allOf: - $ref: '#/components/schemas/CommonProperties-3' - type: object properties: languageDependents: type: object properties: defaultValues: type: array description: The default enumeration independent values items: type: string description: The default enumeration independent value example: - value-independent - value-independent-2 enumerationValues: type: array description: | The enumeration values to add, update, or delete. - If delete = true and id is provided, the enumeration value with that id will be deleted. - If delete = false and id is provided, the enumeration value with that id will be updated with the provided value. - If delete = false and id is not provided, a new enumeration value will be added. items: type: object properties: id: type: integer description: The ID of the enumeration value (required for update/delete operations) example: 1 value: type: string description: The independent enumeration value example: value-independent delete: type: boolean description: Whether the enumeration value should be deleted default: false example: false translations: type: object description: The translations of the enumeration value, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: value-de en: value-en translationRelevant: type: boolean description: Whether the attribute is translation relevant example: true addValueOnlyOnce: type: boolean description: Whether the enumeration values should be added only once example: true GridString-3: title: Grid String allOf: - $ref: '#/components/schemas/CommonProperties-3' LayoutString-3: title: Layout String allOf: - $ref: '#/components/schemas/CommonProperties-3' LinkAbsolute-3: title: Link Absolute allOf: - $ref: '#/components/schemas/CommonProperties-3' LinkRelative-3: title: Link Relative allOf: - $ref: '#/components/schemas/CommonProperties-3' SingleUpdateAttributeRequestBody: oneOf: - $ref: '#/components/schemas/Double-3' - $ref: '#/components/schemas/Integer-3' - $ref: '#/components/schemas/Boolean-3' - $ref: '#/components/schemas/Date-3' - $ref: '#/components/schemas/StyledText-3' - $ref: '#/components/schemas/Formula-3' - $ref: '#/components/schemas/Barcode-3' - $ref: '#/components/schemas/Color-3' - $ref: '#/components/schemas/Page-3' - $ref: '#/components/schemas/Url-3' - $ref: '#/components/schemas/String-3' - $ref: '#/components/schemas/StringUsagePath-3' - $ref: '#/components/schemas/EnumerationString-3' - $ref: '#/components/schemas/EnumerationStyledText-3' - $ref: '#/components/schemas/ExtendedEnumerationString-3' - $ref: '#/components/schemas/ExtendedEnumerationStyledText-3' - $ref: '#/components/schemas/GridString-3' - $ref: '#/components/schemas/LayoutString-3' - $ref: '#/components/schemas/LinkAbsolute-3' - $ref: '#/components/schemas/LinkRelative-3' AttributeGroupValidFor: type: array description: The attribute groups is valid for items: type: string enum: - product - catalog-group - product-group - media - text - catalog-page - catalog-content - contains-table-data - invisible - attribute-filter - use-for-link-preview - collector - object-dependent-attribute-group SingleAttributeGroupResponse: type: object properties: id: type: integer description: The ID of the attribute group example: 1 name: type: string description: The independent name of the attribute group example: Attribute-Group parentId: type: integer description: The ID of the parent attribute group example: 1 validForObjectTypes: $ref: '#/components/schemas/AttributeGroupValidFor' isTemplate: type: boolean description: Whether the attribute group is a template example: false templateId: type: integer description: The ID of the template attribute group on which this attribute group is based example: 1 clientId: type: integer description: The ID of the client example: 1 createdAt: type: string description: The date and time the attribute group was created format: date-time example: '2025-04-08T12:00:00Z' createdByUserId: type: integer description: The ID of user who created the attribute group example: 1 modifiedAt: type: string description: The date and time the attribute group was modified format: date-time example: '2025-04-08T12:00:00Z' modifiedByUserId: type: integer description: The ID of user who modified the attribute group example: 1 translations: type: object description: The translations of the attribute group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-Group-de en: Attribute-Group-en SingleNewAttributeGroupRequestBody: type: object required: - name properties: name: type: string description: The independent name of the attribute group example: Attribute-Group parentId: type: integer description: The ID of the parent attribute group example: 1 validForObjectTypes: $ref: '#/components/schemas/AttributeGroupValidFor' isTemplate: type: boolean description: Whether the attribute group is a template example: false templateId: type: integer description: The ID of the template attribute group on which this attribute group is based example: 1 translations: type: object description: The translations of the attribute group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-Group-de en: Attribute-Group-en SingleUpdateAttributeGroupRequestBody: oneOf: - type: object title: By Attribute Group ID required: - id properties: id: type: integer description: The ID of the attribute group example: 1 name: type: string description: The independent name of the attribute group example: Attribute-Group parentId: type: integer description: The ID of the parent attribute group example: 1 validForObjectTypes: $ref: '#/components/schemas/AttributeGroupValidFor' isTemplate: type: boolean description: Whether the attribute group is a template example: false translations: type: object description: The translations of the attribute group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-Group-de en: Attribute-Group-en - type: object title: By Attribute Group Name required: - name properties: name: type: string description: The independent name of the attribute group example: Attribute-Group newName: type: string description: The new independent name of the attribute group example: Attribute-Group-New parentId: type: integer description: The ID of the parent attribute group example: 1 validForObjectTypes: $ref: '#/components/schemas/AttributeGroupValidFor' isTemplate: type: boolean description: Whether the attribute group is a template example: false templateId: type: integer description: The ID of the template attribute group on which this attribute group is based example: 1 translations: type: object description: The translations of the attribute group name, where the key is the language code i.e. `de` or `en` and the value is the translation additionalProperties: type: string example: de: Attribute-Group-de en: Attribute-Group-en AttributeGroupHierarchyResponse: type: object properties: id: type: integer description: The ID of the node example: 1 name: type: string description: The name of the node example: Group-0 type: type: string description: The type of node in the hierarchy enum: - attribute-group - attribute-group-template - attribute-group-derived-template - attribute children: type: array description: The immediate children of the node items: $ref: '#/components/schemas/AttributeGroupHierarchyResponse' example: id: 1 name: Group-1 type: attribute-group children: - id: 2 name: Group-2 type: attribute-group children: - id: 3 name: Attribute-3 type: attribute - id: 4 name: Attribute-4 type: attribute - id: 5 name: Attribute-5 type: attribute - id: 6 name: Group-6 type: attribute-group children: - id: 7 name: Attribute-7 type: attribute - id: 8 name: Attribute-8 type: attribute ObjectStatusesWithoutVariant: type: string description: | The status of the object - `original` - `copy` example: original MediaFileResponse: type: object properties: id: type: integer format: int64 description: The ID of the media file example: 12345 clientId: type: integer format: int64 description: The ID of the client example: 231 mediaId: type: integer format: int64 description: The ID of the media descriptor example: 12345 languageCode: type: string description: The language code for this media file, i.e. `de`,`en` example: en mimeType: type: string description: The MIME type of the media file example: image/jpeg sourceMimeType: type: string description: The original MIME type before any conversion example: image/jpeg mamSystem: type: string description: | The Media Asset Management system name | Value | Description | |--------------|-------------------------------| | `celum5` | Celum 5 Enterprise | | `cumulus` | Cumulus | | `canto` | Canto | | `cavok` | Cavok | | `agravity` | Agravity | | `fs` | File-System | | `sixomc` | SixOMC | | `picturepark`| Picturepark Content Platform | | `none` | None configured | | `unknown` | Unknown MAM System | example: sixomc mamId1: type: string description: MAM system identifier 1 example: asset-12345 mamId2: type: string description: MAM system identifier 2 example: collection-67890 mamId3: type: string description: MAM system identifier 3 example: version-1.0 mamId4: type: string description: MAM system identifier 4 example: metadata-abc contentLength: type: integer format: int64 description: The size of the media file in bytes example: 524288 updateCount: type: integer description: The number of times this media file has been updated example: 5 changedAt: type: string description: The date and time the media file was last changed format: date-time example: '2025-04-08T14:30:00Z' changedBy: type: integer format: int64 description: The ID of the user who last changed the media file example: 235 AttributeResponse: type: object description: An attribute value which is associated with an object properties: id: type: integer description: The ID of the attribute value example: 3802 attributeId: type: integer description: The ID of the attribute definition example: 293 attributeName: type: string description: The independent name of the attribute example: media_name attributeType: type: string description: | The category type of the attribute - `normal` - `meta` - `internal` example: normal type: $ref: '#/components/schemas/AttributeTypes' value: type: string description: The value of the attribute example: Product Image 001 parentId: type: integer description: The ID of the parent object to which this value belongs, in case of meta attribute this is the ID of parent attribute example: 293 autoSync: type: string description: | The auto sync mode of the attribute - `none` - `copy_to_original` - `original_to_copies` - `copy_to_original_with_workflow` - `original_to_copies_with_workflow` example: none languageCode: type: string description: The language code of the attribute example: de modifiedAt: type: string description: The date and time the attribute was modified format: date-time example: 2025-04-08T12:00:00.000+0100 modifiedBy: type: integer description: The ID of the user who modified the attribute example: 235 inherited: type: boolean description: Whether the attribute is inherited example: false SingleMediaResponse: type: object properties: id: type: integer format: int64 description: The ID of the media content example: 12345 name: type: string description: The name of the media example: Product Image treeId: type: integer format: int64 description: The ID of the tree this media belongs to example: 100 clientId: type: integer format: int64 description: The ID of the client example: 231 attributeGroupId: type: integer format: int64 description: The ID of the media default attribute group example: 1000 pictureTypeId: type: integer format: int64 description: | The ID of the picture type this media belongs to. Possible values can be retrieved using API `/attributes/name/PICTURE_TYPE`. The `id` would be in response under `languageDependents.enumerationValues` array. example: 1200 originalId: type: integer format: int64 description: The ID of the original media if this is a copy example: 1 objectStatus: $ref: '#/components/schemas/ObjectStatusesWithoutVariant' userObjectStatus: type: integer format: int64 description: User-defined object status ID example: 100 createdAt: type: string description: The date and time the media was created format: date-time example: '2025-04-08T12:00:00Z' createdBy: type: integer format: int64 description: The ID of the user who created the media example: 235 modifiedAt: type: string description: The date and time the media was last modified format: date-time example: '2025-04-08T12:00:00Z' modifiedBy: type: integer format: int64 description: The ID of the user who last modified the media example: 235 files: type: array description: The files associated with this media (e.g., different languages or formats) items: $ref: '#/components/schemas/MediaFileResponse' attributes: type: array description: The attribute values of the media items: $ref: '#/components/schemas/AttributeResponse' translations: type: object additionalProperties: type: string description: The translations of the media name, where the key is the language code i.e. `de` or `en` and the value is the translation SingleNewMediaRequestBody: type: object required: - name properties: name: type: string description: Name of the media item example: Product Image attributeGroupId: type: integer format: int64 description: The ID of the media default attribute group example: 234 pictureTypeId: type: integer format: int64 description: | The ID of the picture type this media belongs to. Possible values can be retrieved using API `/attributes/name/PICTURE_TYPE`. The `id` would be in response under `languageDependents.enumerationValues` array. example: 1200 treeId: type: integer format: int64 description: The ID of the tree this media belongs to example: 100 originalId: type: integer format: int64 description: If this is a copy, the ID of the original media descriptor example: 5678 objectStatus: $ref: '#/components/schemas/ObjectStatusesWithoutVariant' userObjectStatus: type: integer format: int64 description: Custom user object status ID example: 3 attributes: type: array description: List of media attributes items: $ref: '#/components/schemas/AttributeRequestBody' translations: type: object additionalProperties: type: string description: The translations of the media name, where the key is the language code i.e. `de` or `en` and the value is the translation SingleUpdateMediaRequestBody: type: object required: - id properties: id: type: integer format: int64 description: The ID of the media descriptor to update example: 12345 name: type: string description: Name of the media item example: Product Image attributeGroupId: type: integer format: int64 description: The ID of the media default attribute group example: 234 pictureTypeId: type: integer format: int64 description: | The ID of the picture type this media belongs to. Possible values can be retrieved using API `/attributes/name/PICTURE_TYPE`. The `id` would be in response under `languageDependents.enumerationValues` array. example: 1200 treeId: type: integer format: int64 description: The ID of the tree this media belongs to example: 100 originalId: type: integer format: int64 description: If this is a copy, the ID of the original media descriptor example: 5678 objectStatus: $ref: '#/components/schemas/ObjectStatusesWithoutVariant' userObjectStatus: type: integer format: int64 description: Custom user object status ID example: 3 attributes: type: array description: List of media attributes items: $ref: '#/components/schemas/AttributeRequestBody' translations: type: object additionalProperties: type: string description: The translations of the media name, where the key is the language code i.e. `de` or `en` and the value is the translation TextContentResponse: type: object properties: id: type: integer format: int64 description: The ID of the text content example: 12345 clientId: type: integer format: int64 description: The ID of the client example: 231 languageCode: type: string description: The language code for this text content, i.e. `de`, `en` example: en mimeType: type: string description: The MIME type of the text content enum: - text/plain - application/pdb example: text/plain content: type: string description: The text content in UTF-8 encoding (plain text, not base64) example: |- This is sample text content. With multiple lines. contentLength: type: integer description: The size of the text content in bytes example: 1024 workflowStatus: type: string description: The workflow status of the text content example: approved workflowComment: type: string description: Comments related to the workflow example: Reviewed and approved changedAt: type: string description: The date and time the text content was last changed format: date-time example: '2025-04-08T14:30:00Z' changedBy: type: integer format: int64 description: The ID of the user who last changed the text content example: 235 SingleTextResponse: type: object properties: id: type: integer format: int64 description: The ID of the text descriptor example: 12345 name: type: string description: The name of the text example: Product Description treeId: type: integer format: int64 description: The ID of the tree this text belongs to example: 100 clientId: type: integer format: int64 description: The ID of the client example: 231 originalId: type: integer format: int64 description: The ID of the original text if this is a copy example: 0 objectStatus: $ref: '#/components/schemas/ObjectStatuses' userObjectStatus: type: integer format: int64 description: User-defined object status example: 0 createdAt: type: string description: The date and time the text was created format: date-time example: '2025-04-08T12:00:00Z' createdBy: type: integer format: int64 description: The ID of the user who created the text example: 235 modifiedAt: type: string description: The date and time the text was last modified format: date-time example: '2025-04-08T12:00:00Z' modifiedBy: type: integer format: int64 description: The ID of the user who last modified the text example: 235 contents: type: array description: The text contents for different languages (only present when includeContent=true) items: $ref: '#/components/schemas/TextContentResponse' attributes: type: array description: The attribute values of the text (only present when includeAttributes=true) items: $ref: '#/components/schemas/AttributeResponse' TextContentRequestBody: type: object required: - mimeType - content - languageCode properties: mimeType: type: string description: The MIME type of the text content enum: - text/plain - application/vnd.pdb.Editor example: text/plain content: type: string description: The text content in UTF-8 encoding (plain text, not base64) example: |- This is sample text content. With multiple lines. languageCode: type: string description: The language code for this text content example: en workflowStatus: type: string description: The workflow status of the text content example: draft workflowComment: type: string description: Comments related to the workflow example: Initial version SingleNewTextRequestBody: type: object required: - name - parentId - languageCode - textTypeId properties: name: type: string description: The name of the text descriptor example: Information_1 parentId: type: integer description: The ID of the parent product or group example: 1000 languageCode: type: string description: The language code for the response example: independent textTypeId: type: integer description: The ID of the text type (must be a valid enum value ID from the TEXT_TYPE attribute) example: 18834 contents: type: array description: List of text contents for different languages items: $ref: '#/components/schemas/TextContentRequestBody' treeId: type: integer description: The ID of the tree this text belongs to example: 100 attributeGroupId: type: integer description: The ID of the attribute group to assign to this text example: 500 attributes: type: array description: Optional attributes to set when creating the text items: $ref: '#/components/schemas/AttributeRequestBody' SingleUpdateTextRequestBody: type: object required: - id properties: id: type: integer description: The ID of the text descriptor to update example: 12345 name: type: string description: The name of the text descriptor example: Updated_Information_1 userObjectStatus: type: integer description: User-defined object status example: 1 textTypeId: type: integer description: The ID of the text type (must be a valid enum value ID from the TEXT_TYPE attribute) example: 18834 treeId: type: integer description: The ID of the tree this text belongs to example: 100 attributeGroupId: type: integer description: The ID of the attribute group to assign to this text example: 500 attributes: type: array description: Optional attributes to update for the text items: $ref: '#/components/schemas/AttributeRequestBody' contents: type: array description: List of text contents to update for different languages items: $ref: '#/components/schemas/TextContentRequestBody'