Categories

Categories are used to create hierarchical structures within a catalogue.Categories serves as a means for structuring products in meaningful classifications

Get ids of all categories in the system

get

Categories are used to organize products within catalogues. Categories can be nested in a hierarchy structure of any depth. The catalogue data model defines attributes which can hold data for each category. Attributes can be attached to categories in the master catalogue to define a structure of attributes available to products depending on their category placement in the master catalogue.

Authorizations
AuthorizationstringRequired
Responses
chevron-right
200

OK

application/json
integer · int32[]Optional
get
/v1/categories/ids
200

OK

Get basic models for categories

get

No more than 5000 categories can be requested at a time. If no limit is provided, the default limit of 1000 will be used

Authorizations
AuthorizationstringRequired
Query parameters
limitinteger · int32Optional

Number of categories to return

Default: 1000
afterIdinteger · int32Optional

Only get categories with id larger than this id

Responses
chevron-right
200

OK

application/json

Result set of categories from a category query

Totalinteger · int32Optional

The total number of items

Remaininginteger · int32Optional

The remaining items that lie after the last id of the item in this result set

LastIdinteger · int32Optional

The id of the last item in this result set

get
/v1/categories
200

OK

Create new categories

post

A maximum of 5000 categories can be created in one request

Authorizations
AuthorizationstringRequired
Bodyobject[]

Model for creating a new category

CatalogueUidstring · uuidOptional

Uid of catalogue to add category to

ParentIdinteger · int32 · nullableOptional

Id of parent id to place category underneath (set as null, of category shall be at root level of catalogue)

SortOrderinteger · int32 · nullableOptional

Sort order of category compared to other categories at the same level i the catalogue

Dynamicboolean · nullableOptional

Set if products for this category is found by search query set on category

WorkflowStateUidstring · uuid · nullableOptional

Workflow state to set on the category

Responses
post
/v1/categories

Delete multiple categories

delete
Authorizations
AuthorizationstringRequired
Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

No content

delete
/v1/categories
200

OK

No content

Update multiple categories

patch

A maximum of 5000 categories can be updated in one request

Authorizations
AuthorizationstringRequired
Body
Responses
chevron-right
200

OK

No content

patch
/v1/categories

No content

Get basic model for a category

get
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category

Responses
chevron-right
200

OK

application/json

Defines general information on a category

Idinteger · int32Optional

Id of category

ParentIdinteger · int32 · nullableOptional

Id of category's parent category. Null, if this category is placed in the root of its catalogue

SortOrderinteger · int32Optional

Sortorder of the category compared to other categories at the same level in the catalogue

CatalogueUidstring · uuidOptional

The unique id of the catalogue, this category resides in

Createdstring · date-timeOptional

Timestamp of the creation of category

CreatedBystring · nullableOptional

Username of user who created this category

LastModifiedstring · date-timeOptional

Timestamp of last modification of category

LastModifiedBystring · nullableOptional

Username of user who did the last modification

HasChildrenbooleanOptional

Indicates whether this category has any sub categories

DynamicbooleanOptional

Indicates whether this category is dynamic (classification handled by PIM)

WorkflowStateUidstring · uuid · nullableOptional

The uid of the workflow state of the category

get
/v1/categories/{id}
200

OK

Delete a category

delete
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category to delete

Responses
chevron-right
200

OK

No content

delete
/v1/categories/{id}
200

OK

No content

Update category

patch
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category to update

Body

Model representing a category update

SortOrderinteger · int32 · nullableOptional

Set to update sort order of category compared to other categories at the same level in the catalogue (set as null if you do not want to update this)

WorkflowStateUidstring · uuid · nullableOptional

Workflow state to set on the category

Responses
chevron-right
200

OK

No content

patch
/v1/categories/{id}
200

OK

No content

Get basic model for a batch of categories

post

#Available from v.3.2.0

Authorizations
AuthorizationstringRequired
Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

application/json

Defines general information on a category

Idinteger · int32Optional

Id of category

ParentIdinteger · int32 · nullableOptional

Id of category's parent category. Null, if this category is placed in the root of its catalogue

SortOrderinteger · int32Optional

