Customers

Customer data and management

Get customers with pagination

get
/rest_api/v2/customers
Query parameters
beforestringOptional

Cursor for pagination (before) - Firestore document ID of customer to paginate before

afterstringOptional

Cursor for pagination (after) - Firestore document ID of customer to paginate after

limitinteger · min: 1 · max: 1000Optional

Number of customers per page

Default: 20
emailstringOptional

Search by customer email address

typestring · enumOptional

Filter by customer type

Possible values:
tierIdstringOptional

Filter by customer tier ID

updated_at_minstring · date-timeOptional

Filter customers updated after this date

updated_at_maxstring · date-timeOptional

Filter customers updated before this date

created_at_maxstring · date-timeOptional

Filter customers created before this date

orderstring · enumOptional

Sort order for results

Default: createdAt_descPossible values:
hasCountbooleanOptional

Include total count in response (may increase response time)

Default: false
Header parameters
X-Joy-Loyalty-App-KeystringRequired

App ID of your shop which retrieved from the Settings page

Example: {{appKey}}
X-Joy-Loyalty-Secret-KeystringRequired

Secret Key of your shop which retrieved from the Settings page

Example: {{secretKey}}
Responses
200

Paginated list of customers

application/json
get
/rest_api/v2/customers
200

Paginated list of customers

Get customer by ID

get
/rest_api/v2/customers/{customerId}
Path parameters
customerIdstringRequired

Internal customer ID

Responses
200

Customer details

application/json
get
/rest_api/v2/customers/{customerId}

Update customer data

put
/rest_api/v2/customers/{customerId}

Update customer information (supports birthday fields)

Path parameters
customerIdstringRequired

Internal customer ID

Body
dateOfBirthstring · dateOptional

Date of birth in ISO 8601 format (YYYY-MM-DD)

birthdaystringOptional

Birthday in MM/DD format

Responses
200

Customer updated successfully

application/json
put
/rest_api/v2/customers/{customerId}

Get customer earned points

get
/rest_api/v2/customers/{customerId}/points/earned

Retrieve total points earned by a customer across all programs

Path parameters
customerIdstringRequired

Customer ID (can be internal ID or Shopify customer ID)

Responses
200

Customer earned points summary

application/json
get
/rest_api/v2/customers/{customerId}/points/earned
200

Customer earned points summary

Get customer by Shopify ID

get
/rest_api/v2/customers/external/{shopifyCustomerId}

Retrieve customer information using Shopify customer ID

Path parameters
shopifyCustomerIdstringRequired

Shopify customer ID

Responses
200

Customer details

application/json
get
/rest_api/v2/customers/external/{shopifyCustomerId}

Update customer data by Shopify ID

put
/rest_api/v2/customers/external/{shopifyCustomerId}

Update customer information using Shopify customer ID

Path parameters
shopifyCustomerIdstringRequired

Shopify customer ID

Body
dateOfBirthstring · dateOptional

Date of birth in ISO 8601 format (YYYY-MM-DD)

birthdaystringOptional

Birthday in MM/DD format

Responses
200

Customer updated successfully

application/json
put
/rest_api/v2/customers/external/{shopifyCustomerId}
200

Customer updated successfully

Update customer VIP tier

put
/rest_api/v2/customers/{customerId}/tier

Update customer's VIP tier with comprehensive tier processing

Path parameters
customerIdstringRequired

Internal customer ID

Body
tierIdstringRequired

Target tier ID

isInitTierbooleanOptional

Whether this is an initial tier assignment

Default: false
triggerRewardbooleanOptional

Whether to trigger tier rewards

Default: true
adminNotestringOptional

Admin note for the tier change activity

Responses
200

Customer tier updated successfully

application/json
put
/rest_api/v2/customers/{customerId}/tier

Update customer VIP tier by Shopify ID

put
/rest_api/v2/customers/external/{shopifyCustomerId}/tier

Update customer's VIP tier using Shopify customer ID

Path parameters
shopifyCustomerIdstringRequired

Shopify customer ID

Body
tierIdstringRequired

Target tier ID

isInitTierbooleanOptional

Whether this is an initial tier assignment

Default: false
triggerRewardbooleanOptional

Whether to trigger tier rewards

Default: true
adminNotestringOptional

Admin note for the tier change activity

Responses
200

Customer tier updated successfully

application/json
put
/rest_api/v2/customers/external/{shopifyCustomerId}/tier
200

Customer tier updated successfully