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

# Registrants

> Query registrants, create registrations, and manage session assignments

## swoogo\_get\_registrants

List or retrieve registrants with filtering by email, name, status, and more.

### Parameters

| Parameter       | Type    | Required       | Description                                                          |
| --------------- | ------- | -------------- | -------------------------------------------------------------------- |
| `registrant_id` | integer | No             | Get a single registrant by ID                                        |
| `event_id`      | integer | Yes (for list) | Event to list registrants for                                        |
| `email`         | string  | No             | Filter by email address                                              |
| `name`          | string  | No             | Filter by name (partial match)                                       |
| `status`        | string  | No             | Filter by registration status                                        |
| `search`        | string  | No             | Raw Swoogo search filter                                             |
| `fields`        | string  | No             | Comma-separated fields to return                                     |
| `expand`        | string  | No             | Include related objects (`sessions`, `lineItems`, `addresses`, etc.) |
| `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

* *"Show me all confirmed registrants for event 12345"*
* *"Look up the registrant with email [john@example.com](mailto:john@example.com)"*
* *"How many people are registered for the conference?"*

***

## swoogo\_create\_registrant

Register someone for an event.

### Parameters

| Parameter           | Type    | Required | Description              |
| ------------------- | ------- | -------- | ------------------------ |
| `event_id`          | integer | Yes      | Event to register for    |
| `email`             | string  | Yes      | Registrant email address |
| `first_name`        | string  | No       | First name               |
| `last_name`         | string  | No       | Last name                |
| `company`           | string  | No       | Company name             |
| `additional_fields` | object  | No       | Custom field values      |
| `send_email`        | boolean | No       | Send confirmation email  |

<Tip>Use `swoogo_get_registration_form` first to see what fields are available and required for an event.</Tip>

### Example prompts

* *"Register [jane@example.com](mailto:jane@example.com) for event 12345"*
* *"Add John Smith from Acme Corp to the conference"*

***

## swoogo\_add\_registrant\_to\_session

Assign a registrant to a session, with capacity and conflict validation.

### Parameters

| Parameter                  | Type    | Required | Description                                     |
| -------------------------- | ------- | -------- | ----------------------------------------------- |
| `registrant_id`            | integer | Yes      | Registrant to assign                            |
| `session_id`               | integer | Yes      | Session to assign to                            |
| `override_capacity_errors` | boolean | No       | Allow over-capacity assignment                  |
| `send_email`               | boolean | No       | Send notification email                         |
| `validate_only`            | boolean | No       | Check if assignment is valid without committing |

### Example prompts

* *"Add registrant 789 to the keynote session"*
* *"Check if registrant 789 can join session 456 without actually adding them"*
