# Swoogo MCP connector

The Swoogo connector brings your event contacts, call for speakers submissions, reviewer scores and data lists into Claude, ChatGPT, Cursor and any MCP client, so your team can ask, update and act on them as themselves.

Source: https://elaichi.ai/connectors/swoogo/

## Facts

| | |
| --- | --- |
| Application | Swoogo |
| Category | Event Management |
| AI tools | 156 |
| Authentication | App credentials |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 156 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Swoogo is connected

- List all Swoogo CFS submissions still waiting on a review.
- Summarize this week's Swoogo CFS reviews by score.
- Which Swoogo CFS contacts have no submission yet?

## Connect Swoogo in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Swoogo.
2. Optionally set Share with, then press Connect.
3. Paste your Swoogo app credentials. Swoogo authenticates the app rather than a person. One person supplies the credentials once, and everyone else works through Share with.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Swoogo tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Swoogo to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Swoogo to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Swoogo to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Swoogo to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Swoogo tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Swoogo through Elaichi

### Catch a contact up after a conversation

Events. After a call with an attendee or sponsor, tell the agent what changed and it updates their Swoogo contact record, including your custom contact fields, without opening the app.

### Triage call for speakers submissions in minutes

Program. Ask for every submission that has come in this week for a track, get a plain summary of each pitch, and mark the ones that need a second look.

### See where reviews stand before the committee meets

Program. Pull the reviews for each Swoogo submission, spot which pitches still have no score, and list who is holding things up.

### Keep speaker details current in one place

Speaker relations. Create or update a call for speakers contact when a presenter changes their title, company or bio, so what prints in the program matches what they sent.

### Build the right invite list from live contacts

Marketing. Ask which Swoogo contacts match a region, job title or past event, and get a list you can hand to the campaign, without an export.

### Tidy data lists and duplicates

Operations. Add missing options to a Swoogo data list, remove stale ones, and find contacts that appear twice before registration opens.

## Frequently asked questions

### How do I connect Swoogo to Claude?

Two steps. In Elaichi, choose Swoogo and enter the app credentials from your Swoogo account; there is no OAuth application to register and no client ID or secret to generate. Then in Claude open Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp. Sign in with your Elaichi account and Swoogo is available in your next conversation.

### Does Swoogo work with ChatGPT and Cursor as well as Claude?

Yes. Once Swoogo is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client and the Elaichi Agent. You connect Swoogo once and every client you use picks it up.

### What can an AI agent actually do with my Swoogo data?

With Swoogo connected, an agent can look up, create and update contacts and their custom fields, read and update call for speakers submissions and the reviews attached to them, manage the speakers behind those submissions, and add or remove items in your data lists. Swoogo offers well over a hundred actions here, so short concrete asks such as "show me unreviewed submissions for the AI track" work better than long paragraphs.

### Does connecting Swoogo give the AI access to all of my events?

No. Every request runs as the person who signed in, so the agent sees exactly the Swoogo contacts, submissions and reviews that person can already see, and nothing more. Elaichi can narrow that access further with roles and restrictions, but it can never widen it beyond what Swoogo itself allows.

### Can my team share one Swoogo connection?

Yes. One person connects Swoogo in Elaichi and shares it with a team, and nobody else ever handles the Swoogo credentials. Each teammate still signs in to Elaichi as themselves, so the audit log names the actual person who updated a contact or changed a review.

### Can I stop an agent from deleting or changing things in Swoogo?

Yes. Restrictions in Elaichi work per action, so you can allow reading Swoogo contacts and submissions while blocking deletes, or block any updates at all for a given team. A blocked action is never shown to Claude, ChatGPT or Cursor in the first place, so no prompt, accidental or otherwise, can reach it.

### What happens to a Swoogo connection when someone leaves?

Offboarding a person in Elaichi ends their access to Swoogo through every client at once, with nothing to revoke in Claude, ChatGPT or Cursor separately. A shared Swoogo connection keeps working for everyone else on the team. If you ever want Swoogo gone entirely, disconnecting it once in Elaichi removes it from every client.

## All 156 Swoogo tools

Every tool below is callable through https://api.elaichi.ai/mcp once Swoogo is connected, subject to the toolbox it is in and the restrictions on the caller.

