Skip to content
API reference/Appointments

List open times

Try it

The times a visitor can book right now, by day (what the site shows). With appointment_id: the times that booking can be MOVED to — the business's wider window (notice ignored, at least 60 days ahead). Each slot's `key` is what move_appointment takes.

GET/api/v1/sites/{site_id}/booking-hours/open-times

Authentication

An API key as Authorization: Bearer or x-api-key. It needs the bookings:read scope — read booking hours and appointments.

bookings:readRead onlyMCP tool: list_open_times

Parameters

Named placeholders go in the path; the rest in the query string.

site_idstringPath · required
The site's id.1 to 100 characters
appointment_idstringQuery · optional
A booking to move: its own time counts as open.1 to 100 characters

Response

200 with JSON on success (schema on the right). Errors use the standard envelope.

curl
curl -X GET 'https://websites.workflowcorp.com/api/v1/sites/SITE_ID/booking-hours/open-times?appointment_id=APPOINTMENT_ID' \
  -H "Authorization: Bearer $WEBSITEBUDDY_API_KEY"
Example arguments
{
  "site_id": "SITE_ID",
  "appointment_id": "APPOINTMENT_ID"
}
Response schema
{
  "type": "object",
  "properties": {
    "time_zone": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "description": "YYYY-MM-DD"
          },
          "label": {
            "type": "string"
          },
          "slots": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "description": "ISO start — pass it to move_appointment."
                },
                "label": {
                  "type": "string"
                }
              },
              "required": [
                "key",
                "label"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "day",
          "label",
          "slots"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "time_zone",
    "enabled",
    "data"
  ],
  "additionalProperties": false
}