Sortorder of the category compared to other categories at the same level in the catalogue

CatalogueUidstring · uuidOptional

The unique id of the catalogue, this category resides in

Createdstring · date-timeOptional

Timestamp of the creation of category

CreatedBystring · nullableOptional

Username of user who created this category

LastModifiedstring · date-timeOptional

Timestamp of last modification of category

LastModifiedBystring · nullableOptional

Username of user who did the last modification

HasChildrenbooleanOptional

Indicates whether this category has any sub categories

DynamicbooleanOptional

Indicates whether this category is dynamic (classification handled by PIM)

WorkflowStateUidstring · uuid · nullableOptional

The uid of the workflow state of the category

post
/v1/categories/batch
200

OK

Get child categories of a specific category

get
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category to get children for

Responses
chevron-right
200

OK

application/json

Defines general information on a category

Idinteger · int32Optional

Id of category

ParentIdinteger · int32 · nullableOptional

Id of category's parent category. Null, if this category is placed in the root of its catalogue

SortOrderinteger · int32Optional

Sortorder of the category compared to other categories at the same level in the catalogue

CatalogueUidstring · uuidOptional

The unique id of the catalogue, this category resides in

Createdstring · date-timeOptional

Timestamp of the creation of category

CreatedBystring · nullableOptional

Username of user who created this category

LastModifiedstring · date-timeOptional

Timestamp of last modification of category

LastModifiedBystring · nullableOptional

Username of user who did the last modification

HasChildrenbooleanOptional

Indicates whether this category has any sub categories

DynamicbooleanOptional

Indicates whether this category is dynamic (classification handled by PIM)

WorkflowStateUidstring · uuid · nullableOptional

The uid of the workflow state of the category

get
/v1/categories/{id}/children
200

OK

Get child categories for a range categories

post
Authorizations
AuthorizationstringRequired
Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

application/json

Defines general information on a category

Idinteger · int32Optional

Id of category

ParentIdinteger · int32 · nullableOptional

Id of category's parent category. Null, if this category is placed in the root of its catalogue

SortOrderinteger · int32Optional

Sortorder of the category compared to other categories at the same level in the catalogue

CatalogueUidstring · uuidOptional

The unique id of the catalogue, this category resides in

Createdstring · date-timeOptional

Timestamp of the creation of category

CreatedBystring · nullableOptional

Username of user who created this category

LastModifiedstring · date-timeOptional

Timestamp of last modification of category

LastModifiedBystring · nullableOptional

Username of user who did the last modification

HasChildrenbooleanOptional

Indicates whether this category has any sub categories

DynamicbooleanOptional

Indicates whether this category is dynamic (classification handled by PIM)

WorkflowStateUidstring · uuid · nullableOptional

The uid of the workflow state of the category

post
/v1/categories/batch/children
200

OK

Get ids of products in a category

get
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category to get products for

Query parameters
includeArchivedbooleanOptional

Include archived products

Default: false
Responses
chevron-right
200

OK

application/json
integer · int32[]Optional
get
/v1/categories/{id}/products
200

OK

Get ids of products in a categories

post
Authorizations
AuthorizationstringRequired
Body

Wrapper for product children batch query

CategoryIdsinteger · int32[] · nullableOptional

Category ids to request products for

IncludeArchivedbooleanOptional

Indicate whether archibed products shall also be included

Responses
chevron-right
200

OK

application/json
Other propertiesinteger · int32[]Optional
post
/v1/categories/batch/products
200

OK

Get the number of products in a category

get
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category to get product count for

Query parameters
includeArchivedbooleanOptional

Include archived products in count

Default: false
Responses
chevron-right
200

OK

application/json
integer · int32Optional
get
/v1/categories/{id}/products/count
200

OK

Get the number of products in a batch of categories

post
Authorizations
AuthorizationstringRequired
Body

Wrapper for product children batch query

CategoryIdsinteger · int32[] · nullableOptional

Category ids to request products for

IncludeArchivedbooleanOptional

Indicate whether archibed products shall also be included

Responses
chevron-right
200

OK

application/json
Other propertiesinteger · int32Optional
post
/v1/categories/batch/products/count
200

OK