- **Create a Swoogo cfs contact** (Create). Create a new Call for Speakers contact in Swoogo for a given event. Returns: id, contact_id, email, first_name, last_name, company, job_title, event_id, reviewer, submitter, reviewer_role, created_at, updated_at.
- **Delete a Swoogo cfs contact by ID** (Delete). Permanently delete a Call for Speakers contact from Swoogo by id. Returns an empty 204 response on success. Required: id.
- **List all Swoogo cfs contacts** (List). List all Call for Speakers contacts in Swoogo for a given event. Returns per record: id, contact_id, email, first_name, last_name, event_id, reviewer, submitter, created_at, updated_at. Required: event_id.
- **Get single Swoogo cfs contact by ID** (Get). Get a single Call for Speakers contact by id in Swoogo. Returns: id, contact_id, email, first_name, last_name, company, job_title, event_id, reviewer, submitter, reviewer_role, created_at, updated_at. Required: id.
- **Update a Swoogo cfs contact by ID** (Update). Update an existing Call for Speakers contact by id in Swoogo. Returns: id, contact_id, email, first_name, last_name, company, job_title, event_id, reviewer, submitter, reviewer_role, created_at, updated_at. Required: id.
- **Create a Swoogo cfs review** (Create). Create a new Call for Speakers submission review in Swoogo. Returns the created review record including id, event_id, reviewer_id, rating, notes, created_at, and updated_at. Required: event_id, submission_id, reviewer_id, rating.
- **Delete a Swoogo cfs review by ID** (Delete). Permanently delete a Call for Speakers review by id in Swoogo, removing the reviewer's score and feedback from the submission's evaluation record. Returns an empty 204 response on success. Required: id.
- **List all Swoogo cfs reviews** (List). List all Call for Speakers submission reviews for a Swoogo event. Returns: id, event_id, reviewer_id, rating, notes, submission_name, reviewer_fullName, created_at, updated_at per review. Required: event_id.
- **Get single Swoogo cfs review by ID** (Get). Get a single Call for Speakers review by id in Swoogo. Returns: id, event_id, reviewer_id, reviewer_fullName, rating, notes, submission_name, created_at, updated_at. Required: id.
- **Update a Swoogo cfs review by ID** (Update). Update an existing Call for Speakers review by id in Swoogo. Returns the updated review record including id, event_id, reviewer_id, rating, notes, created_at, and updated_at. Required: id.
- **Create a Swoogo cfs submission** (Create). Create a new speaker submission in Swoogo for an event's Call for Speakers program, entering it into the review pipeline. Returns: id, name, event_id, session_status, created_at, updated_at. Required: event_id, submitter_id.
- **List all Swoogo cfs submissions** (List). List all speaker submissions in Swoogo for an event's Call for Speakers program, including session topic, review status, and track preference. Returns: id, name, event_id, session_status, track, created_at, updated_at. Required: event_id.
- **Get single Swoogo cfs submission by ID** (Get). Get a single speaker submission in Swoogo by id, including session topic, abstract, track preference, review status, and reviewer scores. Returns: id, name, event_id, session_status, track, description, created_at, updated_at. Required: id.
- **Update a Swoogo cfs submission by ID** (Update). Update an existing speaker submission in Swoogo by id. Returns: id, name, event_id, session_status, track, created_at, updated_at. Required: id.
- **Delete a Swoogo submission by ID** (Delete). Delete a swoogo speaker submission by id. Permanently removes the submission and all associated reviews from the Call for Speakers program. Returns an empty 204 response on success. Required: id.
- **List all Swoogo contact fields** (List). List all contact custom field definitions in Swoogo. Returns: id, name, type, account_id, created_at, updated_at, and additional configuration properties for each field. Use search to filter results, sort to order them, and fields to limit returned properties.
- **Get single Swoogo contact field by ID** (Get). Get a single Swoogo contact custom field definition by id. Returns full details including id, name, type, account_id, created_at, updated_at, and choices (available options for dropdown or multi-select fields). Required: id.
- **Create a Swoogo contact** (Create). Create a new Swoogo CRM contact. The email field must be unique within your account. Returns the created contact object including id, email, first_name, last_name, created_at, and updated_at. Required: email.
- **Delete a Swoogo contact by ID** (Delete). Perform a GDPR 'right to be forgotten' operation on a Swoogo contact by id, permanently anonymizing all personal data and optionally linked registrant records. This action is irreversible. Returns an empty 200 response on success. Required: id.
- **List all Swoogo contacts** (List). List Swoogo CRM contacts across all events in your account. Returns: id, first_name, last_name, email, company, created_at, updated_at per contact. Use fields to request specific properties, expand for address objects (homeAddress, workAddress, billingAddress), search to filter by any contact field, and sort to control ordering.
- **Get single Swoogo contact by ID** (Get). Get a single Swoogo CRM contact by id. Returns the contact object including id, email, first_name, last_name, company, job_title, created_at, and updated_at. Required: id.
- **Update a Swoogo contact by ID** (Update). Update an existing Swoogo CRM contact by id. Returns the updated contact object including id, email, first_name, last_name, created_at, and updated_at. Required: id.
- **Create a Swoogo data list item** (Create). Create a new data list item in Swoogo within an existing data list. Returns: id, data_list_id, name, created_at, updated_at. Required: data_list_id, name.
- **Delete a Swoogo data list item by ID** (Delete). Permanently delete a Swoogo data list item by id. Returns an empty 204 response on success. Required: id.
- **List all Swoogo data list items** (List). List all Swoogo data list items for a specific data list. Returns: id, data_list_id, name, created_at, updated_at per item. Required: data_list_id.
- **Get single Swoogo data list item by ID** (Get). Get a single Swoogo data list item by id. Returns: id, data_list_id, name, created_at, updated_at. Required: id.
- **Update a Swoogo data list item by ID** (Update). Update an existing Swoogo data list item by id. Returns: id, data_list_id, name, created_at, updated_at. Required: id.
- **Create a Swoogo data list** (Create). Create a new data list in Swoogo. Returns: id, name, notes, account_id, created_at, updated_at. Required: name.
- **Delete a Swoogo data list by ID** (Delete). Permanently delete a Swoogo data list and all its items by id. Custom fields referencing this list will lose their option set. Returns an empty 204 response on success. Required: id.
- **List all Swoogo data lists** (List). List all Swoogo data lists for the account. Returns: id, name, notes, account_id, created_at, updated_at per record. Supports field selection via fields, filtering via search, and sorting via sort.
- **Get single Swoogo data list by ID** (Get). Get a single Swoogo data list by id. Returns: id, name, notes, account_id, created_at, updated_at. Required: id.
- **Update a Swoogo data list by ID** (Update). Update an existing Swoogo data list by id. Returns: id, name, notes, account_id, created_at, updated_at. Required: id.
- **Create a Swoogo discount code** (Create). Create a new discount code in Swoogo. Returns: id, event_id, code, type, capacity, percentage_discount, absolute_discount, apply_to_all, created_at, updated_at. Required: event_id, code, type.
- **Delete a Swoogo discount code by ID** (Delete). Permanently delete a Swoogo discount code by id. The code will no longer be usable for future registrations; existing registrants who already applied it are not affected. Returns an empty 204 response on success. Required: id.
- **List all Swoogo discount codes** (List). List all discount codes for a Swoogo event. Returns: id, event_id, code, type, capacity, percentage_discount, apply_to_all, created_at. Required: event_id. Use expand to include alternates, autopopulate, registrantCount, or reservedCount.
- **Get single Swoogo discount code by ID** (Get). Get a single Swoogo discount code by id. Returns: id, event_id, code, type, capacity, percentage_discount, absolute_discount, apply_to_all, applicable_line_items, notes, created_at, updated_at. Required: id.
- **Update a Swoogo discount code by ID** (Update). Update an existing Swoogo discount code by id. Returns: id, event_id, code, type, capacity, percentage_discount, absolute_discount, apply_to_all, updated_at. Required: id.
- **Get single Swoogo event badge by ID** (Get). Generate a badge for a specific registrant in Swoogo using a badge template. Returns: created_at, updated_at. Required: badge_id, id.
- **List all Swoogo badges** (List). List all badge templates configured in Swoogo. Returns: id, name, notes, created_at, updated_at, created_by, updated_by. Optionally filter by event_id, a comma-separated list of ids, or a search expression.
- **Get single Swoogo badge by ID** (Get). Get a single Swoogo badge template by id, including its layout configuration and associated registration types. Returns: id, name, notes, created_at, updated_at, created_by, updated_by. Required: id.
- **Create a Swoogo event field** (Create). Create a new custom event field definition in Swoogo. Returns the created field object including id, name, type, visible, sort, allow_html, choices, created_at, and updated_at.
- **Delete a Swoogo event field by ID** (Delete). Permanently delete a custom event field definition by its id in Swoogo. Any data stored in this field on existing events will no longer be accessible. Returns an empty 204 response on success. Required: id.
- **List all Swoogo event fields** (List). List all custom event field definitions in Swoogo. Returns each field's id, name, type, visible, sort, required, choices, attribute, and timestamps. Supports filtering via search and limiting returned fields via the fields parameter.
- **Get single Swoogo event field by ID** (Get). Get a single custom event field definition by its id in Swoogo. Returns the field object including id, name, type, visible, sort, required, choices, attribute, allow_html, and timestamps. Required: id.
- **Update a Swoogo event field by ID** (Update). Update an existing custom event field definition by its id in Swoogo. Returns the updated field object including id, name, type, visible, sort, required, choices, attribute, allow_html, and timestamps. Required: id.
- **List all Swoogo event folders** (List). List all event folders in Swoogo used to organize events in the dashboard. Folders support a hierarchical structure via parent_id for nested organization. Returns: id, name, parent_id, created_at, updated_at. Use search to filter, sort to order, fields to limit returned fields, and ids to fetch up to 100 specific folders by ID.
- **Get single Swoogo folder by ID** (Get). Get a single Swoogo event folder by id. Returns the folder object including its id, name, and parent_id for hierarchical navigation. Required: id.
- **List all Swoogo event questions** (List). List all registration form questions configured for a swoogo event. Returns: id, event_id, name, attribute, type, created_at, updated_at. Required: event_id.
- **Get single Swoogo event question by ID** (Get). Get a single swoogo registration form question by id, including its label, field type, mapped registrant attribute, and sort order. Returns: id, event_id, name, attribute, type, created_at, updated_at. Required: id.
- **List all Swoogo event websites** (List). List all Swoogo event websites associated with a specific event. Returns: id, account_id, event_id, url, created_at, updated_at. Supports filtering via search, field selection, and sorting. Required: event_id.
- **Get single Swoogo event website by ID** (Get). Get a single Swoogo event website by id, including its site URL and configuration. Returns: id, account_id, event_id, url, created_at, updated_at. Required: id.
- **Create a Swoogo event** (Create). Create a new event in Swoogo. Returns the created event record including id, name, start_date, end_date, timezone, and status.
- **List all Swoogo events** (List). List all Swoogo events for your account with pagination and filtering support. Returns event records including id, name, status, start_date, end_date, timezone, capacity, and url. Use `search` to filter by any event field, `sort` to order results, and `fields` to control which fields are returned. Max 200 items per page when using `expand`.
- **Get single Swoogo event by ID** (Get). Get a single Swoogo event by id. Returns the full event record including name, start_date, end_date, timezone, capacity, status, and url. Use `fields` to limit returned fields and `expand` to include related objects such as folder and location. Required: id.
- **Update a Swoogo event by ID** (Update). Update an existing Swoogo event by id. Returns the updated event record including id, name, start_date, end_date, timezone, and status. Required: id.
- **Delete a Swoogo image by ID** (Delete). Delete a swoogo image field by id, removing the image file and clearing the field. Returns an empty 204 response on success. Required: id.
- **Get single Swoogo image by ID** (Get). Get the URL and metadata for a swoogo image field by id. Returns: field, id, message, status, type, url. Required: id.
- **Update a Swoogo image by ID** (Update). Upload or replace a swoogo image for a specific object field via multipart/form-data. Returns: message, status, field, id, type, url. Required: id, file. File must be no larger than 5MB with a valid extension: jpg, jpeg, gif, png, webp, or svg.
- **Create a Swoogo invitation list contact** (Create). Add a contact to a swoogo invitation list, granting them permission to register for the associated event. Returns: event_id, list_id, contact_id, status, created_at, created_by. Required: invitation_list_id, contact_id.
- **Delete a Swoogo invitation list contact by ID** (Delete). Remove a contact from a swoogo invitation list by id. Returns: message, success. Required: invitation_list_id, id.
- **Create a Swoogo invitation list** (Create). Create a new invitation list in Swoogo for an event. Returns: id, name, notes, module, reg_type_id, package_id, cfs_role_id, created_at, updated_at. Required: event_id, name.
- **List all Swoogo invitation lists** (List). List all invitation lists in Swoogo. Returns: id, name, notes, module, reg_type_id, package_id, cfs_role_id, created_at, updated_at per item. Optionally filter by event_id, narrow results with search, or order with sort.
- **Get single Swoogo invitation list by ID** (Get). Get a single Swoogo invitation list by id. Returns: id, name, notes, module, reg_type_id, package_id, cfs_role_id, created_at, updated_at. Required: id.
- **Update a Swoogo invitation list by ID** (Update). Update an existing Swoogo invitation list by id. Returns: id, name, notes, module, reg_type_id, package_id, cfs_role_id, created_at, updated_at. Required: id.
- **Delete a Swoogo package fee by ID** (Delete). Remove the fee for a swoogo package, setting its base price to 0 and clearing all conditional pricing. Returns the resulting fee record including id, package_id, price, and conditional_prices. Required: package_id, id.
- **Get single Swoogo package fee by ID** (Get). Get the current fee configuration for a swoogo package, including base price and conditional pricing. Returns: id, package_id, price, conditional_prices. Required: package_id, id.
- **Update a Swoogo package fee by ID** (Update). Update the fee configuration for a swoogo package, including base price and/or conditional pricing. Returns the updated fee object including id, package_id, price, and conditional_prices. Required: package_id, id. Only existing conditional pricing keys can be updated; non-existent keys are silently ignored.
- **Create a Swoogo package** (Create). Create a new registration package in Swoogo for an event. Returns the created package including id, name, capacity, created_at, and updated_at. Required: event_id, name.
- **Delete a Swoogo package by ID** (Delete). Delete a Swoogo registration package permanently by id. Returns an empty 204 response on success. Required: id.
- **List all Swoogo packages** (List). List all registration packages for a Swoogo event. Returns each package's id, name, capacity, public_short_name, and admin_short_name. Use the fields parameter to request additional fields and expand to embed related pricing or translation data. Required: event_id.
- **Get single Swoogo package by ID** (Get). Get a single Swoogo registration package by id. Returns the package record including id, name, capacity, created_at, and updated_at. Required: id.
- **Update a Swoogo package by ID** (Update). Update an existing Swoogo registration package by id. Returns the updated package including id, name, capacity, created_at, and updated_at. Required: id.
- **List all Swoogo pages** (List). List all pages for a specific Swoogo event website. Returns: id, name, slug, type, event_id, fullUrl, sort, created_at, updated_at. Required: event_id.
- **Get single Swoogo page by ID** (Get). Get a single Swoogo event page by id. Returns: id, name, slug, type, event_id, fullUrl, sort, created_at, updated_at. Required: id.
- **Create a Swoogo registrant group** (Create). Add a registrant to an existing Swoogo registration group, consolidating the registrant's transactions and line items under the group primary's financial record. Returns: id, group_id, event_id, registration_status, email, first_name, last_name, created_at, and additional registrant fields. Required: registrant_group_id, registrant_id. Both registrants must belong to the same event.
- **Delete a Swoogo registrant group by ID** (Delete). Remove a registrant from their current Swoogo registration group, restoring the registrant as an independent group primary with their own financial record. Returns: id, group_id, event_id, registration_status, email, first_name, last_name, created_at, and additional registrant fields. Required: registrant_group_id, id. The registrant must not be the current group primary.
- **List all Swoogo registrant line item audits** (List). List the audit trail for registrant line items in a Swoogo event, tracking historical changes such as price modifications, status changes, and discount applications. Returns: registrant_id, object, object_id, net, gross, tax, tax_rate, full_price_net, full_price_gross, datetime, quantity, status, created_at, updated_at. Required: event_id. When using the ids parameter, a maximum of 100 IDs per request is allowed.
- **List all Swoogo registrant line items** (List). List all financial line items for registrants within a Swoogo event. Returns per-item fields including registrant_id, object, object_id, net, tax, tax_rate, gross, quantity, status, created_at, and updated_at. Use search to filter by registrant_id, object type, status, or amount. Required: event_id.
- **Create a Swoogo session waitlist registrant** (Create). Add a registrant to the waitlist for a sold-out Swoogo session. Returns: created_at, updated_at. Required: registrant_id, session_id.
- **Delete a Swoogo session waitlist registrant by ID** (Delete). Remove a registrant from a Swoogo session waitlist by id. Returns an empty 204 response on success. Required: id.
- **Create a Swoogo registrant session** (Create). Add a session to a registrant's selected sessions in Swoogo. By default the request fails if the session is at capacity or has scheduling conflicts. Returns: success. Required: registrant_id, session_id.
- **Delete a Swoogo registrant session by ID** (Delete). Remove a session from a registrant's selected sessions in Swoogo; the registrant will no longer appear in the session's attendance list. Required: id. Returns an empty 204 response on success.
- **Create a Swoogo registrant type** (Create). Create a new Swoogo registration type for an event. Returns: id, name, capacity, created_at, updated_at, admin_short_name, public_short_name, description, min_group_size, max_group_size, sold_out_message. Required: event_id, name.
- **Delete a Swoogo registrant type by ID** (Delete). Permanently delete a Swoogo registration type by id. Existing registrants already assigned to this type are unaffected. Returns an empty 204 response on success. Required: id.
- **List all Swoogo registrant types** (List). List all Swoogo registration types for an event. Returns: id, name, capacity, created_at, updated_at, admin_short_name, public_short_name, description, min_group_size, max_group_size, sold_out_message. Required: event_id.
- **Get single Swoogo registrant type by ID** (Get). Get a single Swoogo registration type by id. Returns: id, name, capacity, created_at, updated_at, admin_short_name, public_short_name, description, min_group_size, max_group_size, sold_out_message. Use expand=earlyBirds to include early-bird pricing tiers. Required: id.
- **Update a Swoogo registrant type by ID** (Update). Update an existing Swoogo registration type by id. Returns: id, name, capacity, created_at, updated_at, admin_short_name, public_short_name, description, min_group_size, max_group_size, sold_out_message. Required: id.
- **Update a Swoogo registrant by ID** (Update). Update a swoogo registrant by id. Returns the updated registrant record including id, email, first_name, last_name, registration_status, updated_at, and full profile and financial fields. Required: id.
- **Create a Swoogo registrant** (Create). Create a new swoogo registrant for an event. Returns the created registrant record including id, email, first_name, last_name, registration_status, created_at, and full profile and financial fields. Required: event_id, email. Set send_email=true to trigger the confirmation email; registration_status defaults to confirmed.
- **List all Swoogo registrants** (List). List swoogo registrants for a specific event. Returns each registrant's id, email, first_name, last_name, registration_status, and other profile and financial fields. Required: event_id. Use search to filter by any field, sort to order results, and expand to include homeAddress, workAddress, or billingAddress.
- **Get single Swoogo registrant by ID** (Get). Get a single swoogo registrant by id. Returns the full registrant record including id, email, first_name, last_name, registration_status, created_at, updated_at, and all profile and financial fields. Required: id.
- **Create a Swoogo registrant token** (Create). Create a pre-population login token for a swoogo registrant, allowing their details to be pre-filled on a registration form. Returns: id, token, url, and event_id. The returned url can be sent directly to the registrant to complete registration with known fields pre-filled. Required: registrant_id.
- **Create a Swoogo session attendance** (Create). Create a new session attendance record in Swoogo to mark a registrant as having attended a session. Returns: id, session_id, registrant_id, check_in_date, check_out_date, duration, waiting_room_date, on_demand_date. Required: session_id, registrant_id.
- **List all Swoogo session attendances** (List). List all session attendance records for a Swoogo event. Returns: id, session_id, registrant_id, check_in_date, check_out_date, duration, created_at, updated_at. Required: event_id.
- **Update a Swoogo session attendance by ID** (Update). Update an existing session attendance record in Swoogo by its ID to modify attendance timing details. Returns: id, session_id, registrant_id, check_in_date, check_out_date, duration, waiting_room_date, on_demand_date. Required: id.
- **Delete a Swoogo session fee by ID** (Delete). Remove a swoogo session fee, setting the session's base price to 0 and clearing all conditional pricing. Returns: id, session_id, price, conditional_prices. Required: session_id, id.
- **Get single Swoogo session fee by ID** (Get). Get the fee configuration for a specific swoogo session by id, including base price and conditional pricing. Returns: id, session_id, price, conditional_prices. Required: session_id, id.
- **Update a Swoogo session fee by ID** (Update). Update the fee configuration for a specific swoogo session. Returns: id, session_id, price, conditional_prices. Required: session_id, id. Only existing conditional pricing keys can be updated; non-existent keys are silently ignored. Use empty strings to clear specific conditional prices.
- **Create a Swoogo session field** (Create). Create a new custom session field definition in Swoogo, specifying the field name, type, visibility, sort order, and choices for selection-type fields. Returns: id, name, type, attribute, visible, sort, allow_html, s_hint, created_at, updated_at.
- **Delete a Swoogo session field by ID** (Delete). Permanently delete a custom session field definition in Swoogo by id. Any data stored in this field on existing sessions will no longer be accessible. Returns an empty 204 response on success. Required: id.
- **List all Swoogo session fields** (List). List all custom session field definitions in Swoogo. Returns per record: id, name, type, attribute, visible, sort, allow_html, s_hint, created_at, updated_at, and other field metadata. Supports filtering via search and field selection via fields.
- **Get single Swoogo session field by ID** (Get). Get a single custom session field definition in Swoogo by id. Returns: id, name, type, attribute, visible, sort, allow_html, s_hint, s_url_display_format, s_button_text, created_at, updated_at, and other field metadata. Required: id.
- **Update a Swoogo session field by ID** (Update). Update an existing custom session field definition in Swoogo by id. Modify the field name, type, visibility, sort order, choices, or URL settings. Returns: id, name, type, attribute, visible, sort, allow_html, s_hint, created_at, updated_at, and other field metadata. Required: id.
- **Create a Swoogo session location** (Create). Create a new session location (room/venue) in Swoogo for a specific event. Returns: id, name, capacity, color, use_event_address, created_by, created_at, updated_by, updated_at. Required: event_id, name.
- **Delete a Swoogo session location by ID** (Delete). Permanently delete a session location by id in Swoogo. Returns an empty 204 response on success. Required: id.
- **List all Swoogo session locations** (List). List all session locations (rooms/venues) for a specific event in Swoogo. Returns: id, name, capacity, color, use_event_address, created_by, created_at, updated_by, updated_at. Required: event_id.
- **Get single Swoogo session location by ID** (Get). Get a single session location by id in Swoogo. Returns: id, name, capacity, color, use_event_address, created_by, created_at, updated_by, updated_at. Required: id.
- **Update a Swoogo session location by ID** (Update). Update an existing session location by id in Swoogo. Returns: id, name, capacity, color, use_event_address, created_by, created_at, updated_by, updated_at. Required: id.
- **Create a Swoogo session scan** (Create). Create a session scan in Swoogo to check in a registrant at a session, equivalent to scanning their badge or QR code. Returns: id, event_id, registrant_id, type, created_by, created_at, scan_id. Required: registrant_id, session_id.
- **Delete a Swoogo session scan by ID** (Delete). Delete a Swoogo session check-in scan record by id, reversing an accidental check-in or correcting scanning errors. Returns an empty 204 response on success. Required: id.
- **List all Swoogo session scans** (List). List all session check-in scan records in Swoogo for an event. Returns: id, event_id, registrant_id, type, created_by, created_at, scan_id, updated_at. Required: event_id.
- **Create a Swoogo session** (Create). Create a new Swoogo session within an event. Returns the created session record including id, event_id, name, date, start_time, end_time, session_status, capacity, location_id, track_id, and custom_fields. Sessions are created with session_status=live by default. Required: event_id, name, date.
- **Delete a Swoogo session by ID** (Delete). Permanently delete a Swoogo session by id. Returns an empty 204 response on success. Required: id.
- **List all Swoogo sessions** (List). List all Swoogo sessions for a specific event. Returns session records including id, event_id, name, date, start_time, end_time, session_status, capacity, location_id, track_id, and custom_fields. Required: event_id.
- **Get single Swoogo session by ID** (Get). Get a single Swoogo session by id. Returns the full session record including id, event_id, name, date, start_time, end_time, session_status, capacity, location_id, track_id, and custom_fields. Required: id.
- **Update a Swoogo session by ID** (Update). Update an existing Swoogo session by id. Returns the updated session record including id, event_id, name, date, start_time, end_time, session_status, capacity, location_id, track_id, and custom_fields. Required: id.
- **Create a Swoogo speaker session** (Create). Assign a speaker to a session in Swoogo by submitting the speaker_id and session_id. The speaker and session must belong to the same event. Returns: created_at, updated_at. Required: speaker_id, session_id.
- **Delete a Swoogo speaker session by ID** (Delete). Remove a speaker from a specific session in Swoogo by id. Only the association is deleted; the speaker and session records themselves are not affected. Returns: bio. Required: id.
- **Create a Swoogo speaker** (Create). Create a new swoogo speaker by linking an existing contact to an event. Returns the newly created speaker object including id, first_name, last_name, email, company, bio, created_at, and updated_at. Required: event_id, contact_id.
- **Delete a Swoogo speaker by ID** (Delete). Permanently delete a swoogo speaker by id, removing all associated session links. The underlying contact record is not affected. Returns an empty 204 response on success. Required: id.
- **List all Swoogo speakers** (List). List swoogo speakers for a specific event. Returns: id, first_name, last_name, company, bio, created_at, updated_at. Use fields to request additional properties, search to filter by any speaker field, and expand=sessions to include each speaker's assigned sessions. Required: event_id.
- **Get single Swoogo speaker by ID** (Get). Get a single swoogo speaker by id. Returns: id, first_name, last_name, email, company, bio, created_at, updated_at. Required: id.
- **List all Swoogo sponsor attendances** (List). List sponsor attendance records for a specific Swoogo event, tracking each sponsor's participation or booth presence. Returns: created_at, updated_at. Required: event_id.
- **Create a Swoogo sponsor field** (Create). Create a new custom field definition for sponsors in Swoogo. Returns: id, name, type, sort, visible, required, allow_html, choices, created_at, updated_at. Required: name, type.
- **Delete a Swoogo sponsor field by ID** (Delete). Permanently delete a sponsor custom field definition by id in Swoogo. Removes the field schema and all stored values across all sponsors. This action cannot be undone. Returns an empty 204 response on success. Required: id.
- **List all Swoogo sponsor fields** (List). List all sponsor custom field definitions in Swoogo. Returns each field's id, name, type, sort, visible, required, allow_html, choices, s_hint, created_at, updated_at.
- **Get single Swoogo sponsor field by ID** (Get). Get a single sponsor custom field definition by id in Swoogo. Returns: id, name, type, sort, visible, required, allow_html, choices, s_hint, created_at, updated_at. Required: id.
- **Update a Swoogo sponsor field by ID** (Update). Update an existing sponsor custom field definition by id in Swoogo. Returns: id, name, type, sort, visible, required, allow_html, choices, s_hint, created_at, updated_at. Required: id.
- **Create a Swoogo sponsor** (Create). Create a new sponsor in swoogo for a specific event. Returns the newly created sponsor object including id, name, event_id, website, level, logo_id, created_at, and updated_at. Required: event_id, name.
- **Delete a Swoogo sponsor by ID** (Delete). Permanently delete a swoogo sponsor by id, removing all associated attendance records and custom field values. This action cannot be undone. Returns an empty 204 response on success. Required: id.
- **List all Swoogo sponsors** (List). List all swoogo sponsors for a specific event. Returns: id, name, event_id, website, description, level, logo_id, created_at, updated_at, and more. Use fields to select specific properties, search to filter, and sort to control ordering. Required: event_id.
- **Get single Swoogo sponsor by ID** (Get). Get a single swoogo sponsor by id. Returns the sponsor object including id, name, event_id, website, description, level, logo_id, created_at, updated_at, and more. Required: id.
- **Update a Swoogo sponsor by ID** (Update). Update an existing swoogo sponsor by id. Returns the updated sponsor object including id, name, event_id, website, description, level, logo_id, created_at, and updated_at. Required: id.
- **Create a Swoogo track** (Create). Create a new session track in Swoogo for an event, used to categorize sessions (e.g., "Technical", "Business"). Returns: id, name, color, created_at, updated_at, created_by, updated_by. Required: event_id, name.
- **Delete a Swoogo track by ID** (Delete). Permanently delete a session track in Swoogo by id. Sessions assigned to this track will lose their track categorization. Returns an empty 204 response on success. Required: id.
- **List all Swoogo tracks** (List). List all session tracks in Swoogo for a specific event. Returns: id, name, color, created_at, updated_at, created_by, updated_by. Required: event_id. Use fields, expand, search, sort, or ids to narrow or enrich results.
- **Get single Swoogo track by ID** (Get). Get a single Swoogo session track by id. Returns: id, name, color, created_at, updated_at, created_by, updated_by. Required: id.
- **Update a Swoogo track by ID** (Update). Update an existing session track in Swoogo by id. Returns: id, name, color, created_at, updated_at, created_by, updated_by. Required: id.
- **Create a Swoogo transaction** (Create). Create an offline transaction record for a registrant in Swoogo (e.g., wire transfer, check, cash payment or refund). Returns: registrant_id, type, amount, status, datetime, notes, created_at, updated_at. Required: event_id, registrant_id, type, amount. Only offline payment/refund types are supported; online types such as credit_card_payment cannot be created through this endpoint.
- **Delete a Swoogo transaction by ID** (Delete). Delete a Swoogo transaction record permanently by id. Returns an empty 204 response on success. Required: id.
- **List all Swoogo transactions** (List). List all financial transaction records for a specific Swoogo event. Returns: id, registrant_id, type, amount, status, datetime, created_at per record. Required: event_id. Use search to filter by registrant_id, status, amount, date range, and other fields; use sort to order results.
- **Get single Swoogo transaction by ID** (Get). Get a single Swoogo transaction record by id. Returns: id, registrant_id, type, amount, status, datetime, notes, created_at, updated_at, card_type, currency, gateway_transaction_id, and other payment details. Required: id.
- **Create a Swoogo webhook group** (Create). Create a new webhook group in Swoogo. Returns: id, name, headers, notification_emails. Required: name.
- **Delete a Swoogo webhook group by ID** (Delete). Permanently delete a Swoogo webhook group and all webhooks it contains. All HTTP callbacks from webhooks in this group will immediately stop firing. Returns an empty 204 response on success. Required: id.
- **List all Swoogo webhook groups** (List). List all webhook groups in Swoogo. Returns: id, name, headers, notification_emails per item. Use search to filter, sort to order, and fields to select specific fields.
- **Get single Swoogo webhook group by ID** (Get). Get a single Swoogo webhook group by id. Returns: id, name, headers, notification_emails. Required: id.
- **Update a Swoogo webhook group by ID** (Update). Update an existing Swoogo webhook group by id. Returns: id, name, headers, notification_emails. Required: id, name.
- **Create a Swoogo webhook** (Create). Create a new webhook configuration in Swoogo. Returns: id, name, url, trigger_object, enabled, content_type, trigger_on_insert, trigger_on_update, trigger_on_delete. Required: name, url, trigger_object.
- **Delete a Swoogo webhook by ID** (Delete). Permanently delete a Swoogo webhook configuration by id. The webhook immediately stops sending HTTP callbacks. Returns an empty 204 response on success. Required: id.
- **List all Swoogo webhooks** (List). List all webhook configurations in Swoogo. Returns: id, name, url, trigger_object, trigger_on_insert, trigger_on_update, trigger_on_delete, any_event, event_ids, all_fields. Use expand=group to include webhook group details.
- **Get single Swoogo webhook by ID** (Get). Get a single Swoogo webhook configuration by id. Returns: id, name, url, trigger_object, enabled, content_type, trigger_on_insert, trigger_on_update, trigger_on_delete, any_event, event_ids. Required: id.
- **Update a Swoogo webhook by ID** (Update). Update an existing Swoogo webhook configuration by id. Returns: id, name, url, trigger_object, enabled, content_type, trigger_on_insert, trigger_on_update, trigger_on_delete, any_event, event_ids. Required: id, name, url, trigger_object.
- **Create a Swoogo discount code clone** (Create). Clone an existing Swoogo discount code to create a new alternate code linked to the original. Returns: id, code, event_id, type, parent_id, capacity, percentage_discount, absolute_discount, apply_to_all, applicable_line_items, custom_fees, notes, created_at, updated_at. Required: discount_code_id.
- **Create a Swoogo event clone** (Create). Clone a swoogo event by copying all settings — including registration types, packages, sessions, forms, and website configuration — into a new event. Returns the cloned event object including id, name, start_date, display_url, and close_date. Required: event_id. Registrant data is never copied; the cloned event starts with zero registrations. Cloning is asynchronous and may take a few moments to complete.
- **Create a Swoogo registrant checkin** (Create). Check in a swoogo registrant at their event by submitting their identifier to the checkin endpoint. Returns an empty 204 response on success. Required: registrant_id.
- **Create a Swoogo registrant email** (Create). Trigger a transactional email to a Swoogo registrant using the event's configured email templates. This endpoint initiates sending only — it does not customize the email body. Returns a 200 response with no body on success. Required: registrant_id, email_type.
