SoftSolzSoftSolz
HomeAPI GuideAPI ReferenceWidget Tester
appointments

Fetch a single appointment type.

Fetch a single appointment type.

GEThttps://app.softsolz.uk/api/v1/services/appointments/types/{id}

Recent Requests

Kept only in this browser
TimeStatusTook
Send a request with Try it to see it here.

Path Params

idstringrequired

Headers

Authorizationstringrequired

Bearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.

Response

Response Body

idstringAppointment type id.
slugstringURL-safe type slug, unique per tenant.
namestringDisplay name.
descriptionstring | nullOptional description.
kindstringHow this type is scheduled. Built-in values are one_time, recurring, multi_visit, project, route, maintenance, emergency and walk_in; any other lowercase slug is kept as your own wording.
duration_minutesintegerDefault duration.
arrival_window_minutesinteger | nullWhen set, the customer books an arrival window of this length instead of an exact time.
buffer_before_minutesintegerProtected time before the appointment.
buffer_after_minutesintegerProtected time after the appointment.
travel_minutesintegerTravel time reserved around the appointment.
location_modestringWhere the appointment happens. Built-in values are business, customer, virtual, phone, route_stop and hybrid; any other lowercase slug is kept as your own wording.
meeting_urlstring | nullStatic meeting room URL.
capacityintegerPlaces per slot. 1 is one-to-one; above 1 enables group booking.
booking_modestringWhether bookings confirm instantly or need approval.
price_centsinteger | nullPrice in the smallest currency unit.
currencystring | nullISO 4217 currency code.
deposit_centsinteger | nullDeposit taken at booking, in the smallest currency unit.
is_publicbooleanWhether the type is bookable from a public booking link or widget.
intake_fieldsarray of objectsQuestions asked at booking time. Same field-schema shape the Forms builder uses.
requirementsarray of objectsWhat the appointment needs simultaneously, for example one engineer and one van.
stagesarray of objectsOrdered visits for multi-visit, project, and route types.
resourcesarray of objectsWhich resources can deliver this type, with optional duration and price overrides.
statusstringCurrent status.
created_atstringWhen the record was created.
updated_atstringRound-trip as expected_updated_at to guard against stale writes.

Request

curl --request GET \
--url https://app.softsolz.uk/api/v1/services/appointments/types/{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": "7",
"slug": "boiler-service",
"name": "Boiler service",
"description": "your-description",
"kind": "maintenance",
"duration_minutes": 60,
"arrival_window_minutes": 240,
"buffer_before_minutes": 0,
"buffer_after_minutes": 15,
"travel_minutes": 20,
"location_mode": "customer",
"meeting_url": "https://example.com",
"capacity": 1,
"booking_mode": "instant",
"price_cents": 9500,
"currency": "gbp",
"deposit_cents": 2000,
"is_public": true,
"intake_fields": [
{
"id": "boiler_make",
"type": "text",
"label": "Boiler make",
"required": false
}
],
"requirements": [
{
"resource_kind": "staff",
"count": 1
}
],
"stages": [
{
"sequence": 1,
"name": "Survey",
"duration_minutes": 45,
"blocks_resource": true
}
],
"resources": [
{
"resource_id": 3,
"duration_override_minutes": 45
}
],
"status": "active",
"created_at": "2026-01-01T09:00:00.000Z",
"updated_at": "2026-01-01T09:00:00.000Z"
}
}