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

# Sessions

> List, create, and update event sessions

## swoogo\_get\_sessions

List or retrieve sessions with filtering by name, track, date, and more. Tracks are automatically expanded.

### Parameters

| Parameter    | Type    | Required       | Description                                       |
| ------------ | ------- | -------------- | ------------------------------------------------- |
| `session_id` | integer | No             | Get a single session by ID                        |
| `event_id`   | integer | Yes (for list) | Event to list sessions for                        |
| `name`       | string  | No             | Filter by session name (partial match)            |
| `track`      | string  | No             | Filter by track name (exact match)                |
| `date`       | string  | No             | Filter by date (exact match)                      |
| `search`     | string  | No             | Raw Swoogo search filter                          |
| `fields`     | string  | No             | Comma-separated fields to return                  |
| `expand`     | string  | No             | Include related objects (e.g., `registrantCount`) |
| `page`       | integer | No             | Page number (default: 1)                          |
| `per_page`   | integer | No             | Results per page (default: 20, max: 100)          |
| `sort`       | string  | No             | Sort field (prefix `-` for descending)            |

### Example prompts

* *"List all sessions for event 12345"*
* *"Show me sessions on the Technical track"*
* *"What sessions are on March 15?"*

***

## swoogo\_create\_session

Create a new session for an event.

### Parameters

| Parameter           | Type    | Required | Description                 |
| ------------------- | ------- | -------- | --------------------------- |
| `event_id`          | integer | Yes      | Event to add the session to |
| `name`              | string  | Yes      | Session name                |
| `date`              | string  | No       | Session date (YYYY-MM-DD)   |
| `start_time`        | string  | No       | Start time (HH:MM:SS)       |
| `end_time`          | string  | No       | End time (HH:MM:SS)         |
| `location`          | string  | No       | Location name               |
| `track`             | string  | No       | Track name                  |
| `capacity`          | integer | No       | Maximum attendees           |
| `description`       | string  | No       | Session description         |
| `additional_fields` | object  | No       | Custom field values         |

### Example prompts

* *"Create a session called 'Keynote' for event 12345 on March 15 at 9am"*
* *"Add a workshop session with 50 person capacity"*

***

## swoogo\_update\_session

Update an existing session. Only the fields you provide will be changed.

### Parameters

| Parameter           | Type    | Required | Description                   |
| ------------------- | ------- | -------- | ----------------------------- |
| `session_id`        | integer | Yes      | Session to update             |
| `name`              | string  | No       | New session name              |
| `date`              | string  | No       | New date (YYYY-MM-DD)         |
| `start_time`        | string  | No       | New start time (HH:MM:SS)     |
| `end_time`          | string  | No       | New end time (HH:MM:SS)       |
| `location`          | string  | No       | New location                  |
| `track`             | string  | No       | New track                     |
| `capacity`          | integer | No       | New capacity                  |
| `description`       | string  | No       | New description               |
| `additional_fields` | object  | No       | Custom field values to update |

### Example prompts

* *"Change the keynote session to start at 10am instead of 9am"*
* *"Update session 456 capacity to 200"*
