Returns available time slots for booking a meeting with a specific meeting type and optional host selection.
Endpoint
GET /v4/booking-availability
| Header | Required | Description |
|---|
Authorization | Yes | Bearer <your-api-key> |
This endpoint does not require the x-meetergo-api-user-id header as it queries availability for a meeting type.
Query Parameters
| Parameter | Type | Required | Description |
|---|
meetingTypeId | string | Yes | The ID of the meeting type to check availability for |
start | string | Yes | Start date in YYYY-MM-DD format |
end | string | Yes | End date in YYYY-MM-DD format |
hostIds | string[] | No | Comma-separated list of host IDs to filter availability |
queueId | string | No | Queue ID for round-robin meeting types |
meetingDuration | number | No | Duration in minutes (for meeting types with multiple options) |
timezone | string | No | Timezone for returned slots (e.g., Europe/Berlin) |
existingAppointmentId | string | No | Appointment ID when rescheduling (ignores its blocked time) |
resourceChannelIds | string[] | No | Filter by specific resource channels (e.g., meeting rooms) |
troubleshoot | boolean | No | When true, returns diagnostic information |
Examples
curl -X GET "https://api.meetergo.com/v4/booking-availability?meetingTypeId=abc123&start=2024-01-15&end=2024-01-20&timezone=Europe/Berlin" \
-H "Authorization: Bearer YOUR_API_KEY"
Response
Success (200 OK)
{
"slots": [
{
"date": "2024-01-15",
"times": [
"2024-01-15T09:00:00+01:00",
"2024-01-15T09:30:00+01:00",
"2024-01-15T10:00:00+01:00",
"2024-01-15T14:00:00+01:00",
"2024-01-15T14:30:00+01:00"
]
},
{
"date": "2024-01-16",
"times": [
"2024-01-16T09:00:00+01:00",
"2024-01-16T11:00:00+01:00",
"2024-01-16T15:00:00+01:00"
]
}
],
"timezone": "Europe/Berlin"
}
| Field | Description |
|---|
slots | Array of available time slots grouped by date |
slots[].date | The date in ISO 8601 format |
slots[].times | Array of available start times in ISO 8601 format |
timezone | The timezone used for the response |
Error Responses
400 Bad Request - Meeting Type Not Found
{
"statusCode": 400,
"message": "Meeting type not found",
"error": "Bad Request"
}
401 Unauthorized
{
"statusCode": 401,
"message": "Invalid API key",
"error": "Unauthorized"
}
Notes
- The response respects the meeting type’s buffer times, minimum booking notice, and maximum advance booking settings
- For round-robin meeting types, the availability represents the combined availability of all hosts in the queue
- When
hostIds is provided, only those specific hosts’ availability is considered