Updates the profile of the currently authenticated customer
PATCH
/
api
/
v3
/
store
/
customers
/
me
Spree SDK
import { createClient } from '@spree/sdk'
const client = createClient({
baseUrl: 'https://your-store.com',
publishableKey: '<api-key>',
})
const customer = await client.customer.update({
first_name: 'John',
last_name: 'Doe',
metadata: { preferred_contact: 'email' },
}, {
token: '<token>',
})curl --request PATCH \
--url http://{defaultHost}/api/v3/store/customers/me \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-spree-api-key: <api-key>' \
--data '
{
"first_name": "John",
"last_name": "Doe",
"email": "customer@example.com",
"password": "newpassword123",
"password_confirmation": "newpassword123",
"accepts_email_marketing": true,
"phone": "+1 555 123 4567",
"metadata": {
"preferred_contact": "email"
}
}
'{
"id": "cus_UkLWZg9DAJ",
"email": "sena.jones@terry.biz",
"first_name": "Updated",
"last_name": "Name",
"phone": "555-555-0199",
"accepts_email_marketing": false,
"full_name": "Updated Name",
"available_store_credit_total": "0",
"display_available_store_credit_total": "$0.00",
"addresses": [
{
"id": "addr_gbHJdmfrXB",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "168 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": true,
"is_default_shipping": false,
"state_name": "New York"
},
{
"id": "addr_UkLWZg9DAJ",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "167 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": true,
"state_name": "New York"
}
],
"default_billing_address": {
"id": "addr_gbHJdmfrXB",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "168 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": true,
"is_default_shipping": false,
"state_name": "New York"
},
"default_shipping_address": {
"id": "addr_UkLWZg9DAJ",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "167 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": true,
"state_name": "New York"
}
}{
"error": {
"code": "validation_error",
"message": "Email can't be blank",
"details": {
"email": [
"can't be blank"
]
}
}
}Authorizations
Publishable API key for store access
JWT token for authenticated customers
Body
application/json
Example:
"John"
Example:
"Doe"
Example:
"customer@example.com"
Example:
"newpassword123"
Example:
"newpassword123"
Example:
true
Example:
"+1 555 123 4567"
Example:
{ "preferred_contact": "email" }
Response
profile updated
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I
Spree SDK
import { createClient } from '@spree/sdk'
const client = createClient({
baseUrl: 'https://your-store.com',
publishableKey: '<api-key>',
})
const customer = await client.customer.update({
first_name: 'John',
last_name: 'Doe',
metadata: { preferred_contact: 'email' },
}, {
token: '<token>',
})curl --request PATCH \
--url http://{defaultHost}/api/v3/store/customers/me \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-spree-api-key: <api-key>' \
--data '
{
"first_name": "John",
"last_name": "Doe",
"email": "customer@example.com",
"password": "newpassword123",
"password_confirmation": "newpassword123",
"accepts_email_marketing": true,
"phone": "+1 555 123 4567",
"metadata": {
"preferred_contact": "email"
}
}
'{
"id": "cus_UkLWZg9DAJ",
"email": "sena.jones@terry.biz",
"first_name": "Updated",
"last_name": "Name",
"phone": "555-555-0199",
"accepts_email_marketing": false,
"full_name": "Updated Name",
"available_store_credit_total": "0",
"display_available_store_credit_total": "$0.00",
"addresses": [
{
"id": "addr_gbHJdmfrXB",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "168 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": true,
"is_default_shipping": false,
"state_name": "New York"
},
{
"id": "addr_UkLWZg9DAJ",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "167 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": true,
"state_name": "New York"
}
],
"default_billing_address": {
"id": "addr_gbHJdmfrXB",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "168 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": true,
"is_default_shipping": false,
"state_name": "New York"
},
"default_shipping_address": {
"id": "addr_UkLWZg9DAJ",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "167 Lovely Street",
"address2": "Northwest",
"postal_code": "10118",
"city": "New York",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "NY",
"state_abbr": "NY",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": true,
"state_name": "New York"
}
}{
"error": {
"code": "validation_error",
"message": "Email can't be blank",
"details": {
"email": [
"can't be blank"
]
}
}
}
