put https://{shopdomain}.myshoplaza.com/openapi/2022-01/customers/
Requires
write_customer
access scope.
Update specific attributes of a customer by their unique ID.
This API is especially useful for:
- Modifying customer information like name, marketing subscriptions, or tags.
- Managing updates to customer records efficiently.
- Personalizing customer data for reporting or segmentation.
Note: The operation is scoped to a specific shop, identified by its unique domain prefix (shopdomain
), ensuring all updates are applied to the correct store.
Request Parameters
Public Request Parameters
Path Parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
id | string | Yes | 2dd957e3-2051-4cdf-8584-9c0046b4d1ae | Unique identifier of the customer. |
Body Parameters
Field | Type | Required | Example | Description |
---|---|---|---|---|
customer | object | Yes | The object containing customer attributes to be updated. | |
customer.first_name | string | No | Ryan | Customer's first name. |
customer.last_name | string | No | Zhang | Customer's last name. |
customer.accepts_marketing | boolean | No | true | Whether to subscribe to marketing email campaigns. Defaults to true . |
customer.accepts_sms_marketing | boolean | No | true | Whether to subscribe to SMS marketing campaigns. Defaults to true . |
customer.tags | string | No | New Customer, Repeat Customer | Comma-separated tags assigned to the customer. |
Response Explanation
Public Response Parameters
Successful Response
Field | Type | Example | Description |
---|---|---|---|
customer | object | Customer object containing customer details. | |
customer.id | string | 2dd957e3-2051-4cdf-8584-9c0046b4d1ae | Unique identifier for the customer. |
customer.first_name | string | Ryan | Customer's first name. |
customer.last_name | string | Zhang | Customer's last name. |
customer.name | string | Ryan Zhang | Full name of the customer. |
customer.email | string | [email protected] | Customer's email address. |
customer.phone | string | +8615014471143 | Customer's phone number. |
customer.phone_area_code | string | null | Area code of the phone number. |
customer.contact_type | string | email | Contact type, either email or phone . |
customer.accepts_marketing | boolean | true | Indicates if the customer is subscribed to marketing emails. |
customer.source | string | null | Source of the customer data. |
customer.free_tax | boolean | false | Indicates if the customer is exempt from taxes. |
customer.registered | boolean | false | Indicates if the customer is registered. |
customer.orders_count | integer | 0 | Number of orders placed by the customer. |
customer.last_order_at | string | null | Timestamp of the customer's last order. |
customer.total_spent | string | "0.00" | Total amount spent by the customer. |
customer.tags | string | New Customer | Comma-separated tags associated with the customer. |
customer.created_at | string | 2024-04-17T11:10:33Z | Timestamp when the customer was created, in ISO8601 format. |
customer.updated_at | string | 2024-04-17T11:10:33Z | Timestamp when the customer was last updated, in ISO8601 format. |
customer.subscribed_flag | integer | 5 | Customer's marketing subscription status flag. |
customer.sms_subscribed_flag | integer | 5 | Customer's SMS subscription status flag. |
customer.accepts_sms_marketing | boolean | true | Indicates if the customer is subscribed to SMS marketing campaigns. |
customer.default_address | object | See Address Object fields below. | Default address object for the customer. |
customer.default_address.id | string | 9ffa8dc0-25b8-4424-832e-bab46fcfeb20 | Unique identifier for the address. |
customer.default_address.customer_id | string | 2dd957e3-2051-4cdf-8584-9c0046b4d1ae | ID of the customer this address belongs to. |
customer.default_address.first_name | string | Test | First name of the consignee. |
customer.default_address.last_name | string | Test | Last name of the consignee. |
customer.default_address.company | string | "" | Company name. |
customer.default_address.city | string | 深圳 | City of the address. |
customer.default_address.province | string | "" | Province or state of the address. |
customer.default_address.country | string | Aland Islands | Country name of the address. |
customer.default_address.zip | string | 515300 | Postal or ZIP code. |
customer.default_address.province_code | string | "" | Province code. |
customer.default_address.country_code | string | AX | ISO country code. |
customer.default_address.gender | string | "" | Gender of the consignee. |
customer.default_address.phone | string | +86 150 1447 1143 | Phone number associated with the address. |
customer.default_address.phone_area_code | string | null | Area code of the phone number. |
customer.default_address.area | string | "" | Area or region of the address. |
customer.default_address.email | string | [email protected] | Email associated with the address. |
customer.default_address.name | string | Test Test | Full name of the consignee. |
customer.default_address.address1 | string | 6 三聖街 | Primary street address. |
customer.default_address.address2 | string | 1111 | Secondary street address. |
customer.default_address.country_name | string | Aland Islands | Full name of the country. |
customer.default_address.default | boolean | true | Indicates if this is the default address. |
customer.addresses | array of objects | See Address Object fields below for full details. | List of all customer addresses. |
customer.addresses.id | string | 9ffa8dc0-25b8-4424-832e-bab46fcfeb20 | Unique identifier for the address. |
customer.addresses.customer_id | string | 2dd957e3-2051-4cdf-8584-9c0046b4d1ae | ID of the customer this address belongs to. |
customer.addresses.first_name | string | Test | First name of the consignee. |
customer.addresses.last_name | string | Test | Last name of the consignee. |
customer.addresses.company | string | "" | Company name. |
customer.addresses.city | string | 深圳 | City of the address. |
customer.addresses.province | string | "" | Province or state of the address. |
customer.addresses.country | string | Aland Islands | Country name of the address. |
customer.addresses.zip | string | 515300 | Postal or ZIP code. |
customer.addresses.province_code | string | "" | Province code. |
customer.addresses.country_code | string | AX | ISO country code. |
customer.addresses.gender | string | "" | Gender of the consignee. |
customer.addresses.phone | string | +86 150 1447 1143 | Phone number associated with the address. |
customer.addresses.area | string | "" | Area or region of the address. |
customer.addresses.email | string | [email protected] | Email associated with the address. |
customer.addresses.address1 | string | 6 三聖街 | Primary street address. |
customer.addresses.address2 | string | 1111 | Secondary street address. |
customer.addresses.country_name | string | Aland Islands | Full name of the country. |
customer.addresses.default | boolean | true | Indicates if this is the default address. |
Error Response
Error responses in the API can be represented using two different fields: errors
and error
. Both fields provide details about issues encountered during request processing. Below is an explanation of the fields with their respective examples and descriptions.
Field | Type | Example | Description |
---|---|---|---|
errors | Email or Phone is already taken | ["Context"] | A list of errors encountered during the request processing. |
Field | Type | Example | Description |
---|---|---|---|
error | String | "store is not active" | Indicates an error encountered during the process |
Error Detail
Status Code | Message | Possible Reason | Example Response |
---|---|---|---|
400 | Bad Request | Invalid input format or request structure (e.g., missing required fields or incorrect data types). | Bad Request |
invalid customer's id input or empty customer's id | |||
Unauthorized | The request is missing valid authentication credentials or the credentials provided are invalid. | Unauthorized | |
404 | record not found | Provided id is not existed. | record not found |