Get all identifiers and their internal ids for a specific identifier type

get

Use to get a map from an identifier to the internal id of a category in the system. Identifiers are based on attribute values that hold references to external systems. Thus, the identifier can be the id of the category in an external system. You can then use this map to know which category id to update or delete based on the id of the corresponding category in the external system

Authorizations
AuthorizationstringRequired
Path parameters
identifierAliasstringRequired

Alias of identifier type

Responses
chevron-right
200

OK

application/json
Other propertiesinteger · int32Optional
get
/v1/categories/identifiers/{identifierAlias}
200

OK

Get the internal id of a category based on its identifier

get

Use to get a map from an identifier to the internal id of a category in the system. Identifiers are based on attribute values that hold references to external systems. Thus, the identifier can be the id of the category in an external system. You can then use this map to know which category id to update or delete based on the id of the corresponding category in the external system

Authorizations
AuthorizationstringRequired
Path parameters
identifierAliasstringRequired

Alias of identifier type

identifierstringRequired

Identifier value

Responses
chevron-right
200

OK

application/json
integer · int32Optional
get
/v1/categories/identifiers/{identifierAlias}/{identifier}
200

OK

Get internal ids of multiple categories from their identifier

post

Use to get a map from an identifier to the internal id of a category in the system. Identifiers are based on attribute values that hold references to external systems. Thus, the identifier can be the id of the category in an external system. You can then use this map to know which category id to update or delete based on the id of the corresponding category in the external system

Authorizations
AuthorizationstringRequired
Body

Provide an identifier alias along with an array of identifiers to get the internal entity ids matching those identifiers

IdentifierAliasstring · nullableOptional

The alias of the identifier

Identifiersstring[] · nullableOptional

Array of identifiers to return internal ids for

Responses
chevron-right
200

OK

application/json
Other propertiesinteger · int32Optional
post
/v1/categories/batch/identifiers
200

OK

Get attribute values for the category

get
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category

Query parameters
globalListValueReferencesOnlybooleanOptional

Indicate if only uids of referenced to global list values shall be returned instead of the materialized values

Default: false
Responses
chevron-right
200

OK

application/json

Category attribute values container

CategoryIdinteger · int32Optional

Id of category

get
/v1/categories/{id}/attributevalues
patch
Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category

Body
Other propertiesanyOptional
Responses
chevron-right
200

OK

No content

patch
/v1/categories/{id}/attributevalues
200

OK

No content

Get attribute values for multiple categories

post

No more than 5000 categories can be requested at a time.

Authorizations
AuthorizationstringRequired
Body

Define which categories to fetch data for and what data to fetch

CategoryIdsinteger · int32[] · nullableOptional

Ids of categories to return

IncludeValuesinteger · enumOptional

Defines which attribute values to return

  • 1 = All: Return all attribute values
  • 2 = Scopes: Return values for scopes specified in request
  • 3 = Aliases: Return values for attribute aliases specified in request
  • 4 = ScopesAndAliases: Return values for attributes in specified scopes, plus values in the attributes specified by alias
  • 5 = Uids: Return values for attribute uids specified in request
Possible values:
Scopesstring[] · nullableOptional

If IncludeValues is Scopes, define which scopes to return values for here

Aliasesstring[] · nullableOptional

If IncludeValues is Aliases, define aliases of the attributes to include values for

Uidsstring · uuid[] · nullableOptional

If IncludeValues is Uids, define uids of the attributes to include values for

LimitToCultureCodesstring[] · nullableOptional

Only return values for specific languages

LimitToSegmentsstring[] · nullableOptional

Only return values for specific dimension segments

GlobalListValueReferencesOnlybooleanOptional

Indicate if only uids of referenced to global list values shall be returned instead of the materialized values

FromTimestampstring · date-time · nullableOptional

Get attribute values back in time

Responses
chevron-right
200

OK

application/json

Category attribute values container

CategoryIdinteger · int32Optional

Id of category

post
/v1/categories/batch/attributevalues

Update attribute values on multiple categories

patch

A maximum of 5000 categories can be updated in one request

Authorizations
AuthorizationstringRequired
Bodyobject[]

Category attribute values container

