Get Customer
Retrieve a single customer by their ID.
Endpointโ
GET /v1/customers/{id}
Authenticationโ
Requires an API key with the customers:read scope.
Parametersโ
| Parameter | Type | Location | Description |
|---|---|---|---|
id | integer | path | The customer ID |
Responseโ
Success (200 OK)โ
{
"data": {
"id": 1,
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"is_organization": false,
"organization_name": null,
"display_name": "John Doe",
"parent_customer_id": null,
"email": "john@example.com",
"phone": "0412345678",
"phone_country_code": "+61",
"gender": "male",
"date_of_birth": "1990-05-15",
"address": {
"line_1": "123 Main Street",
"line_2": "Apt 4B",
"city": "Sydney",
"state": "NSW",
"postcode": "2000",
"country": "AU"
},
"bookings_count": 5,
"last_booking": {
"id": 123,
"start_date": "2026-01-10T09:00:00+00:00",
"status": "completed"
},
"notes": [
{
"id": 1,
"text": "VIP customer - always upgrade when possible",
"created_by": {
"id": 5,
"name": "Jane Smith"
},
"created_at": "2025-12-01T10:00:00+00:00"
}
],
"custom_fields": [
{
"field_id": 4,
"label": "Member Since",
"field_type": "date",
"value": "2023-01-15",
"formatted_value": "15 Jan 2023"
}
],
"rewards": {
"reward_code": { "code": "THANKS-K7Q2", "discount": "10% off", "valid_until": "2027-10-07" },
"reward_codes": [{ "code": "THANKS-K7Q2", "discount": "10% off", "valid_until": "2027-10-07" }],
"share_code": "SAM-M4TR",
"friends_booked": 1,
"friends": [{ "id": 412, "name": "Alex Rivera" }]
},
"created_at": "2025-06-01T00:00:00+00:00",
"updated_at": "2026-01-15T10:30:00+00:00"
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-01-15T12:00:00+00:00"
}
}
Response Fieldsโ
See List Customers for complete field descriptions.
Custom Fieldsโ
| Field | Type | Description |
|---|---|---|
field_id | integer | Custom field definition ID |
label | string | Field display label |
field_type | string | Field type: text, textarea, number, date, datetime |
value | string|null | Raw value |
formatted_value | string|null | Formatted value for display |
tip
Custom field definitions can be retrieved via GET /v1/settings/custom-fields.
Rewardsโ
Only on this endpoint, not on the customer list. See Rewards settings.
| Field | Type | Description |
|---|---|---|
reward_code | object|null | The customer's newest unused thank-you code: code, discount (as the customer sees it) and valid_until, the last day it works (YYYY-MM-DD) in the business's own timezone. Null when they have none. |
reward_codes | array | Every unused thank-you code, newest first, in the same shape. Usually one; a friend's booking can add one on top of a visit code. |
share_code | string|null | The code the customer gives friends. Null while Bring a friend is off or before one has been made. |
friends_booked | integer | How many friends have booked with the share code (cancelled bookings excluded). |
friends | array | Those friends, as id and name. |
Errorsโ
| Status | Code | Description |
|---|---|---|
| 401 | authentication_required | No API key provided |
| 401 | invalid_api_key | Invalid API key |
| 403 | insufficient_scope | API key lacks customers:read scope |
| 403 | forbidden | Customer belongs to different supplier |
| 404 | resource_not_found | Customer does not exist |
Example Requestโ
curl -X GET "https://app.equipdash.com/api/v1/customers/1" \
-H "Authorization: Bearer eqd_live_abc123xyz789..."