Customer Groups
A Customer can be a member of a Customer Group (for example, reseller, gold member). Special prices can be assigned to specific products based on a Customer Group.
A maximum number of 1 000 Customer Groups can be created per Project. Learn more about this limit.
Representations
CustomerGroup
idString | Unique identifier of the CustomerGroup. |
versionInt | Current version of the CustomerGroup. |
keyString | User-defined unique identifier for the CustomerGroup. MinLength:2MaxLength: 256Pattern: ^[A-Za-z0-9_-]+$ |
nameString | Unique name of the CustomerGroup. |
custom | Custom Fields for the CustomerGroup. |
createdAt | Date and time (UTC) the CustomerGroup was initially created. |
createdByBETA | Present on resources created after 1 February 2019 except for events not tracked. |
lastModifiedAt | Date and time (UTC) the CustomerGroup was last updated. |
lastModifiedByBETA | Present on resources updated after 1 February 2019 except for events not tracked. |
CustomerGroupDraft
keyString | User-defined unique identifier for the CustomerGroup. MinLength:2MaxLength: 256Pattern: ^[A-Za-z0-9_-]+$ |
groupNameString | Unique value which must be different from any value used for |
custom | Custom Fields for the CustomerGroup. |
CustomerGroupPagedQueryResponse
PagedQueryResult with results containing an array of CustomerGroup.
limitInt | Number of results requested. |
offsetInt | Number of elements skipped. |
countInt | Actual number of results returned. |
totalInt | Total number of results matching the query.
This number is an estimation that is not strongly consistent.
This field is returned by default.
For improved performance, calculating this field can be deactivated by using the query parameter |
resultsArray of CustomerGroup | CustomerGroups matching the query. |
CustomerGroupReference
Reference to a CustomerGroup.
idString | Unique identifier of the referenced CustomerGroup. |
typeIdString | "customer-group"References a CustomerGroup. |
obj | Contains the representation of the expanded CustomerGroup. Only present in responses to requests with Reference Expansion for CustomerGroups. |
CustomerGroupResourceIdentifier
idString | Unique identifier of the referenced CustomerGroup. Either |
keyString | User-defined unique identifier of the referenced CustomerGroup. Either |
typeIdString | "customer-group"References a CustomerGroup. |
Get CustomerGroup
Get CustomerGroup by ID
view_customers:{projectKey}, view_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
idString |
|
expand | The parameter can be passed multiple times. |
curl -X GET https://api.{region}.commercetools.com/{projectKey}/customer-groups/{id} -i \--header 'Authorization: Bearer ${BEARER_TOKEN}'
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}
Get CustomerGroup by Key
view_customers:{projectKey}, view_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
keyString |
|
expand | The parameter can be passed multiple times. |
curl -X GET https://api.{region}.commercetools.com/{projectKey}/customer-groups/key={key} -i \--header 'Authorization: Bearer ${BEARER_TOKEN}'
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}
Query CustomerGroups
view_customers:{projectKey}, view_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
where | Queryable field: The parameter can be passed multiple times. |
/^var[.][a-zA-Z0-9]+$/Any string parameter matching this regular expression | Predicate parameter values. The parameter can be passed multiple times. |
sort | The parameter can be passed multiple times. |
expand | The parameter can be passed multiple times. |
limitInt | Number of results requested. |
offsetInt | Number of elements skipped. |
withTotalBoolean | Controls the calculation of the total number of query results. Set to |
curl -X GET https://api.{region}.commercetools.com/{projectKey}/customer-groups -i \--header 'Authorization: Bearer ${BEARER_TOKEN}'
{"limit" : 20,"offset" : 0,"count" : 1,"total" : 1,"results" : [ {"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"} ]}
Create CustomerGroup
manage_customers:{projectKey}, manage_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
expand | The parameter can be passed multiple times. |
curl -X POST https://api.{region}.commercetools.com/{projectKey}/customer-groups -i \--header 'Authorization: Bearer ${BEARER_TOKEN}' \--header 'Content-Type: application/json' \--data-binary @- << DATA{"groupName" : "Webshop user"}DATA
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}
Update CustomerGroup
Update CustomerGroup by ID
manage_customers:{projectKey}, manage_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
idString |
|
expand | The parameter can be passed multiple times. |
versionInt | Expected version of the CustomerGroup on which the changes should be applied. If the expected version does not match the actual version, a 409 Conflict will be returned. |
actionsArray of CustomerGroupUpdateAction | Update actions to be performed on the CustomerGroup. |
curl -X POST https://api.{region}.commercetools.com/{projectKey}/customer-groups/{id} -i \--header 'Authorization: Bearer ${BEARER_TOKEN}' \--header 'Content-Type: application/json' \--data-binary @- << DATA{"version" : 1,"actions" : [ {"action" : "changeName","name" : "New Name"} ]}DATA
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}
Update CustomerGroup by Key
manage_customers:{projectKey}, manage_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
keyString |
|
expand | The parameter can be passed multiple times. |
versionInt | Expected version of the CustomerGroup on which the changes should be applied. If the expected version does not match the actual version, a 409 Conflict will be returned. |
actionsArray of CustomerGroupUpdateAction | Update actions to be performed on the CustomerGroup. |
curl -X POST https://api.{region}.commercetools.com/{projectKey}/customer-groups/key={key} -i \--header 'Authorization: Bearer ${BEARER_TOKEN}' \--header 'Content-Type: application/json' \--data-binary @- << DATA{"version" : 1,"actions" : [ {"action" : "changeName","name" : "New Name"} ]}DATA
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}
Update actions
Change Name
actionString | "changeName" |
nameString | New name of the CustomerGroup. |
{"action" : "changeName","name" : "New Name"}
Set Key
actionString | "setKey" |
keyString | If 2MaxLength: 256Pattern: ^[A-Za-z0-9_-]+$ |
{"action" : "setKey","key" : "newKey"}
Set Custom Type
This action sets or removes the custom type for an existing CustomerGroup. If present, this action overwrites any existing custom type and fields.
actionString | "setCustomType" |
type | Defines the Type that extends the CustomerGroup with Custom Fields. If absent, any existing Type and Custom Fields are removed from the CustomerGroup. |
fields | Sets the Custom Fields fields for the CustomerGroup. |
{"action" : "setCustomType","type" : {"id" : "{{type-id}}","typeId" : "type"},"fields" : {"examplaryStringTypeField" : "TextString"}}
Set CustomField
actionString | "setCustomField" |
nameString | Name of the Custom Field. |
value | If |
{"action" : "setCustomField","name" : "ExamplaryStringTypeField","value" : "TextString"}
Delete CustomerGroup
Delete CustomerGroup by ID
manage_customers:{projectKey}, manage_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
idString |
|
versionInt | Last seen version of the resource. |
expand | The parameter can be passed multiple times. |
curl -X DELETE https://api.{region}.commercetools.com/{projectKey}/customer-groups/{id}?version={version} -i \--header 'Authorization: Bearer ${BEARER_TOKEN}'
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}
Delete CustomerGroup by Key
manage_customers:{projectKey}, manage_customer_groups:{projectKey}regionString | Region in which the Project is hosted. |
projectKeyString |
|
keyString |
|
versionInt | Last seen version of the resource. |
expand | The parameter can be passed multiple times. |
curl -X DELETE https://api.{region}.commercetools.com/{projectKey}/customer-groups/key={key}?version={version} -i \--header 'Authorization: Bearer ${BEARER_TOKEN}'
{"id" : "aef9cf41-94ad-4794-8122-62d308900430","version" : 2,"name" : "Webshop user","createdAt" : "2017-01-10T06:51:25.896Z","lastModifiedAt" : "2017-01-10T06:51:25.946Z"}