Rewards Settings
Read and change the shop's loyalty rewards: the thank-you code a customer gets for their next booking, and Bring a friend, where each customer has a code to share. These are the Thank-you reward and Bring a friend sections in Settings > Surveys & reviews.
Every code is an ordinary single-use promo code, so it is redeemed through the normal promo code box on the booking page, at the counter and through the bookings API.
Endpointsโ
| Method | Endpoint | Description | Scope |
|---|---|---|---|
GET | /v1/settings/rewards | Get reward settings | settings:read |
PATCH | /v1/settings/rewards | Change reward settings | settings:write |
GET /v1/settings/rewardsโ
curl "https://app.equipdash.com/api/v1/settings/rewards" \
-H "Authorization: Bearer YOUR_API_KEY"
Response (200 OK)โ
{
"data": {
"thank_you": {
"enabled": true,
"send_when": "every_visit",
"discount_type": "percentage",
"discount_value": 10,
"validity_days": 365,
"promo_code_id": null
},
"friend": {
"enabled": true,
"discount_type": "percentage",
"discount_value": 10
},
"sharer": {
"enabled": true,
"discount_type": "flat",
"discount_value": 20,
"promo_code_id": null
}
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-10-07T09:00:00Z"
}
}
The three settingsโ
| Key | What it is |
|---|---|
thank_you | The code a customer gets for their next booking. |
friend | What a friend gets off their first booking when they use a customer's share code. enabled switches Bring a friend on or off. |
sharer | What the customer who shared gets once the friend's booking is complete. It switches on and off with friend. |
Fieldsโ
| Field | Type | Description |
|---|---|---|
enabled | boolean | Whether this reward is on. sharer follows friend; sending it changes nothing. |
send_when | string | thank_you only. every_visit, every_3, every_5 or survey (when the customer finishes the post-booking survey). A visit counts once the booking is complete; cancelled bookings do not count. |
discount_type | string | percentage or flat. |
discount_value | number | The discount. A percentage can be at most 100. |
validity_days | integer | thank_you only. How many days each code works, 1 to 365. Reward codes for a friend's booking use the same length. |
promo_code_id | integer|null | thank_you and sharer only. When set, each code copies this promo code's rules (minimum spend, cap, which items) instead of discount_type and discount_value. Sending discount_type or discount_value without promo_code_id clears it. |
PATCH /v1/settings/rewardsโ
Send any of thank_you, friend and sharer, each with any of its fields above. Only what you
send changes. A field the kind does not have is refused with 422
("This setting is only on the thank-you code.") rather than ignored. The response is the full settings, as GET returns them.
curl -X PATCH "https://app.equipdash.com/api/v1/settings/rewards" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"thank_you": { "enabled": true, "send_when": "every_3", "discount_type": "flat", "discount_value": 15 },
"friend": { "enabled": true, "discount_value": 10 }
}'
Errorsโ
| Status | When |
|---|---|
422 | A value is out of range (for example a percentage over 100), send_when is not one of the four values, promo_code_id is not one of your promo codes, or the body has none of the three keys. |
403 | The API key does not have settings:write. |
How rewards behaveโ
- One thank-you code per booking, and a customer holds at most one unused thank-you code at a time.
- A share code works once for each new customer, on their first booking with the shop. It is refused for the customer who owns it and for anyone with an earlier booking.
- Turning Bring a friend off stops every share code; turning it back on restarts them.
- A customer's codes and the friends who booked with their share code appear under
rewardson GET /v1/customers/{id}.