Skip to main content

Get cart (multi-service) time slots

Method POST

https://my.easyweek.io/api/public/v2/locations/{location_uuid}/time-slots/cart

Description: This endpoint returns available time slots for a multi-service ("cart") booking at a location. Because several services ride in a services[] array, it is a POST with a JSON body rather than a GET with query strings. Each slot's total duration is the sum of the selected services' durations, and the slot price is their combined price.

Example Request

curl -i -X POST \
https://my.easyweek.io/api/public/v2/locations/{location_uuid}/time-slots/cart \
-H 'Authorization: Bearer <YOUR_SECRET>' \
-H 'Workspace: <YOUR_WORKSPACE>'

Request body

{
"range_start": "2026-08-15",
"range_end": "2026-08-16",
"timezone": "Europe/Berlin",
"services": [
{ "service_uuid": "43537759-435b-4871-bf11-e3ace6a4464b", "staffer_uuid": "eac5a506-69c0-40c4-8758-85c501d26bcb" },
{ "service_uuid": "6b9c2d1e-3f4a-4b5c-8d9e-0a1b2c3d4e5f" }
]
}

Path Parameters

  • location_uuid (string, required): The UUID of the location to search.

Body Parameters

  • range_start (string, required): Start date of the range in Y-m-d format.
  • range_end (string, required): End date of the range in Y-m-d format. Must be after range_start.
  • services (array, required): 1–10 services, in order. Each item is { service_uuid, staffer_uuid? }. A service without staffer_uuid is auto-allocated to an available staff member.
  • timezone (string, optional): The timezone to render slot times in.

Example Response

{
"today": "2026-08-14",
"timezone": "Europe/Berlin",
"currency": "EUR",
"dates": [
{
"date": "2026-08-15",
"slots": [
{
"start": "09:00",
"start_formatted": 32400,
"end": "10:00",
"end_formatted": 36000,
"quantity": 1,
"price": 12000,
"price_formatted": "€120.00"
}
],
"intervals": []
}
]
}