# VariantGroups
#Available from v.3.11.0 Variant groups are used to contain data for a group of variants on a product. Variant group entities contain attribute data, classifications in categories and variants. The data model for variant groups are described by product structures.
GET /variantgroups Get basic models for variant groups
No more than 5000 variant groups can be requested at a time. If no limit is provided, the default limit of 1000 will be used. By default, archived variant groups are not returned
{
"VariantGroups": [
{
"Id": 18,
"Name": {
"en-GB": "Red",
"da-DK": "Rød"
},
"Created": "2025-05-19T15:17:55.0898269+02:00",
"CreatedBy": "Struct",
"LastModified": "2025-05-19T15:17:55.0898269+02:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 1
},
{
"Id": 19,
"Name": {
"en-GB": "Green",
"da-DK": "Grøn"
},
"Created": "2025-02-08T14:17:55.0898269+01:00",
"CreatedBy": "Struct",
"LastModified": "2024-12-20T14:17:55.0898269+01:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 2
},
{
"Id": 20,
"Name": {
"en-GB": "Blue",
"da-DK": "Blå"
},
"Created": "2024-11-25T14:17:55.0898269+01:00",
"CreatedBy": "Struct",
"LastModified": "2024-11-25T14:17:55.0898269+01:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 3
}
],
"Total": 2003,
"Remaining": 2000,
"LastId": 20
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
includeArchived | query | boolean |
Include archived variant groups |
limit | query | integer |
Number of variant groups to return |
afterId | query | integer |
Only return variant groups with id larger than this value |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
VariantGroups | array : VariantGroupModel |
List of variant groups in result set |
Total | integer |
The total number of items |
Remaining | integer |
The remaining items that lie after the last id of the item in this result set |
LastId | integer |
The id of the last item in this result set |
Property name | Data type | Description |
---|---|---|
Id | integer |
Unique id of the variant group |
Name | object |
Display name of variant group (Dictionary of ISO culture code and name) |
Created | string |
Timestamp of the variant group creation |
CreatedBy | string |
Username of the user who created the variant group |
LastModified | string |
Timestamp of the last variant group update |
LastModifiedBy | string |
Username of the user who made the last change to the variant group |
IsArchived | boolean |
Indicates whether the variant group is archived |
ArchiveReason | string |
The uid of the archive reason selected when the variant group was archived |
ProductId | integer |
The id of the product to which the variant group is associated |
SortOrder | integer |
The sortorder of the variant group in relation to its associated product |
WorkflowStateUid | string |
The uid of the workflow state of the variant group |
POST /variantgroups Create new variant groups
A maximum of 5000 variant groups can be created in one request
[
{
"ProductId": 2331,
"Classifications": [
{
"CategoryId": 392,
"OwnerReference": "ERP",
"SortOrder": 2
},
{
"CategoryId": 23,
"SortOrder": 1
}
],
"Values": {
"Name": "Red T-Shirt",
"PrimaryImage": "3013",
"ExtraImage": [
"2566",
"5155",
"5664"
],
"Description": [
{
"CultureCode": "en-GB",
"Data": "Nice red T-shirt"
},
{
"CultureCode": "da-DK",
"Data": "Lækker rød T-shirt"
}
]
}
},
{
"ProductId": 2331,
"Classifications": [
{
"CategoryId": 392,
"OwnerReference": "ERP",
"SortOrder": 2
}
],
"Values": {
"Name": "Apple Iphone 12 Pro",
"PrimaryImage": "222",
"ExtraImage": [
"5654",
"789",
"2589"
],
"Description": [
{
"CultureCode": "en-GB",
"Data": "Nice blue T-shirt"
},
{
"CultureCode": "da-DK",
"Data": "Lækker blå T-shirt"
}
]
}
}
]
[
10024,
10025,
10026
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroups | body | array : CreateVariantGroupModel |
VariantGroups |
Property name | Data type | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ProductId | integer |
Product to associate variant group to |
||||||||||||||||||||||||||||
Classifications | array : VariantGroupClassificationModel |
Classifications for variant group |
||||||||||||||||||||||||||||
WorkflowStateUid | string |
Workflow state to set on the variant group |
||||||||||||||||||||||||||||
Values | object |
Dictionary of attribute alias and the corresponding attribute value as an object representation The table below shows how different attributes translates to this value model.
|
Property name | Data type | Description |
---|---|---|
CategoryId | integer |
Id of category the variant group is placed in |
OwnerReference | string |
A reference to where this classification comes from. If the classification is made in the PIM interface, this will be null. When creating or updating classifications of variant groups through API this can be set to any value. Thus, classifications made from the API can be distinguished from those made directly in the UI |
SortOrder | integer |
Sort order of the variant group in this category |
Response status OK (200)
DELETE /variantgroups Delete multiple variant groups
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroupIds | body | array : integer |
Ids of variant groups to delete |
Response status OK (200)
PATCH /variantgroups Update multiple variant groups
[
{
"VariantGroupId": 20111,
"UpdateModel": {
"Values": {
"Name": "Red T-Shirt",
"PrimaryImage": "3013"
}
}
},
{
"VariantGroupId": 5635,
"UpdateModel": {
"Classifications": [
{
"CategoryId": 392,
"OwnerReference": "ERP",
"SortOrder": 2
},
{
"CategoryId": 23,
"SortOrder": 1
}
]
}
},
{
"VariantGroupId": 18863,
"UpdateModel": {
"Classifications": [
{
"CategoryId": 392,
"OwnerReference": "ERP",
"SortOrder": 2
},
{
"CategoryId": 23,
"SortOrder": 1
}
],
"Values": {
"Description": [
{
"CultureCode": "en-GB",
"Data": "Nice red T-shirt"
},
{
"CultureCode": "da-DK",
"Data": "Lækker rød T-shirt"
}
]
}
}
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroups | body | array : BatchUpdateVariantGroupModel |
Update model |
Property name | Data type | Description |
---|---|---|
VariantGroupId | integer |
Id of variant group to update |
UpdateModel | object : UpdateVariantGroupModel |
Model containing updates to make on variant group (properties with null values are ignored and does not cause an update) |
Property name | Data type | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
IsArchived | boolean |
Indicate whether the variant group shall be archived or un-archived |
||||||||||||||||||||||||||||
ArchiveReason | string |
Reference to the archive reason when archiving variant group (if IsArchived is true) |
||||||||||||||||||||||||||||
Classifications | array : VariantGroupClassificationModel |
Categories to add the variant group to |
||||||||||||||||||||||||||||
WorkflowStateUid | string |
Workflow state to set on the variant group |
||||||||||||||||||||||||||||
Values | object |
Dictionary of attribute alias and the corresponding attribute value as an object representation The table below shows how different attributes translates to this value model.
|
Property name | Data type | Description |
---|---|---|
CategoryId | integer |
Id of category the variant group is placed in |
OwnerReference | string |
A reference to where this classification comes from. If the classification is made in the PIM interface, this will be null. When creating or updating classifications of variant groups through API this can be set to any value. Thus, classifications made from the API can be distinguished from those made directly in the UI |
SortOrder | integer |
Sort order of the variant group in this category |
Response status OK (200)
GET /variantgroups/{id} Get basic model for a variant group
{
"Id": 2011,
"Name": {
"en-GB": "Red",
"da-DK": "Rød"
},
"Created": "2025-05-19T15:17:55.0678086+02:00",
"CreatedBy": "Struct",
"LastModified": "2025-05-19T15:17:55.0678086+02:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 1
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group to return |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
Id | integer |
Unique id of the variant group |
Name | object |
Display name of variant group (Dictionary of ISO culture code and name) |
Created | string |
Timestamp of the variant group creation |
CreatedBy | string |
Username of the user who created the variant group |
LastModified | string |
Timestamp of the last variant group update |
LastModifiedBy | string |
Username of the user who made the last change to the variant group |
IsArchived | boolean |
Indicates whether the variant group is archived |
ArchiveReason | string |
The uid of the archive reason selected when the variant group was archived |
ProductId | integer |
The id of the product to which the variant group is associated |
SortOrder | integer |
The sortorder of the variant group in relation to its associated product |
WorkflowStateUid | string |
The uid of the workflow state of the variant group |
DELETE /variantgroups/{id} Delete a variant group
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group to delete |
Response status OK (200)
PATCH /variantgroups/{id} Update a variant group
{
"Classifications": [
{
"CategoryId": 392,
"OwnerReference": "ERP",
"SortOrder": 2
},
{
"CategoryId": 23,
"SortOrder": 1
}
],
"Values": {
"Description": [
{
"CultureCode": "en-GB",
"Data": "Nice red T-shirt"
},
{
"CultureCode": "da-DK",
"Data": "Lækker rød T-shirt"
}
]
}
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
model | body | object : UpdateVariantGroupModel |
Update model |
Property name | Data type | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
IsArchived | boolean |
Indicate whether the variant group shall be archived or un-archived |
||||||||||||||||||||||||||||
ArchiveReason | string |
Reference to the archive reason when archiving variant group (if IsArchived is true) |
||||||||||||||||||||||||||||
Classifications | array : VariantGroupClassificationModel |
Categories to add the variant group to |
||||||||||||||||||||||||||||
WorkflowStateUid | string |
Workflow state to set on the variant group |
||||||||||||||||||||||||||||
Values | object |
Dictionary of attribute alias and the corresponding attribute value as an object representation The table below shows how different attributes translates to this value model.
|
Property name | Data type | Description |
---|---|---|
CategoryId | integer |
Id of category the variant group is placed in |
OwnerReference | string |
A reference to where this classification comes from. If the classification is made in the PIM interface, this will be null. When creating or updating classifications of variant groups through API this can be set to any value. Thus, classifications made from the API can be distinguished from those made directly in the UI |
SortOrder | integer |
Sort order of the variant group in this category |
Response status OK (200)
GET /variantgroups/{id}/attributevalues Get attribute values for a variant group
{
"VariantGroupId": 2011,
"Values": {
"Name": "Red T-shirt",
"PrimaryImage": "3013",
"ExtraImage": [
"2566",
"5155",
"5664"
],
"Description": [
{
"CultureCode": "en-GB",
"Data": "Very nice and beautiful T-shirt"
},
{
"CultureCode": "da-DK",
"Data": "Flot og lækker T-shirt"
}
]
}
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
globalListValueReferencesOnly | query | boolean |
Indicate if only uids of referenced to global list values shall be returned instead of the materialized values |
Response status OK (200)
Property name | Data type | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
VariantGroupId | integer |
Id of variant group |
||||||||||||||||||||||||||||
Values | object |
Dictionary of attribute alias and the corresponding attribute value as an object representation The table below shows how different attributes translates to this value model.
|
GET /variantgroups/{id}/classifications Get category classifications for a variant group
[
{
"CategoryId": 12,
"SortOrder": 1
},
{
"CategoryId": 1202,
"SortOrder": 3
},
{
"CategoryId": 27,
"OwnerReference": "ERP",
"SortOrder": 12
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
CategoryId | integer |
Id of category the variant group is placed in |
OwnerReference | string |
A reference to where this classification comes from. If the classification is made in the PIM interface, this will be null. When creating or updating classifications of variant groups through API this can be set to any value. Thus, classifications made from the API can be distinguished from those made directly in the UI |
SortOrder | integer |
Sort order of the variant group in this category |
POST /variantgroups/{id}/classifications Add category classifications to a variant group
[
{
"CategoryId": 25,
"OwnerReference": "ERP",
"SortOrder": 30
},
{
"CategoryId": 27,
"SortOrder": 21
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
classifications | body | array : VariantGroupClassificationModel |
Model with variant group id and categories to classify the variant group in |
Property name | Data type | Description |
---|---|---|
CategoryId | integer |
Id of category the variant group is placed in |
OwnerReference | string |
A reference to where this classification comes from. If the classification is made in the PIM interface, this will be null. When creating or updating classifications of variant groups through API this can be set to any value. Thus, classifications made from the API can be distinguished from those made directly in the UI |
SortOrder | integer |
Sort order of the variant group in this category |
Response status OK (200)
DELETE /variantgroups/{id}/classifications Remove category classifications from a variant group
[
265,
88,
27
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
categoryIds | body | array : integer |
category ids to remove the variant group from |
Response status OK (200)
GET /variantgroups/{id}/enrichmentinsights Get Enrichment Insights for a variant group
[
{
"EnrichmentInsightSetupUid": "b9ab083f-d622-4eba-b273-4a9bf26a3a03",
"EntityId": 1974035,
"Completeness": 50,
"MissingData": [
{
"Type": "AttributeInsightsDataReference",
"DataReference": "f9a52541-5712-406b-b4b6-04a94399e00f_9_NA"
}
],
"Ignored": false
},
{
"EnrichmentInsightSetupUid": "731a399b-f61c-48d4-b1c0-251a20d7125a",
"EntityId": 1974035,
"Completeness": 100,
"MissingData": [],
"Ignored": false
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group to get insights for |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
EnrichmentInsightSetupUid | string |
Uid of enrichment insight |
EntityId | integer |
Id of entity |
Completeness | integer |
Completeness in percentage (0 - 100). Is null, if ignored is true |
MissingData | array : InsightDataReference |
List of missing data for this entity to reach 100% completeness for this enrichment insight |
Ignored | boolean |
Indicates whether the completeness is ignored for this entity and this enrichment insight |
Property name | Data type | Description |
---|---|---|
Type | string |
Type of data reference |
DataReference | string |
The data reference itself |
PATCH /variantgroups/{id}/enrichmentinsights/{enrichmentInsightSetupUid}/{ignore} Enable or disable an enrichment insight for a variant group
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
enrichmentInsightSetupUid | path | string |
Uid of enrichment insight to toggle ignore for |
ignore | path | boolean |
Indicate whether to ignore the insight for the given enrichment insight and variant groups |
Response status OK (200)
GET /variantgroups/{id}/references Get references to a variant group
{
"VariantGroupId": 12,
"ReferencingCategories": [
{
"EntityId": 100,
"AttributeUid": "3e2ac7dc-b112-4560-bec0-a8a0c0b201c8"
},
{
"EntityId": 101,
"AttributeUid": "3e2ac7dc-b112-4560-bec0-a8a0c0b201c8"
}
],
"ReferencingProducts": [
{
"EntityId": 100010,
"AttributeUid": "aee7c18b-0c76-4797-8ec0-31c96202cd17"
},
{
"EntityId": 100011,
"AttributeUid": "aee7c18b-0c76-4797-8ec0-31c96202cd17"
},
{
"EntityId": 102354,
"AttributeUid": "c8c54a0b-d9e3-4ec1-8b0e-db3357b2b4aa"
}
],
"ReferencingVariantGroups": [],
"ReferencingVariants": [
{
"EntityId": 100,
"AttributeUid": "aee7c18b-0c76-4797-8ec0-31c96202cd17"
}
],
"ReferencingGlobalListValues": [
"4a000715-d3c0-4fbd-8d6b-26a91bb3992a",
"93ec6e9f-85fd-48de-92a2-874e7ff0fe62"
]
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
VariantGroupId | integer |
Id of the referenced variant group |
ReferencingCategories | array : EntityReferenceDetail |
List of categories referencing this variant group |
ReferencingProducts | array : EntityReferenceDetail |
List of products referencing this variant group |
ReferencingVariantGroups | array : EntityReferenceDetail |
List of variant groups referencing this variant group |
ReferencingVariants | array : EntityReferenceDetail |
List of variants referencing this variant group |
ReferencingGlobalListValues | array |
List of global list values referencing this variant group |
Property name | Data type | Description |
---|---|---|
EntityId | integer |
The id of the referencing entity |
AttributeUid | string |
The attribute on the referencing entity that holds the reference |
GET /variantgroups/{id}/variants Get ids of variants of a variant group
[
12544,
5353,
56843,
8865,
1556
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
id | path | integer |
Id of variant group |
includeArchived | query | boolean |
Return ids of archived variants as well |
Response status OK (200)
POST /variantgroups/batch Get basic model for a range of variant groups
[
{
"Id": 2011,
"Name": {
"en-GB": "Red",
"da-DK": "Rød"
},
"Created": "2025-05-19T15:17:55.0838216+02:00",
"CreatedBy": "Struct",
"LastModified": "2025-05-19T15:17:55.0838216+02:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 1
},
{
"Id": 2012,
"Name": {
"en-GB": "Green",
"da-DK": "Grøn"
},
"Created": "2025-02-08T14:17:55.0838216+01:00",
"CreatedBy": "Struct",
"LastModified": "2024-12-20T14:17:55.0838216+01:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 2
},
{
"Id": 2013,
"Name": {
"en-GB": "Blue",
"da-DK": "Blå"
},
"Created": "2024-11-25T14:17:55.0838216+01:00",
"CreatedBy": "Struct",
"LastModified": "2024-11-25T14:17:55.0838216+01:00",
"LastModifiedBy": "Struct",
"IsArchived": false,
"ProductId": 1254,
"SortOrder": 3
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
ids | body | array : integer |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
Id | integer |
Unique id of the variant group |
Name | object |
Display name of variant group (Dictionary of ISO culture code and name) |
Created | string |
Timestamp of the variant group creation |
CreatedBy | string |
Username of the user who created the variant group |
LastModified | string |
Timestamp of the last variant group update |
LastModifiedBy | string |
Username of the user who made the last change to the variant group |
IsArchived | boolean |
Indicates whether the variant group is archived |
ArchiveReason | string |
The uid of the archive reason selected when the variant group was archived |
ProductId | integer |
The id of the product to which the variant group is associated |
SortOrder | integer |
The sortorder of the variant group in relation to its associated product |
WorkflowStateUid | string |
The uid of the workflow state of the variant group |
POST /variantgroups/batch/attributevalues Get attribute values for multiple variant groups
No more than 5000 variant groups can be requested at a time.
[
{
"VariantGroupId": 2011,
"Values": {
"Name": "Red T-shirt",
"PrimaryImage": "3013",
"ExtraImage": [
"2566",
"5155",
"5664"
],
"Description": [
{
"CultureCode": "en-GB",
"Data": "Very nice and beautiful T-shirt"
},
{
"CultureCode": "da-DK",
"Data": "Flot og lækker T-shirt"
}
]
}
},
{
"VariantGroupId": 54698,
"Values": {
"Name": "Green T-shirt",
"PrimaryImage": "222",
"ExtraImage": [
"5654",
"789",
"2589"
],
"Description": [
{
"CultureCode": "en-GB",
"Data": "Very nice T-shirt in premium quality"
},
{
"CultureCode": "da-DK",
"Data": "Flot og lækker T-shirt i premium kvalitet"
}
]
}
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
model | body | object : VariantGroupValuesRequestModel |
Request model |
Property name | Data type | Description |
---|---|---|
VariantGroupIds | array |
Ids of variant groups to return |
IncludeValues | string |
Select if any source of values shall be returned |
Scopes | array |
If IncludeValues is Scopes, define which scopes to return values for here |
Aliases | array |
If IncludeValues is Aliases, define aliases of the attributes to include values for |
Uids | array |
If IncludeValues is Uids, define uids of the attributes to include values for |
LimitToCultureCodes | array |
Only return values for specific languages |
LimitToSegments | array |
Only return values for specific dimension segments |
GlobalListValueReferencesOnly | boolean |
Indicate if only uids of referenced to global list values shall be returned instead of the materialized values |
FromTimestamp | string |
Get attribute values back in time |
Response status OK (200)
Property name | Data type | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
VariantGroupId | integer |
Id of variant group |
||||||||||||||||||||||||||||
Values | object |
Dictionary of attribute alias and the corresponding attribute value as an object representation The table below shows how different attributes translates to this value model.
|
POST /variantgroups/batch/classifications Get category classifications for a batch of variant groups
[
2003,
2325,
69866
]
{
"2003": [
{
"CategoryId": 12,
"OwnerReference": "ERP",
"SortOrder": 1
},
{
"CategoryId": 1202,
"SortOrder": 3
},
{
"CategoryId": 27,
"SortOrder": 12
}
],
"2325": [
{
"CategoryId": 12,
"OwnerReference": "ERP",
"SortOrder": 2
},
{
"CategoryId": 27,
"SortOrder": 3
}
],
"69866": [
{
"CategoryId": 27,
"SortOrder": 1
}
]
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroupIds | body | array : integer |
Model containing batch of variant group ids |
Response status OK (200)
POST /variantgroups/batch/enrichmentinsights Get Enrichment Insights for a batch of variant groups
[
{
"EnrichmentInsightSetupUid": "4e72d0fb-ef41-47ae-b031-2b90a7913ac9",
"EntityId": 1974035,
"Completeness": 50,
"MissingData": [
{
"Type": "AttributeInsightsDataReference",
"DataReference": "f9a52541-5712-406b-b4b6-04a94399e00f_9_NA"
}
],
"Ignored": false
},
{
"EnrichmentInsightSetupUid": "4e72d0fb-ef41-47ae-b031-2b90a7913ac9",
"EntityId": 1974043,
"Completeness": 100,
"MissingData": [],
"Ignored": false
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroupIds | body | array : integer |
Ids of variant groups to get insights for |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
EnrichmentInsightSetupUid | string |
Uid of enrichment insight |
EntityId | integer |
Id of entity |
Completeness | integer |
Completeness in percentage (0 - 100). Is null, if ignored is true |
MissingData | array : InsightDataReference |
List of missing data for this entity to reach 100% completeness for this enrichment insight |
Ignored | boolean |
Indicates whether the completeness is ignored for this entity and this enrichment insight |
Property name | Data type | Description |
---|---|---|
Type | string |
Type of data reference |
DataReference | string |
The data reference itself |
PATCH /variantgroups/batch/enrichmentinsights/{enrichmentInsightSetupUid}/{ignore} Enable or disable an enrichment insight for a batch of variant groups
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroupIds | body | array : integer |
Ids of variant groups to toggle ignore for |
enrichmentInsightSetupUid | path | string |
Uid of enrichment insight to toggle ignore for |
ignore | path | boolean |
Indicate whether to ignore the insight for the given enrichment insight and variant groups |
Response status OK (200)
POST /variantgroups/batch/enrichmentinsights/{enrichmentInsightUid} Get insights for a batch of variant groups and a specific Enrichment Insight
[
{
"EnrichmentInsightSetupUid": "4b609ee9-9859-4432-acb1-10d072683282",
"EntityId": 1974035,
"Completeness": 50,
"MissingData": [
{
"Type": "AttributeInsightsDataReference",
"DataReference": "f9a52541-5712-406b-b4b6-04a94399e00f_9_NA"
}
],
"Ignored": false
},
{
"EnrichmentInsightSetupUid": "4b609ee9-9859-4432-acb1-10d072683282",
"EntityId": 1974043,
"Completeness": 100,
"MissingData": [],
"Ignored": false
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroupIds | body | array : integer |
Ids of variant groups to get insights for |
enrichmentInsightUid | path | string |
Uid of enrichment insight to get for batch of variant groups |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
EnrichmentInsightSetupUid | string |
Uid of enrichment insight |
EntityId | integer |
Id of entity |
Completeness | integer |
Completeness in percentage (0 - 100). Is null, if ignored is true |
MissingData | array : InsightDataReference |
List of missing data for this entity to reach 100% completeness for this enrichment insight |
Ignored | boolean |
Indicates whether the completeness is ignored for this entity and this enrichment insight |
Property name | Data type | Description |
---|---|---|
Type | string |
Type of data reference |
DataReference | string |
The data reference itself |
POST /variantgroups/batch/identifiers Get internal ids of multiple variant groups from their identifier
{
"5796359512359": 10000,
"5756525697563": 11012,
"5756326985442": 15133,
"5799645384354": null
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
model | body | object : IdentifierBatchModel |
Specify alias of identifier type and the identifiers to return internal ids for |
Property name | Data type | Description |
---|---|---|
IdentifierAlias | string |
The alias of the identifier |
Identifiers | array |
Array of identifiers to return internal ids for |
Response status OK (200)
POST /variantgroups/batch/references Get references to a batch of variant groups
No more than 5000 values can be requested at a time.
[
{
"VariantGroupId": 12,
"ReferencingCategories": [
{
"EntityId": 100,
"AttributeUid": "d49b5081-e918-439c-b419-aebfbf7d8599"
},
{
"EntityId": 101,
"AttributeUid": "d49b5081-e918-439c-b419-aebfbf7d8599"
}
],
"ReferencingProducts": [
{
"EntityId": 100010,
"AttributeUid": "2181dce1-ba09-4c21-95c3-a697472c48ad"
},
{
"EntityId": 100011,
"AttributeUid": "2181dce1-ba09-4c21-95c3-a697472c48ad"
},
{
"EntityId": 102354,
"AttributeUid": "973b5494-b7a2-4aaf-9e68-b0d8ea2e18aa"
}
],
"ReferencingVariantGroups": [],
"ReferencingVariants": [
{
"EntityId": 100,
"AttributeUid": "2181dce1-ba09-4c21-95c3-a697472c48ad"
}
],
"ReferencingGlobalListValues": [
"a3048760-2863-4f24-8f09-027bc553fb0b",
"07db1d24-b7c7-47a9-b1ee-0e30ab26f776"
]
},
{
"VariantGroupId": 20,
"ReferencingCategories": [
{
"EntityId": 100,
"AttributeUid": "d49b5081-e918-439c-b419-aebfbf7d8599"
}
],
"ReferencingProducts": [
{
"EntityId": 23553,
"AttributeUid": "2181dce1-ba09-4c21-95c3-a697472c48ad"
},
{
"EntityId": 5656,
"AttributeUid": "2181dce1-ba09-4c21-95c3-a697472c48ad"
}
],
"ReferencingVariantGroups": [],
"ReferencingVariants": [
{
"EntityId": 568323,
"AttributeUid": "973b5494-b7a2-4aaf-9e68-b0d8ea2e18aa"
}
],
"ReferencingGlobalListValues": [
"e396f329-f9ae-4a64-986a-bcf9b0684001",
"3bea5dde-de9d-4e3b-8946-24637e4360d8"
]
}
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
ids | body | array : integer |
Ids of variant groups |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
VariantGroupId | integer |
Id of the referenced variant group |
ReferencingCategories | array : EntityReferenceDetail |
List of categories referencing this variant group |
ReferencingProducts | array : EntityReferenceDetail |
List of products referencing this variant group |
ReferencingVariantGroups | array : EntityReferenceDetail |
List of variant groups referencing this variant group |
ReferencingVariants | array : EntityReferenceDetail |
List of variants referencing this variant group |
ReferencingGlobalListValues | array |
List of global list values referencing this variant group |
Property name | Data type | Description |
---|---|---|
EntityId | integer |
The id of the referencing entity |
AttributeUid | string |
The attribute on the referencing entity that holds the reference |
POST /variantgroups/batch/variants Get ids of variants for a batch of variant groups
{
"10006": [
12544,
5353,
56843,
8865,
1556
],
"5646": [
7424,
5454,
4404
]
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
variantGroupIds | body | array : integer |
Ids of variant groups |
includeArchived | query | boolean |
Return ids of archived variants as well |
Response status OK (200)
POST /variantgroups/classifications Add category classifications to a batch of variant groups
{
"2001": [
{
"CategoryId": 25,
"OwnerReference": "ERP",
"SortOrder": 30
},
{
"CategoryId": 27,
"SortOrder": 21
}
],
"2011": [
{
"CategoryId": 25,
"OwnerReference": "ERP",
"SortOrder": 31
}
]
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
classifications | body | object |
Model containing batch og variant groups and categories to classify these in |
Response status OK (200)
DELETE /variantgroups/classifications Remove category classifications from a batch of variant groups
{
"1001": [
10,
21,
22
],
"1204": [
301
]
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
model | body | object |
Model containing batch of variant groups and the list of categories to remove them from |
Response status OK (200)
GET /variantgroups/identifiers/{identifierAlias} Get all identifiers and their internal ids for a specific identifier type
{
"5796359512359": 10000,
"5756525697563": 11012,
"5756326985442": 15133
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
identifierAlias | path | string |
Alias of identifier type |
Response status OK (200)
GET /variantgroups/identifiers/{identifierAlias}/{identifier} Get the internal id of a variant group based on its identifier
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
identifierAlias | path | string |
Alias of identifier type |
identifier | path | string |
Identifier value |
Response status OK (200)
GET /variantgroups/ids Get ids of all variant groups in the system
By default, ids for archived variant groups are not returned
[
10021,
20311,
234032,
23134,
53451,
32433,
23481
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
includeArchived | query | boolean |
Include archived variant groups |
Response status OK (200)
GET /variantgroups/queryablefields Get all available query fields in the PIM installation
[
{
"Uid": "PIM_CategoryIds",
"Name": "CategoryIds",
"SupportsSorting": false
},
{
"Uid": "Name_en-GB",
"Name": "Name (en-GB)",
"SupportsSorting": false
},
{
"Uid": "Name_da-DK",
"Name": "Name (da-DK)",
"SupportsSorting": false
},
{
"Uid": "Description_en-GB",
"Name": "Description (en-GB)",
"SupportsSorting": false
},
{
"Uid": "Description_da-DK",
"Name": "Description (da-DK)",
"SupportsSorting": false
}
]
Response status OK (200)
Property name | Data type | Description |
---|---|---|
Uid | string |
Unique id of field in PIM |
Name | string |
The display name of the field |
SupportsSorting | boolean |
If true field can be used for sorting |
POST /variantgroups/search Get ids of variant groups matching certain criteria
{
"IncludeArchived": false,
"QueryModel": {
"SubQueries": [
{
"Filters": [
{
"FieldUid": "ReleasedInCountries_NA_NA",
"QueryOperator": 0,
"FilterValue": "DK"
}
],
"BooleanOperator": 0,
"QueryModelType": "SimpleQueryModel"
},
{
"Filters": [
{
"FieldUid": "Color.BaseColor.Name_en-GB_NA",
"QueryOperator": 0,
"FilterValue": "red"
},
{
"FieldUid": "Color.BaseColor.Name_en-GB_NA",
"QueryOperator": 0,
"FilterValue": "blue"
}
],
"BooleanOperator": 1,
"QueryModelType": "SimpleQueryModel"
}
],
"BooleanOperator": 0,
"QueryModelType": "BooleanQueryModel"
}
}
[
10021,
20311,
234032,
23134,
53451,
32433,
23481
]
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
model | body | object : SearchModel |
Query model |
Property name | Data type | Description |
---|---|---|
IncludeArchived | boolean |
Include archived items in result |
QueryModel | object : QueryModel |
The actual query to get result for |
Property name | Data type | Description |
---|---|---|
Filters | array : FieldFilterModel |
List of filter conditions |
BooleanOperator | string |
The operator of the query. Can be any of:
|
QueryModelType | string |
The type of query model. Name matches exact name of concrete model implementation |
Property name | Data type | Description |
---|---|---|
SubQueries | array : QueryModel |
Sub queries to execute |
BooleanOperator | string |
The operator of the query. Can be any of:
|
QueryModelType | string |
The type of query model. Name matches exact name of concrete model implementation |
Property name | Data type | Description |
---|---|---|
FieldUid | string |
Uid of field to query |
QueryOperator | string |
Operator to use for query. Can be any of:
|
FilterValue | object |
Value to filter for using the QueryOperator. When QueryOperator is "InList", FilterValue must be an array of values to query for |
Response status OK (200)
POST /variantgroups/search/paged Get paged result of variant groups matching certain criteria. Result mapped with headers and item results
{
"Page": 1,
"PageSize": 10,
"FieldUids": [
"Id",
"Color.BaseColor.Name_en-GB_NA"
],
"SortByFieldUid": "Color.BaseColor.Name_en-GB_NA",
"SortDescending": true,
"IncludeArchived": false,
"QueryModel": {
"SubQueries": [
{
"Filters": [
{
"FieldUid": "ReleasedInCountries_NA_NA",
"QueryOperator": 0,
"FilterValue": "DK"
}
],
"BooleanOperator": 0,
"QueryModelType": "SimpleQueryModel"
},
{
"Filters": [
{
"FieldUid": "Color.BaseColor.Name_en-GB_NA",
"QueryOperator": 0,
"FilterValue": "red"
},
{
"FieldUid": "Color.BaseColor.Name_en-GB_NA",
"QueryOperator": 0,
"FilterValue": "blue"
}
],
"BooleanOperator": 1,
"QueryModelType": "SimpleQueryModel"
}
],
"BooleanOperator": 0,
"QueryModelType": "BooleanQueryModel"
}
}
{
"TotalHits": 33,
"Page": 1,
"PageSize": 3,
"TotalPages": 11,
"ItemListHeaders": [
{
"FieldUid": "Id",
"FieldName": "Internal Id",
"FieldType": "tableStringRenderer",
"SupportsSearching": true,
"SupportsSorting": true
},
{
"FieldUid": "Color.BaseColor.Name_en-GB_NA",
"FieldName": "Color.Base Color.Name",
"FieldType": "tableStringRenderer",
"SupportsSearching": true,
"SupportsSorting": true
}
],
"ListItems": [
{
"Id": 10021
},
{
"Id": 20311
},
{
"Id": 234032
}
]
}
Request parameters
Property name | Parameter type | Data type | Description |
---|---|---|---|
model | body | object : SearchPagedModel |
Query model |
Property name | Data type | Description |
---|---|---|
Page | integer | |
PageSize | integer | |
FieldUids | array | |
SortByFieldUid | string | |
SortDescending | boolean | |
IncludeArchived | boolean |
Include archived items in result |
QueryModel | object : QueryModel |
The actual query to get result for |
Property name | Data type | Description |
---|---|---|
Filters | array : FieldFilterModel |
List of filter conditions |
BooleanOperator | string |
The operator of the query. Can be any of:
|
QueryModelType | string |
The type of query model. Name matches exact name of concrete model implementation |
Property name | Data type | Description |
---|---|---|
SubQueries | array : QueryModel |
Sub queries to execute |
BooleanOperator | string |
The operator of the query. Can be any of:
|
QueryModelType | string |
The type of query model. Name matches exact name of concrete model implementation |
Property name | Data type | Description |
---|---|---|
FieldUid | string |
Uid of field to query |
QueryOperator | string |
Operator to use for query. Can be any of:
|
FilterValue | object |
Value to filter for using the QueryOperator. When QueryOperator is "InList", FilterValue must be an array of values to query for |
Response status OK (200)
Property name | Data type | Description |
---|---|---|
TotalHits | integer | |
Page | integer | |
PageSize | integer | |
TotalPages | integer | |
ItemListHeaders | array : ItemListHeader | |
ListItems | array : ListItem |
Property name | Data type | Description |
---|---|---|
FieldUid | string | |
FieldName | string | |
FieldType | string | |
SupportsSearching | boolean | |
SupportsSorting | boolean |
Property name | Data type | Description |
---|---|---|
Id | integer | |
ShownValues | array |