> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fitsociety.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Client AI Bookings

> Reference for a connected client browsing events and managing their own bookings.

The `client_ai_bookings` module lets a client's AI assistant browse bookable
calendar events and list, book, or cancel the client's own bookings. Client AI
tools are subject-bound: every call resolves to the authenticated client
(`subjectClientId`) and can never act on another client's bookings. The module
is available only when the company MCP integration feature is enabled, client
AI access is enabled for the client-company relationship, and the company's
client MCP policy allows the module (write tools additionally require the
company policy to allow them).

| Key                  | Value                      |
| :------------------- | :------------------------- |
| **Module Key**       | `client_ai_bookings`       |
| **Sensitivity**      | `operational`              |
| **Consent Required** | None (OAuth approval only) |

***

## Available Tools

### `client_ai_list_my_events`

Retrieve available calendar events (lessons, group training, etc.) that you can book, within a specific date range (maximum 31 days).

* **Type:** Read-only
* **Important Input Fields:**
  * `dateFrom` (string, required): Start date filter in ISO 8601 format (`YYYY-MM-DD` or `YYYY-MM-DDTHH:mm:ssZ`).
  * `dateTo` (string, required): End date filter in ISO 8601 format. Max window is 31 days.

### `client_ai_list_my_bookings`

Retrieve your own active/past bookings (lessons, group training, etc.) within a specific date range (maximum 31 days).

* **Type:** Read-only
* **Important Input Fields:**
  * `dateFrom` (string, required): Start date filter in ISO 8601 format.
  * `dateTo` (string, required): End date filter in ISO 8601 format. Max window is 31 days.

### `client_ai_book_my_event` **`Write`**

Book an available calendar event (lesson, group class, etc.) for yourself. Uses your active subscription credit pools/validations. Cannot bypass credits or set custom prices.

* **Type:** Write
* **Important Input Fields:**
  * `eventId` (string, required): The unique ID of the calendar event to book.
  * `syntheticSlot` (string, optional): Synthetic slot reference if booking a flexible/open template slot.

### `client_ai_cancel_my_booking` **`Write`**

Cancel a planned booking for yourself. Respects the late cancellation window and refunds credits/sessions if eligible.

* **Type:** Write
* **Important Input Fields:**
  * `bookingId` (string, required): The unique ID of the booking to cancel.
  * `cancellationReasonCode` (string, optional): Cancellation reason code.
  * `customReasonText` (string, optional): Text detail explaining why you cancelled. Max 255 chars.

***

## Natural Language Examples

* *"Which group classes can I book this week?"*
* *"Book me into tomorrow's 7 PM spinning class."*
* *"Cancel my booking for Friday, I'm sick."*

***

## JSON-RPC Call Example (`client_ai_book_my_event`)

```json theme={null}
{
  "jsonrpc": "2.0",
  "id": "client-bookings-1",
  "method": "tools/call",
  "params": {
    "name": "client_ai_book_my_event",
    "arguments": {
      "eventId": "64b64c0f2f5f4c0012345678"
    }
  }
}
```