CategoryIdinteger · int32Optional

Id of category

Responses
chevron-right
200

OK

No content

patch
/v1/categories/attributevalues
200

OK

No content

Get product attributes on category

get
Authorizations
AuthorizationstringRequired
Query parameters
categoryIdinteger · int32Optional

Id of category to get attached attributes from

Responses
chevron-right
200

OK

application/json

Represents an attribute connection to a category in the master catalogue

AttributeUidstring · uuidOptional

Uid of attribute

CategoryIdinteger · int32Optional

Id of category to which the attribute is connected

Ownerinteger · int32Optional

Id of the category at which this connection originates (will be different from category id if this attachment is inherited from a higher level category)

EditableOnEntitiesinteger · enumOptional

Represents where attributes added to categories are editable on entities placed in that category

  • 0 = ProductAndVariant: Attributes are editable on both products and variants
  • 1 = Product: Attributes are editable on products only
  • 2 = Variant: Attributes are editable on variants only
  • 3 = None: Attributes are not editable on any entity
Possible values:
SortOrderinteger · int32 · nullableOptional

Sort order of the attribute

get
/v1/categories/productattributes
200

OK

Attach attribute to a category, which is to be visible to products in that category

post
Authorizations
AuthorizationstringRequired
Query parameters
categoryIdinteger · int32Optional

Id of category to attach attribute to

attributeUidstring · uuidOptional

Uid of attribute to attach

editableOnEntitiesinteger · enumOptional

Represents where attributes added to categories are editable on entities placed in that category

  • 0 = ProductAndVariant: Attributes are editable on both products and variants
  • 1 = Product: Attributes are editable on products only
  • 2 = Variant: Attributes are editable on variants only
  • 3 = None: Attributes are not editable on any entity
Possible values:
sortOrderinteger · int32Optional

Sort order of attribute on category

Responses
chevron-right
200

OK

No content

post
/v1/categories/productattributes

No content

Remove a product attribute from a category

delete
Authorizations
AuthorizationstringRequired
Query parameters
categoryIdinteger · int32Optional

Id of category the attribute is attached to

attributeUidstring · uuidOptional

Uid of attached attribute

Responses
chevron-right
200

OK

No content

delete
/v1/categories/productattributes
200

OK

No content

Update attribute on a category

patch
Authorizations
AuthorizationstringRequired
Query parameters
categoryIdinteger · int32Optional

Id of category the attribute is attached to

attributeUidstring · uuidOptional

Uid of attached attribute

editableOnEntitiesinteger · enumOptional

Represents where attributes added to categories are editable on entities placed in that category

  • 0 = ProductAndVariant: Attributes are editable on both products and variants
  • 1 = Product: Attributes are editable on products only
  • 2 = Variant: Attributes are editable on variants only
  • 3 = None: Attributes are not editable on any entity
Possible values:
sortOrderinteger · int32Optional

Sort order of attribute on category

Responses
chevron-right
200

OK

No content

patch
/v1/categories/productattributes
200

OK

No content

Get references to a category

get

#Available from v.3.5.0

Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category

Responses
chevron-right
200

OK

application/json

Model holding references from other entities to a category

CategoryIdinteger · int32Optional

Id of the referenced category

ReferencingGlobalListValuesstring · uuid[] · nullableOptional

List of global list values referencing this category

get
/v1/categories/{id}/references
200

OK

Get references to a batch of categories

post

#Available from v.3.5.0 No more than 5000 values can be requested at a time.

Authorizations
AuthorizationstringRequired
Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

application/json

Model holding references from other entities to a category

CategoryIdinteger · int32Optional

Id of the referenced category

ReferencingGlobalListValuesstring · uuid[] · nullableOptional

List of global list values referencing this category

post
/v1/categories/batch/references
200

OK

Get Enrichment Insights for a category

get

#Available from v.3.5.0

Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category to get insights for

Responses
chevron-right
200

OK

application/json

Model representing an entity's enrichment insight

EnrichmentInsightSetupUidstring · uuidOptional

Uid of enrichment insight

EntityIdinteger · int32Optional

Id of entity

Completenessinteger · int32 · nullableOptional

