Fetch a single customer.
Fetch a single customer.
GET
https://app.softsolz.uk/api/v1/services/appointments/customers/{id}Recent Requests
Kept only in this browserTimeStatusTook
Send a request with Try it to see it here.
Path Params
idstringrequiredHeaders
AuthorizationstringrequiredBearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.
Response
Response Body
idstringUnique identifier.display_namestringName shown throughout the product.emailstring | nullEmail address.phonestring | nullPhone number in international format.timezonestring | nullIANA timezone, for example Europe/London.addressesarray of objectsSaved addresses.tagsarray of stringsFree-form labels for grouping and filtering.custom_fieldsobjectYour own extra fields, keyed by the definitions in workspace settings.no_show_countintegerHow many appointments this person did not attend.completed_countintegerHow many appointments this person attended.created_atstringWhen the record was created.updated_atstringWhen the record was last changed. Round-trip as expected_updated_at to guard against stale writes.Request
curl --request GET \ --url https://app.softsolz.uk/api/v1/services/appointments/customers/{id} \ --header 'Authorization: Bearer sk_live_your_key'Credentials
Sent as a Bearer token and used in the samples above and in Try it. Kept only in this browser tab until you close it. Use an sk_test_ key to stay in your sandbox.
Response · 200
{ "data": { "id": "88", "display_name": "Priya Raman", "email": "priya@example.com", "phone": "+447700900123", "timezone": "Europe/London", "addresses": [ {} ], "tags": [ "your-tags" ], "custom_fields": {}, "no_show_count": 0, "completed_count": 6, "created_at": "2026-01-01T09:00:00.000Z", "updated_at": "2026-01-01T09:00:00.000Z" }}