# Retrieve free bookable dates and times of a specific service or a group service Bookable timeslots for a service or group service. There are two ways to request company information: 1. __company_id__ parameter 2. __external_company_id__ with __enterprise_id__ parameters Response parameters: - keys 'data.calendarBegin' and 'data.calendarEnd' - this is the allowed period for the availability algorithm. Can be adjusted in the web app under the section 'Booking setup' - key 'data.onDays' - array of dates with available time slots - key 'data.offDays' - array of dates that are fully booked - key 'data.slots.times' - array of times that are available for appointments To see the open slots for specific days, use the _days[]_ parameter. When the __service_id__ is present the service object is returned in the response. When the __course_id__ is present the course object is returned in the response. Endpoint: GET /v1/booker-services/availabilities Version: 0.0.4 Security: BookerSecretAuth ## Query parameters: - `page` (integer) Page number (1-based). Example: 1 - `limit` (integer) Maximum items per page. Default: 10000 (when not provided or when provided value ≤ 0). Example: 50 ## Response 200 fields (application/json): - `data` (array, required) List payload. Example: [{"id":"65f4c840b6f1a10012ab34cd","externalId":"ext_1001","firstName":"John","lastName":"Doe","fullName":"John Doe","email":"john@example.com","totalBookings":5,"createdAt":"2024-01-15T10:30:00Z","updatedAt":"2024-02-20T14:45:30Z","ts":1708430730},{"id":"65f4c840b6f1a10012ab34ce","externalId":"ext_1002","firstName":"Jane","lastName":"Smith","fullName":"Jane Smith","email":"jane@example.com","totalBookings":3,"createdAt":"2024-01-20T11:15:00Z","updatedAt":"2024-02-25T13:22:00Z","ts":1708516200}] - `meta` (object) - `meta.page` (integer, required) Current page number. Example: 1 - `meta.limit` (integer, required) Items requested per page. Example: 20 - `meta.totalItems` (integer, required) Total items available. Example: 182 - `meta.totalPages` (integer, required) Total pages available. Example: 10 - `total` (integer) Total count used by legacy list endpoints. Example: 182 - `status` (integer) Operation status flag. Example: 1 ## Response 401 fields (application/json): - `error` (string, required) Error message. Example: "Invalid request payload" - `name` (string) Error class name. Example: "BadRequestError" - `errorCode` (string) Application-specific error code. Example: 2 - `details` (object) Structured error details. Example: {"query":{"page":"invalid"}} - `extras` (object,null) Extra error metadata from downstream services. Example: {"code":"GRAPHQL_VALIDATION_FAILED"} ## Response 500 fields (application/json): - `error` (string, required) Error message. Example: "Invalid request payload" - `name` (string) Error class name. Example: "BadRequestError" - `errorCode` (string) Application-specific error code. Example: 2 - `details` (object) Structured error details. Example: {"query":{"page":"invalid"}} - `extras` (object,null) Extra error metadata from downstream services. Example: {"code":"GRAPHQL_VALIDATION_FAILED"}