Completeness in percentage (0 - 100). Is null, if ignored is true

IgnoredbooleanOptional

Indicates whether the completeness is ignored for this entity and this enrichment insight

get
/v1/categories/{id}/enrichmentinsights
200

OK

Get Enrichment Insights for a batch of categories

post

#Available from v.3.5.0

Authorizations
AuthorizationstringRequired
Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

application/json

Model representing an entity's enrichment insight

EnrichmentInsightSetupUidstring · uuidOptional

Uid of enrichment insight

EntityIdinteger · int32Optional

Id of entity

Completenessinteger · int32 · nullableOptional

Completeness in percentage (0 - 100). Is null, if ignored is true

IgnoredbooleanOptional

Indicates whether the completeness is ignored for this entity and this enrichment insight

post
/v1/categories/batch/enrichmentinsights
200

OK

Get insights for a batch of categories and a specific Enrichment Insight

post

#Available from v.3.5.0

Authorizations
AuthorizationstringRequired
Path parameters
enrichmentInsightUidstring · uuidRequired

Uid of enrichment insight to get for batch of categories

Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

application/json

Model representing an entity's enrichment insight

EnrichmentInsightSetupUidstring · uuidOptional

Uid of enrichment insight

EntityIdinteger · int32Optional

Id of entity

Completenessinteger · int32 · nullableOptional

Completeness in percentage (0 - 100). Is null, if ignored is true

IgnoredbooleanOptional

Indicates whether the completeness is ignored for this entity and this enrichment insight

post
/v1/categories/batch/enrichmentinsights/{enrichmentInsightUid}
200

OK

Enable or disable an enrichment insight for a category

patch

#Available from v.3.5.0

Authorizations
AuthorizationstringRequired
Path parameters
idinteger · int32Required

Id of category

enrichmentInsightSetupUidstring · uuidRequired

Uid of enrichment insight to toggle ignore for

ignorebooleanRequired

Indicate whether to ignore the insight for the given enrichment insight and category

Responses
chevron-right
200

OK

No content

patch
/v1/categories/{id}/enrichmentinsights/{enrichmentInsightSetupUid}/{ignore}
200

OK

No content

Enable or disable an enrichment insight for a batch of categories

patch

#Available from v.3.5.0

Authorizations
AuthorizationstringRequired
Path parameters
enrichmentInsightSetupUidstring · uuidRequired

Uid of enrichment insight to toggle ignore for

ignorebooleanRequired

Indicate whether to ignore the insight for the given enrichment insight and categories

Bodyinteger · int32[]
integer · int32[]Optional
Responses
chevron-right
200

OK

No content

patch
/v1/categories/batch/enrichmentinsights/{enrichmentInsightSetupUid}/{ignore}
200

OK

No content

Get ids of categories matching certain criteria

post
Authorizations
AuthorizationstringRequired
Body

Search model used for searching products or variants in PIM

IncludeArchivedbooleanOptional

Include archived items in result

Responses
chevron-right
200

OK

application/json
integer · int32[]Optional
post
/v1/categories/search
200

OK

Get paged result of categories matching certain criteria. Result mapped with headers and item results

post
Authorizations
AuthorizationstringRequired
Body

Extended search model used for searching products or variants in PIM with support for paging and sorting

Pageinteger · int32Optional
PageSizeinteger · int32 · nullableOptional
FieldUidsstring[] · nullableOptional
SortByFieldUidstring · nullableOptional
SortDescendingboolean · nullableOptional
IncludeArchivedbooleanOptional

Include archived items in result

Responses
chevron-right
200

OK

application/json
TotalHitsinteger · int32Optional
Pageinteger · int32Optional
PageSizeinteger · int32Optional
TotalPagesinteger · int32Optional
post
/v1/categories/search/paged
200

OK

Get all available query fields in the PIM installation

get
Authorizations
AuthorizationstringRequired
Responses
chevron-right
200

OK

application/json

Representation of a queryable field in PIM

Uidstring · nullableOptional

Unique id of field in PIM

Namestring · nullableOptional

The display name of the field

SupportsSortingbooleanOptional

If true field can be used for sorting

get
/v1/categories/queryablefields
200

OK

Last updated