Rewards
Customer rewards and redemptions
Get customer rewards
Retrieve customer rewards with optional filtering and pagination.
Customer Identifier Required: Must provide either customerId or shopifyCustomerId parameter.
Joy internal customer ID
Shopify customer ID
Filter by reward status
Filter by reward type
Cursor for pagination (before) - Firestore document ID of reward to paginate before
Cursor for pagination (after) - Firestore document ID of reward to paginate after
Number of rewards per page
Filter rewards created after this date
Filter rewards created before this date
Sort order for results
Include total count in response (may increase response time)
200List of customer rewards
trueShow properties
Reward ID
"OPfV7dXaPn1Ejbm9piPs"Internal customer ID
"o9AQeUCXYDjbeFm7vAKy"Generated coupon/discount code
"JOY-8PBFA801B2FH"Program title
"Points for discounts"Shopify customer ID
7603687882987Program description
"1 x 1% discount"Minimum order amount required
"$1"Reward expiration date
nullCurrent discount status
"active"Show properties
Program ID
"akwQ96WZJMIqrG26PNlC"Program title
"Points for discounts"Reward creation timestamp
"2025-06-12T10:31:25.781Z"Last update timestamp
"2025-06-12T10:31:25.781Z"Pagination metadata container
Show properties
Show properties
True if more results exist after current page
True if results exist before current page
Total count of all matching results (when available)
Total number of pages calculated as ceil(total/limit) (when available)
"Operation completed successfully""2023-07-28T07:27:54.123Z"404Customer not found
falseShow properties
"Resource not found""NOT_FOUND"404"2023-07-28T07:27:54.123Z"GET /rest_api/v2/rewards HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYAccept: */*
{"success": true,"data": [{"id": "OPfV7dXaPn1Ejbm9piPs","customerId": "o9AQeUCXYDjbeFm7vAKy","couponCode": "JOY-8PBFA801B2FH","programTitle": "Points for discounts","shopifyCustomerId": 7603687882987,"programDescription": "1 x 1% discount","orderReqAmount": "$1","expiredAt": null,"discountStatus": "active","program": {"id": "akwQ96WZJMIqrG26PNlC","title": "Points for discounts"},"createdAt": "2025-06-12T10:31:25.781Z","updatedAt": "2025-06-12T10:31:25.781Z"}],"meta": {"pagination": {"hasNext": false,"hasPre": false,"total": 1,"totalPage": 1}},"timestamp": "2025-06-12T10:31:25.781Z"}
Get reward by ID
Reward ID
200Reward details
trueShow properties
Reward ID
"OPfV7dXaPn1Ejbm9piPs"Internal customer ID
"o9AQeUCXYDjbeFm7vAKy"Generated coupon/discount code
"JOY-8PBFA801B2FH"Program title
"Points for discounts"Shopify customer ID
7603687882987Program description
"1 x 1% discount"Minimum order amount required
"$1"Reward expiration date
nullCurrent discount status
"active"Show properties
Program ID
"akwQ96WZJMIqrG26PNlC"Program title
"Points for discounts"Reward creation timestamp
"2025-06-12T10:31:25.781Z"Last update timestamp
"2025-06-12T10:31:25.781Z"Additional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"GET /rest_api/v2/rewards/{rewardId} HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYAccept: */*
{"success": true,"data": {"id": "OPfV7dXaPn1Ejbm9piPs","customerId": "o9AQeUCXYDjbeFm7vAKy","couponCode": "JOY-8PBFA801B2FH","programTitle": "Points for discounts","shopifyCustomerId": 7603687882987,"programDescription": "1 x 1% discount","orderReqAmount": "$1","expiredAt": null,"discountStatus": "active","program": {"id": "akwQ96WZJMIqrG26PNlC","title": "Points for discounts"},"createdAt": "2025-06-12T10:31:25.781Z","updatedAt": "2025-06-12T10:31:25.781Z"},"meta": {},"message": "Operation completed successfully","timestamp": "2023-07-28T07:27:54.123Z"}
Refund coupon code
Process coupon refund and return points to customer
The coupon/discount code to refund
"JOY-8PBFA801B2FH"Shopify customer ID who owns the coupon
"7603687882987"Optional reason for the refund
"Customer request"200Coupon refunded successfully
trueShow properties
true"Coupon refunded successfully"Additional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"400Invalid request or coupon not found
falseShow properties
"Resource not found""NOT_FOUND"404"2023-07-28T07:27:54.123Z"POST /rest_api/v2/rewards/coupons/refund HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYContent-Type: application/jsonAccept: */*Content-Length: 112{"discountCode": "JOY-8PBFA801B2FH","shopifyCustomerId": "7603687882987","reason": "Customer request"}
{"success": true,"data": {"success": true,"message": "Coupon refunded successfully"}}