> ## 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.

# Bookings

> Reference for managing client session bookings and attendance.

The `bookings` module provides tools to list, create, and manage bookings for classes, sessions, or personal training slots, and track client adherence.

| Key                  | Value         |
| :------------------- | :------------ |
| **Module Key**       | `bookings`    |
| **Sensitivity**      | `operational` |
| **Consent Required** | None          |

***

## Available Tools

### `list_bookings`

List client bookings for sessions or classes.

* **Type:** Read-only
* **Important Input Fields:**
  * `clientId` (string, optional): Filter bookings for a specific client.
  * `dateFrom` (string, optional): Start date range filter.
  * `dateTo` (string, optional): End date range filter.

### `get_booking`

Retrieve details of a single booking.

* **Type:** Read-only
* **Important Input Fields:**
  * `bookingId` (string, required): Unique identifier for the booking.

### `summarize_bookings`

Retrieve booking statistics (such as cancellation rates and total bookings) within a date range.

* **Type:** Read-only
* **Important Input Fields:**
  * `dateFrom` (string, required): Start date range.
  * `dateTo` (string, required): End date range.

### `summarize_client_adherence`

Evaluate check-in and attendance metrics (e.g. check-in ratios) for a specific client.

* **Type:** Read-only
* **Important Input Fields:**
  * `clientId` (string, required): Unique identifier for the client.

### `create_booking` **`Write`**

Book a client onto a specific calendar event.

* **Type:** Write
* **Important Input Fields:**
  * `clientId` (string, required): The unique client ID.
  * `calendarEventId` (string, required): The unique calendar event ID.
  * `paymentMethod` (string, optional): Either `product` or `free`. Defaults to `product`.
  * `creditsToDeduct` (integer, optional): Custom credits to deduct.

### `update_attendance` **`Write`**

Record check-in, mark absent, or cancel a booking.

* **Type:** Write
* **Important Input Fields:**
  * `bookingId` (string, required): Unique identifier for the booking.
  * `status` (string, required): Target attendance status (e.g., `attended`, `absent`, `cancelled`).

***

## Natural Language Examples

* *"Book Sarah Jenkins into the Spin Class tomorrow evening."*
* *"Update booking book\_123 to show the client attended."*

***

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

```json theme={null}
{
  "jsonrpc": "2.0",
  "id": "bookings-1",
  "method": "tools/call",
  "params": {
    "name": "create_booking",
    "arguments": {
      "clientId": "client_abc123",
      "calendarEventId": "event_xyz789",
      "paymentMethod": "free"
    }
  }
}
```
