Menu
updateCustomer
Update an existing customer — pass its current version and an array of update actions.
Use it in a workflow
- Add a step and choose the Commercetools connector.
- Pick the updateCustomer action (under Update).
- Fill in the fields below, then reference the result from later steps as
{{updatecustomer.response.data}}.
Query
This is the mutation the action sends by default. Edit it in the step's Query field to change which fields come back.
mutation UpdateCustomer($version: Long!, $actions: [CustomerUpdateAction!]!, $storeKey: KeyReferenceInput, $id: String, $key: String) {
updateCustomer(
version: $version
actions: $actions
storeKey: $storeKey
id: $id
key: $key
) {
id
customerNumber
email
addresses {
id
streetName
streetNumber
additionalStreetInfo
postalCode
city
region
state
country
company
department
building
apartment
pOBox
additionalAddressInfo
externalId
key
phone
mobile
email
fax
title
salutation
firstName
lastName
custom {
typeRef
type
}
}
defaultShippingAddressId
defaultBillingAddressId
shippingAddressIds
billingAddressIds
isEmailVerified
customerGroupRef {
typeId
id
}
externalId
key
authenticationMode
firstName
lastName
middleName
title
locale
salutation
dateOfBirth
companyName
vatId
password
customerGroup {
id
version
name
key
createdAt
lastModifiedAt
custom {
typeRef
type
}
createdBy {
isPlatformClient
clientId
externalUserId
anonymousId
customerRef
userRef
associateRef
attributedTo
}
lastModifiedBy {
isPlatformClient
clientId
externalUserId
anonymousId
customerRef
userRef
associateRef
attributedTo
}
}
defaultShippingAddress {
id
streetName
streetNumber
additionalStreetInfo
postalCode
city
region
state
country
company
department
building
apartment
pOBox
additionalAddressInfo
externalId
key
phone
mobile
email
fax
title
salutation
firstName
lastName
custom {
typeRef
type
}
}
defaultBillingAddress {
id
streetName
streetNumber
additionalStreetInfo
postalCode
city
region
state
country
company
department
building
apartment
pOBox
additionalAddressInfo
externalId
key
phone
mobile
email
fax
title
salutation
firstName
lastName
custom {
typeRef
type
}
}
shippingAddresses {
id
streetName
streetNumber
additionalStreetInfo
postalCode
city
region
state
country
company
department
building
apartment
pOBox
additionalAddressInfo
externalId
key
phone
mobile
email
fax
title
salutation
firstName
lastName
custom {
typeRef
type
}
}
billingAddresses {
id
streetName
streetNumber
additionalStreetInfo
postalCode
city
region
state
country
company
department
building
apartment
pOBox
additionalAddressInfo
externalId
key
phone
mobile
email
fax
title
salutation
firstName
lastName
custom {
typeRef
type
}
}
storesRef {
typeId
key
}
stores {
id
version
key
nameAllLocales {
locale
value
}
languages
countries {
code
}
productSelections {
productSelectionRef
productSelection
active
}
distributionChannelsRef {
typeId
id
}
distributionChannels {
id
version
key
roles
nameAllLocales
descriptionAllLocales
address
geoLocation
createdAt
lastModifiedAt
reviewRatingStatistics
custom
createdBy
lastModifiedBy
}
supplyChannelsRef {
typeId
id
}
supplyChannels {
id
version
key
roles
nameAllLocales
descriptionAllLocales
address
geoLocation
createdAt
lastModifiedAt
reviewRatingStatistics
custom
createdBy
lastModifiedBy
}
storefront {
checkoutUrlTemplate
orderUrlTemplate
termsOfServiceUrl
privacyPolicyUrl
refundPolicyUrl
shippingPolicyUrl
cookiePolicyUrl
imprintUrl
faqUrl
contactUrl
}
createdAt
lastModifiedAt
custom {
typeRef
type
}
createdBy {
isPlatformClient
clientId
externalUserId
anonymousId
customerRef
userRef
associateRef
attributedTo
}
lastModifiedBy {
isPlatformClient
clientId
externalUserId
anonymousId
customerRef
userRef
associateRef
attributedTo
}
}
customerGroupAssignments {
customerGroupRef {
typeId
id
}
customerGroup {
id
version
name
key
createdAt
lastModifiedAt
custom
createdBy
lastModifiedBy
}
}
custom {
typeRef {
typeId
id
}
type {
key
nameAllLocales
descriptionAllLocales
resourceTypeIds
id
version
createdAt
lastModifiedAt
createdBy
lastModifiedBy
}
}
version
createdAt
lastModifiedAt
createdBy {
isPlatformClient
clientId
externalUserId
anonymousId
customerRef {
typeId
id
}
userRef {
typeId
id
}
associateRef {
typeId
id
}
attributedTo {
clientId
source
userRef
}
}
lastModifiedBy {
isPlatformClient
clientId
externalUserId
anonymousId
customerRef {
typeId
id
}
userRef {
typeId
id
}
associateRef {
typeId
id
}
attributedTo {
clientId
source
userRef
}
}
}
}
Variables
Pass these as a JSON object in the step's Variables field.
{
"version": "string",
"actions": [
{
"addAddress": {
"address": "string"
},
"addBillingAddressId": {
"addressId": "string",
"addressKey": "string"
},
"addCustomerGroupAssignment": {
"customerGroupAssignment": "string"
},
"addShippingAddressId": {
"addressId": "string",
"addressKey": "string"
},
"addStore": {
"store": "string"
},
"changeAddress": {
"address": "string",
"addressId": "string",
"addressKey": "string"
},
"changeEmail": {
"email": "string"
},
"removeAddress": {
"addressId": "string",
"addressKey": "string"
},
"removeBillingAddressId": {
"addressId": "string",
"addressKey": "string"
},
"removeCustomerGroupAssignment": {
"customerGroup": "string"
},
"removeShippingAddressId": {
"addressId": "string",
"addressKey": "string"
},
"removeStore": {
"store": "string"
}
}
],
"storeKey": "string",
"id": "string",
"key": "string"
}
Response
Read the result with {{updatecustomer.response.data.data.updateCustomer}}. If the API returns errors, the step fails and they are at {{updatecustomer.response.data.errors}}.
Need more? See the Commercetools guide for connection setup and behaviour shared by every action.
Was this page helpful?