# Recall.ai

Recall AI provides a unified API to integrate meeting bots and access conversation data from major video conferencing platforms, enabling seamless automation, transcription, and analysis of virtual meetings.

- **Category:** ai meeting assistants
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 63
- **Triggers:** 0
- **Slug:** `RECALLAI`
- **Version:** 20260323_00

## Tools

### Create bot

**Slug:** `RECALLAI_CREATE_BOT`

Create a new bot to join and record a meeting. This action creates a meeting bot that can join Zoom, Google Meet, Microsoft Teams, and other supported platforms to record audio, video, and capture transcriptions. For production use, schedule bots at least 10 minutes in advance using the join_at parameter to ensure the bot joins on time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat` | object | No | Settings for the bot to send chat messages during the call. |
| `zoom` | object | No | Settings for the bot to join Zoom meetings. |
| `webex` | object | No | Settings for the bot to join Webex meetings. |
| `join_at` | string | No | The time at which the bot will join the call, formatted in ISO 8601. This field can only be read from scheduled bots that have not yet joined a call. Once a bot has joined a call, it's join_at will be cleared. |
| `variant` | object | No | The variant of the bot for different platforms (zoom, google_meet, microsoft_teams, webex). |
| `bot_name` | string | No | The display name for the bot in the call. Maximum 100 characters. Defaults to 'Meeting Notetaker'. |
| `metadata` | object | No | Additional metadata to attach to the bot. |
| `google_meet` | object | No | Settings for the bot to join Google Meet meetings. |
| `meeting_url` | string | Yes | The url of the meeting. For example, https://zoom.us/j/123?pwd=456. This field will be cleared a few days after the bot has joined a call. |
| `output_media` | object | No | Settings for the bot output media (camera and screenshare). |
| `breakout_room` | object | No | Settings for the bot to join specific breakout rooms. |
| `automatic_leave` | object | No | Settings for the bot to automatically leave the call under various conditions. |
| `recording_config` | object | No | Configuration for recording settings. |
| `slack_authenticator` | object | No | Settings for the bot to authenticate with Slack. |
| `slack_huddle_observer` | object | No | Settings for the bot to observe Slack huddles. |
| `automatic_audio_output` | object | No | Settings for the bot to output audio during the call. |
| `automatic_video_output` | object | No | Settings for the bot to output video. Image should be 16:9. Recommended resolution is 640x360. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Calendar Integration

**Slug:** `RECALLAI_CREATE_CALENDAR`

Tool to create a new calendar integration with Google Calendar or Microsoft Outlook. Use when you need to connect a calendar platform to enable automatic bot scheduling for meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `platform` | string ("google_calendar" | "microsoft_outlook") | Yes | Calendar platform to integrate with. Choose 'google_calendar' for Google Calendar or 'microsoft_outlook' for Microsoft Outlook. |
| `oauth_client_id` | string | Yes | OAuth 2.0 client ID for the calendar integration. Maximum 2000 characters. |
| `oauth_client_secret` | string | Yes | OAuth 2.0 client secret for the calendar integration. Maximum 2000 characters. |
| `oauth_refresh_token` | string | Yes | OAuth 2.0 refresh token for the calendar integration. Used to maintain long-term access to the calendar. Maximum 10000 characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Calendar Authentication Token

**Slug:** `RECALLAI_CREATE_CALENDAR_AUTHENTICATE`

Tool to generate an authentication token for calendar APIs, scoped to the user. Use when you need to authenticate calendar operations for a specific user. Each token has an expiry of 1 day from time of creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique id of the user in your system. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Google Login

**Slug:** `RECALLAI_CREATE_GOOGLE_LOGIN`

Tool to create a new Google Login credential within a login group. Use when you need to add a new Google account that bots can use to authenticate and join Google Meet meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | The email address of the Google account to use for login. |
| `group_id` | string | Yes | The ID of the login group this login belongs to. |
| `is_active` | boolean | No | If the login should be used for round robin. (default: true) |
| `sso_v2_cert` | string | Yes | PEM-formatted x509 certificate which is registered in your Google Workspace SSO Profile. |
| `sso_v2_private_key` | string | Yes | PEM-formatted private key used for signing SSO requests. |
| `sso_v2_workspace_domain` | string | Yes | The primary domain name of your Google Workspace Account used for SSO. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Google Login Group

**Slug:** `RECALLAI_CREATE_GOOGLE_LOGIN_GROUP`

Tool to create a new Google Login Group for managing bot authentication. Use when you need to create a group of Google login credentials that bots can use to join Google Meet meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the login group. It can be used to filter out login groups when retrieving them via API. |
| `login_mode` | string ("always" | "only_if_required") | Yes | Login behavior of bots that use this login group. 'always' means bots will always login before joining, 'only_if_required' means bots will only login if the meeting requires authentication. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Meeting Direct Connect

**Slug:** `RECALLAI_CREATE_MEETING_DIRECT_CONNECT`

Tool to create a Meeting Direct Connect for Google Meet or Zoom. Use when you need to connect directly to a meeting platform's media stream via Google Meet Media API or Zoom RTMS. Either google_meet_media_api or zoom_rtms credentials must be provided, but not both.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `metadata` | object | No | Optional key-value pairs for custom metadata. Values must be strings or null. |
| `zoom_rtms` | object | No | Zoom RTMS credentials for Direct Connect. |
| `recording_config` | object | No | Optional configuration for recording settings. |
| `google_meet_media_api` | object | No | Google Meet Media API credentials for Direct Connect. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create SDK Upload

**Slug:** `RECALLAI_CREATE_SDK_UPLOAD`

Create a new Desktop SDK upload. Use this to generate an upload token that can be used with the Recall.ai Desktop SDK to upload recordings directly from desktop applications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `recording_config` | object | No | Configuration for the Desktop SDK recording. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Zoom OAuth App

**Slug:** `RECALLAI_CREATE_ZOOM_OAUTH_APP`

Tool to create a new Zoom OAuth App integration with Recall.ai. Use when you need to configure Zoom OAuth credentials to enable bots to join Zoom meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `kind` | string ("user_level" | "account_level") | Yes | Type of OAuth App: 'user_level' for User Level apps or 'account_level' for Account Level apps. |
| `client_id` | string | Yes | Zoom OAuth client ID. Maximum 200 characters. |
| `client_secret` | string | Yes | Zoom OAuth client secret. Maximum 200 characters. |
| `webhook_secret` | string | Yes | Zoom webhook secret for validating webhook requests. Maximum 200 characters. |
| `verification_token` | string | No | Zoom webhook verification token (optional). Maximum 200 characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete bot

**Slug:** `RECALLAI_DELETE_BOT`

Delete a scheduled bot by ID. This can only be used for scheduled bots that have not yet joined a call. If the bot is already in a call or about to join (less than 10 minutes before join time), use the REMOVE_BOT_FROM_CALL action instead.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The UUID of the scheduled bot to delete. Note: This can only delete scheduled bots that have not yet joined a call. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Bot Media

**Slug:** `RECALLAI_DELETE_BOT_MEDIA`

Deletes bot media stored by Recall AI. This operation is irreversible and permanently removes all media files associated with the specified bot.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the bot whose media should be deleted. This operation is irreversible and will permanently delete all stored bot media. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete calendar

**Slug:** `RECALLAI_DELETE_CALENDAR`

Delete a calendar by ID. This will disconnect the calendar from Recall.ai. Use this when you need to remove a calendar integration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the calendar to delete. This will disconnect the calendar from Recall.ai. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Calendar User

**Slug:** `RECALLAI_DESTROY_CALENDAR_USER`

Delete calendar user and disconnect any connected calendars. This is a destructive operation that permanently removes the calendar user account and disconnects all associated calendar platform connections (Google, Microsoft, etc.).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique id of the user in your system. This identifies which calendar user to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Destroy Google Login

**Slug:** `RECALLAI_DESTROY_GOOGLE_LOGIN`

Tool to delete an existing Google Login by ID. Use when you need to remove a Google Login credential that is no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this google login. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Destroy Google Login Group

**Slug:** `RECALLAI_DESTROY_GOOGLE_LOGIN_GROUP`

Tool to delete an existing Google Login Group by ID. Use when you need to remove a Google Login Group that is no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this google login group. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Destroy Zoom OAuth App

**Slug:** `RECALLAI_DESTROY_ZOOM_O_AUTH_APP`

Tool to delete a Zoom OAuth App by ID. Use when you need to remove a Zoom OAuth application that is no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this zoom o auth app. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Disconnect Calendar User

**Slug:** `RECALLAI_DISCONNECT_CALENDAR_USER`

Tool to disconnect a calendar platform (Google or Microsoft) from the user's Recall.ai account. Use when you need to remove calendar integration for a specific platform.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique id of the user in your system whose calendar platform you want to disconnect. |
| `platform` | string ("google" | "microsoft") | Yes | The calendar platform to disconnect. Must be either 'google' or 'microsoft'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List audio mixed

**Slug:** `RECALLAI_LIST_AUDIO_MIXED`

List audio mixed artifacts from Recall.ai recordings. Returns a paginated list of mixed audio files with their processing status and download URLs. Use filters to narrow results by date range, recording ID, or processing status. Rate limit: 60 requests per minute per workspace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | Pagination cursor value for traversing result sets. Use the 'next' or 'previous' URL from the response to get subsequent pages. |
| `status_code` | string ("done" | "failed" | "processing") | No | Status codes for audio mixed artifacts |
| `recording_id` | string | No | Filter by specific recording identifier (UUID format) |
| `created_at_after` | string | No | Filter artifacts created after this timestamp (ISO 8601 date-time format) |
| `created_at_before` | string | No | Filter artifacts created before this timestamp (ISO 8601 date-time format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Audio Separate

**Slug:** `RECALLAI_LIST_AUDIO_SEPARATE`

List audio separation artifacts from recordings. Returns a paginated list of audio separation processing jobs with their status and download URLs for completed separations. Use this to retrieve participant-separated audio files from recorded meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value for fetching the next page of results |
| `status_code` | string ("processing" | "done" | "failed") | No | Status codes for audio separation artifacts |
| `recording_id` | string | No | Filter results to only include artifacts for a specific recording UUID |
| `created_at_after` | string | No | Filter results to only include artifacts created after this ISO 8601 timestamp |
| `created_at_before` | string | No | Filter results to only include artifacts created before this ISO 8601 timestamp |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List bots

**Slug:** `RECALLAI_LIST_BOTS`

List all bots in your Recall.ai workspace. Returns a paginated list of bots with their current status, meeting details, and configuration. Note: The meeting_url field is returned as a parsed object rather than a string.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Bot Screenshots

**Slug:** `RECALLAI_LIST_BOT_SCREENSHOTS`

List all screenshots captured by a bot during a meeting. Returns screenshots with their timestamp and download URL. Use filters to narrow results by recording time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `meta` | string | No | Encoded metadata for pagination state |
| `action` | string | No | Navigation direction ('prev' for previous page) |
| `bot_id` | string | Yes | The ID of the bot for which to retrieve the screenshots |
| `recorded_at_after` | string | No | Filter screenshots recorded after this datetime (ISO 8601 format) |
| `continuation_token` | string | No | Token for fetching the next page of results |
| `recorded_at_before` | string | No | Filter screenshots recorded before this datetime (ISO 8601 format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Calendar Events

**Slug:** `RECALLAI_LIST_CALENDAR_EVENTS`

Get a list of calendar events from connected calendars. Returns paginated calendar events with details about meeting URLs, platforms, and associated bots. Use filters like start_time__gte and start_time__lte to retrieve events within specific time ranges.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value for retrieving the next page. |
| `ical_uid` | string | No | Filter results by iCal UID. Case-sensitive prefix match will be performed. |
| `is_deleted` | boolean | No | Filter results by deletion status. |
| `start_time` | string | No | Filter results by exact start time in ISO 8601 format (e.g., '2024-01-15T10:00:00Z'). |
| `calendar_id` | string | No | Filter results by calendar ID. |
| `start_time__gte` | string | No | Filter results where start time is greater than or equal to the specified timestamp in ISO 8601 format. |
| `start_time__lte` | string | No | Filter results where start time is less than or equal to the specified timestamp in ISO 8601 format. |
| `updated_at__gte` | string | No | Filter results where updated_at is greater than or equal to the specified timestamp in ISO 8601 format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List calendar meetings

**Slug:** `RECALLAI_LIST_CALENDAR_MEETINGS`

List all calendar meetings for the authenticated calendar user. Filter by iCalendar UID or time range. Use this to retrieve upcoming meetings, find specific events, or sync calendar data with bots.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ical_uid` | string | No | Filter results by ical_uid. A case-sensitive prefix match will be performed. |
| `start_time_after` | string | No | Filter meetings that start after this timestamp (ISO 8601 format). |
| `start_time_before` | string | No | Filter meetings that start before this timestamp (ISO 8601 format). |
| `calendar_auth_token` | string | Yes | Calendar JWT authentication token obtained from the Create Calendar Authenticate endpoint. Required for accessing calendar meetings. Valid for 24 hours. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List calendars

**Slug:** `RECALLAI_LIST_CALENDARS`

Tool to retrieve a list of calendars integrated with Recall.ai. Use when you need to view all connected calendar accounts, check connection status, or filter calendars by platform (Google Calendar, Microsoft Outlook), email, or creation date. Supports pagination for large result sets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter calendars by the OAuth email address associated with the calendar account. |
| `cursor` | string | No | Pagination cursor value for retrieving the next page of results. Obtained from the 'next' field in previous responses. |
| `status` | string ("connecting" | "connected" | "disconnected") | No | Calendar connection status |
| `platform` | string ("google_calendar" | "microsoft_outlook") | No | Calendar platform types supported by Recall.ai |
| `created_at__gte` | string | No | Filter calendars created on or after this ISO 8601 timestamp. Use to retrieve only recently added calendars. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List calendar users

**Slug:** `RECALLAI_LIST_CALENDAR_USERS`

List all calendar users created for the account. Calendar users are used to automatically join and record meetings from integrated calendar providers. Use this to view all configured calendar users and their connection status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter results by email address. Only calendar users with this email will be returned. |
| `paginate` | boolean | No | Enable pagination for the results. When set to true, the API will paginate the response. Defaults to false if not specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List chat messages

**Slug:** `RECALLAI_LIST_CHAT_MESSAGES`

Get list of chat messages read by the bot in the meeting(excluding messages sent by the bot itself).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `bot_id` | string | Yes | The ID of the bot for which to retrieve the chat messages. |
| `cursor` | string | No | The pagination cursor value. |
| `ordering` | string | No | Which field to use when ordering the results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Google Login Groups

**Slug:** `RECALLAI_LIST_GOOGLE_LOGIN_GROUPS`

Tool to retrieve a list of all Google Login Groups in your Recall.ai workspace. Use when you need to view available Google login configurations for bot authentication. Supports pagination and filtering by name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Filter by exact group name. |
| `cursor` | string | No | The pagination cursor value to retrieve the next page of results. |
| `ordering` | string | No | Which field to use when ordering the results (e.g., 'name', '-name' for descending). |
| `name__contains` | string | No | Filter by groups whose name contains this substring. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Google Logins

**Slug:** `RECALLAI_LIST_GOOGLE_LOGINS`

Tool to retrieve a list of all Google Logins in your Recall.ai workspace. Use when you need to view individual Google login credentials. Supports pagination and filtering by email, group ID, active status, and workspace domain.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter by email address. |
| `cursor` | string | No | The pagination cursor value to retrieve the next page of results. |
| `group_id` | string | No | Filter by Google login group ID. |
| `ordering` | string | No | Which field to use when ordering the results (e.g., 'email', '-email' for descending). |
| `is_active` | boolean | No | Filter by active status (true for active logins, false for inactive). |
| `sso_v2_workspace_domain` | string | No | Filter by SSO v2 workspace domain. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Meeting Direct Connects

**Slug:** `RECALLAI_LIST_MEETING_DIRECT_CONNECT`

List all Meeting Direct Connect instances in your Recall.ai workspace. Returns a list of Meeting Direct Connect objects with their status, recordings, and configuration. Use this to monitor active direct connections and access their recordings.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Meeting Metadata

**Slug:** `RECALLAI_LIST_MEETING_METADATA`

List meeting metadata from Recall.ai recordings. Returns metadata extracted from meeting recordings including titles, participant info, and processing status. Use filtering to narrow results by date range, recording ID, or processing status. Results are paginated.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value for fetching the next page of results |
| `status_code` | string ("processing" | "done" | "failed") | No | Status code for meeting metadata processing |
| `recording_id` | string | No | Filter results by specific recording ID (UUID format) |
| `created_at_after` | string | No | Filter results to only include meeting metadata created after this ISO 8601 timestamp |
| `created_at_before` | string | No | Filter results to only include meeting metadata created before this ISO 8601 timestamp |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List participant events

**Slug:** `RECALLAI_LIST_PARTICIPANT_EVENTS`

List participant events artifacts from recorded meetings. Returns download URLs for participant events, speaker timelines, and participant lists. Use status_code filter to find completed artifacts ready for download.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | Pagination cursor value for retrieving the next page of results |
| `status_code` | string ("processing" | "done" | "failed") | No | Status codes for participant event artifacts |
| `recording_id` | string | No | Filter events by recording ID (UUID format) |
| `created_at_after` | string | No | Filter events created after this timestamp (ISO 8601 format, e.g., '2024-01-01T00:00:00Z') |
| `created_at_before` | string | No | Filter events created before this timestamp (ISO 8601 format, e.g., '2024-12-31T23:59:59Z') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Realtime Endpoints

**Slug:** `RECALLAI_LIST_REALTIME_ENDPOINT`

Tool to list realtime endpoints from Recall.ai. Use when you need to retrieve realtime endpoints filtered by creation date, recording, status, or type. Returns paginated results. The base rate limit for this endpoint is 60 requests per minute per workspace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("rtmp" | "websocket" | "webhook" | "desktop_sdk_callback") | No | Types of realtime endpoints |
| `cursor` | string | No | Pagination cursor value |
| `status_code` | string ("running" | "done" | "failed") | No | Status codes for realtime endpoints |
| `recording_id` | string | No | Filter results by specific recording identifier (UUID) |
| `created_at_after` | string | No | Filter for endpoints created after this timestamp (ISO 8601 format) |
| `created_at_before` | string | No | Filter for endpoints created before this timestamp (ISO 8601 format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Recordings

**Slug:** `RECALLAI_LIST_RECORDING`

Tool to list recordings from Recall.ai. Use when you need to retrieve recordings filtered by bot, creation date, status, or desktop SDK upload. Returns paginated results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `bot_id` | string | No | Filter recordings by bot ID |
| `cursor` | string | No | Pagination cursor value |
| `status_code` | string ("processing" | "paused" | "done" | "failed") | No | Status codes for recordings |
| `created_at_after` | string | No | Filter recordings created after this timestamp (ISO 8601 format) |
| `created_at_before` | string | No | Filter recordings created before this timestamp (ISO 8601 format) |
| `desktop_sdk_upload_id` | string | No | Filter recordings by desktop SDK upload ID |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Desktop SDK Uploads

**Slug:** `RECALLAI_LIST_SDK_UPLOADS`

Tool to get a paginated list of all Desktop SDK uploads in your Recall.ai workspace. Use when you need to retrieve upload history, monitor upload status, or access upload tokens and recording configurations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value for fetching the next page of results. Obtained from the 'next' field in a previous response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Slack Teams

**Slug:** `RECALLAI_LIST_SLACK_TEAMS`

Tool to list all Slack team integrations. Use when you need to retrieve configured Slack teams for huddle bot functionality. Returns all Slack workspaces where the bot can join huddles.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List transcript

**Slug:** `RECALLAI_LIST_TRANSCRIPT`

Tool to list transcripts from Recall.ai recordings. Returns a paginated list of transcripts with their status, content, and metadata. Use when you need to retrieve or filter transcripts by recording, status, or creation time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value |
| `status_code` | string ("processing" | "done" | "failed") | No | Status of the transcript processing |
| `recording_id` | string | No | Filter transcripts by recording ID |
| `created_at_after` | string | No | Filter transcripts created after this timestamp (ISO 8601 format) |
| `created_at_before` | string | No | Filter transcripts created before this timestamp (ISO 8601 format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Video Mixed Artifacts

**Slug:** `RECALLAI_LIST_VIDEO_MIXED`

List video mixed artifacts from recorded meetings. Video mixed artifacts combine all video sources (participants, screen shares, etc.) into a single MP4 file. Use when you need to retrieve processed meeting recordings with combined video output.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value for fetching next page |
| `status_code` | string ("processing" | "done" | "failed") | No | Status code filter for video mixed artifacts |
| `recording_id` | string | No | Filter results to only include video mixed artifacts for a specific recording ID |
| `created_at_after` | string | No | Filter results to only include video mixed artifacts created after this timestamp (ISO 8601 format) |
| `created_at_before` | string | No | Filter results to only include video mixed artifacts created before this timestamp (ISO 8601 format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List video separate

**Slug:** `RECALLAI_LIST_VIDEO_SEPARATE`

List video separate artifacts from Recall.ai recordings. Returns a paginated list of artifacts containing individual participant video files separated from recordings. Filter by creation date, recording ID, or processing status. Use cursor for pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value to retrieve the next or previous page of results |
| `status_code` | string ("processing" | "done" | "failed") | No | Video separate processing status |
| `recording_id` | string | No | Filter results to video separate artifacts associated with a specific recording ID (UUID format) |
| `created_at_after` | string | No | Filter results to video separate artifacts created after this ISO 8601 timestamp (e.g., '2024-01-15T10:00:00Z') |
| `created_at_before` | string | No | Filter results to video separate artifacts created before this ISO 8601 timestamp (e.g., '2024-01-20T23:59:59Z') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List zoom meetings to credentials

**Slug:** `RECALLAI_LIST_ZOOM_MEETINGS_TO_CREDENTIALS`

Tool to retrieve mappings from Zoom Meeting IDs to Zoom OAuth Credentials. Use when debugging bots that don't automatically record due to missing credentials or when inspecting which credential Recall uses for automatically fetching join tokens for a meeting. Supports filtering by credential, meeting ID, or sync time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | Pagination cursor value for retrieving the next page of results. Obtained from the 'next' field in previous responses. |
| `ordering` | string | No | Field to use when ordering the results. Prefix with '-' for descending order (e.g., '-synced_at'). |
| `credential` | string | No | Filter mappings by credential UUID. Use to retrieve all mappings associated with a specific Zoom OAuth credential. |
| `meeting_id` | integer | No | Filter mappings by Zoom meeting ID. Use to find which credential is mapped to a specific meeting. |
| `synced_at_after` | string | No | Filter mappings synced on or after this ISO 8601 timestamp. Use to retrieve recently updated mappings. |
| `synced_at_before` | string | No | Filter mappings synced on or before this ISO 8601 timestamp. Use to retrieve mappings last updated before a specific time. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Zoom OAuth App Logs

**Slug:** `RECALLAI_LIST_ZOOM_OAUTH_APP_LOGS`

Tool to retrieve Zoom OAuth app logs from Recall.ai. Use when you need to view warnings or errors related to Zoom OAuth apps for debugging purposes. Supports filtering by OAuth app, creation date, and pagination. Rate limit: 60 requests per minute per workspace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | Pagination cursor value for retrieving the next page of results. Obtained from the 'next' field in previous responses. |
| `ordering` | string | No | Field to use when ordering results. Specify a field name to sort the results (e.g., 'created_at', '-created_at' for descending). |
| `oauth_app` | string | No | Filter logs by specific Zoom OAuth app identifier (UUID). Use to view logs for a particular OAuth app. |
| `created_at_after` | string | No | Filter logs created after this ISO 8601 timestamp. Use to retrieve logs within a specific date range. |
| `created_at_before` | string | No | Filter logs created before this ISO 8601 timestamp. Use to retrieve logs within a specific date range. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Zoom OAuth Apps

**Slug:** `RECALLAI_LIST_ZOOM_OAUTH_APPS`

Tool to retrieve a list of Zoom OAuth apps configured in Recall.ai. Use when you need to view all registered Zoom OAuth applications, check their configuration, or filter by client ID, creation date, or webhook validation. Supports pagination for large result sets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `kind` | string | No | Filter by app kind/type. Specify the type of Zoom OAuth app to filter results. |
| `cursor` | string | No | Pagination cursor value for retrieving the next page of results. Obtained from the 'next' field in previous responses. |
| `ordering` | string | No | Field to use when ordering results. Specify a field name to sort the results (e.g., 'created_at', '-created_at' for descending). |
| `client_id` | string | No | Filter Zoom OAuth apps by client ID. Use to find apps with a specific client ID. |
| `created_at_after` | string | No | Filter apps created after this ISO 8601 timestamp. Use to retrieve only recently added apps. |
| `created_at_before` | string | No | Filter apps created before this ISO 8601 timestamp. Use to retrieve apps within a date range. |
| `webhook_last_validation_after` | string | No | Filter apps with webhook validation after this ISO 8601 timestamp. Use to find apps with recent webhook validations. |
| `webhook_last_validation_before` | string | No | Filter apps with webhook validation before this ISO 8601 timestamp. Use to find apps within a validation date range. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Zoom OAuth Credential Logs

**Slug:** `RECALLAI_LIST_ZOOM_OAUTH_CREDENTIAL_LOGS`

Tool to retrieve all Zoom OAuth Credential logs from Recall.ai. Use when debugging OAuth credential issues or investigating warnings and errors related to Zoom OAuth credentials. Helpful for troubleshooting authentication problems with Zoom bots.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | Pagination cursor value for retrieving the next page of results. Obtained from the 'next' field in previous responses. |
| `ordering` | string | No | Field to use when ordering the results. Prefix with '-' for descending order (e.g., '-created_at'). |
| `credential` | string | No | Filter logs by specific OAuth credential UUID. Use to view all logs related to a particular credential. |
| `created_at_after` | string | No | Filter logs created after this ISO 8601 timestamp. Use to retrieve only recent logs. |
| `created_at_before` | string | No | Filter logs created before this ISO 8601 timestamp. Use to retrieve logs within a date range. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Zoom OAuth Credentials

**Slug:** `RECALLAI_LIST_ZOOM_O_AUTH_CREDENTIALS`

Tool to retrieve a list of all Zoom OAuth credentials in your Recall.ai workspace. Use when you need to view Zoom authentication credentials, check their health status, or filter by account ID, user ID, sync status, or OAuth app. Supports pagination for large result sets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | The pagination cursor value for retrieving the next page of results. Obtained from the 'next' field in previous responses. |
| `status` | string ("healthy" | "unhealthy") | No | Status of the Zoom OAuth credential |
| `user_id` | string | No | Filter by Zoom user ID associated with the credential. |
| `ordering` | string | No | Which field to use when ordering the results. Prefix with '-' for descending order (e.g., '-created_at'). |
| `oauth_app` | string | No | Filter by OAuth app UUID. Use to retrieve credentials associated with a specific OAuth app. |
| `account_id` | string | No | Filter by Zoom account ID associated with the credential. |
| `created_at_after` | string | No | Filter credentials created after this ISO 8601 timestamp. Use to retrieve recently added credentials. |
| `created_at_before` | string | No | Filter credentials created before this ISO 8601 timestamp. Use to retrieve older credentials. |
| `meeting_sync_status` | string ("not_started" | "in_progress" | "completed" | "failed") | No | Status of initial meeting sync on the credential |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove bot from call

**Slug:** `RECALLAI_REMOVE_BOT_FROM_CALL`

Removes the bot from the meeting call. This action is irreversible and will immediately disconnect the bot. Use this when you need to manually end a bot's participation in a meeting before it would automatically leave. The bot must be in a state where it's joining or in a call (not already completed or failed).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The UUID of the bot to remove from the call. The bot must be in an active state (joining_call, in_call_recording, or in_call_not_recording). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Billing Usage

**Slug:** `RECALLAI_RETRIEVE_BILLING_USAGE`

Retrieve bot usage statistics for billing purposes. Returns the total amount of bot usage time in seconds for a specified date range. Use this to monitor usage, track billing metrics, or analyze bot activity over time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | End date for the billing period in ISO 8601 format (e.g., '2024-01-31T23:59:59Z'). If not provided, usage statistics will include data up to the current date. |
| `start` | string | No | Start date for the billing period in ISO 8601 format (e.g., '2024-01-01T00:00:00Z'). If not provided, usage statistics will start from the earliest available date. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve bot

**Slug:** `RECALLAI_RETRIEVE_BOT`

Retrieve detailed information about a specific bot instance by its ID. Returns comprehensive bot data including meeting details, recording configuration, status history, recordings, and automatic leave settings. Use this to check bot status, access recordings, or monitor bot lifecycle events.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `bot_id` | string | Yes | The unique identifier (UUID) of the bot instance to retrieve. This ID is returned when creating a bot or can be obtained from the list bots endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve calendars

**Slug:** `RECALLAI_RETRIEVE_CALENDARS`

Retrieve detailed information about a specific calendar by its UUID. Returns the calendar configuration including OAuth credentials, platform details, status, and webhook settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this calendar. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Google Login Group

**Slug:** `RECALLAI_RETRIEVE_GOOGLE_LOGIN_GROUP`

Tool to retrieve an existing Google Login Group by its ID. Use when you need to fetch details about a specific Google login group, including its login credentials, login mode, and associated metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the Google login group to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Meeting Direct Connect

**Slug:** `RECALLAI_RETRIEVE_MEETING_DIRECT_CONNECT`

Tool to retrieve detailed information about a Meeting Direct Connect instance by its ID. Use when you need to check the status, configuration, or recordings of a specific Meeting Direct Connect instance.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the Meeting Direct Connect instance to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve recording

**Slug:** `RECALLAI_RETRIEVE_RECORDING`

Tool to retrieve detailed information about a specific recording by its UUID. Returns comprehensive recording data including creation timestamps, status, media file shortcuts, and associated bot or desktop SDK upload references. Use when you need to access recording details, download links, or check recording status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the recording to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve sdk upload

**Slug:** `RECALLAI_RETRIEVE_SDK_UPLOAD`

Retrieve detailed information about a Desktop SDK upload instance by its ID. Returns comprehensive upload data including status, recording configuration, upload token, and metadata. Use this to check upload status or access recording details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the Desktop SDK upload instance to retrieve. This ID is returned when creating an SDK upload. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Video Mixed

**Slug:** `RECALLAI_RETRIEVE_VIDEO_MIXED`

Retrieve a video mixed artifact by its ID. Returns details about the mixed video including download URL, format, status, and associated recording information. Use this to access processed mixed video files from recordings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this video mixed artifact. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Zoom OAuth App

**Slug:** `RECALLAI_RETRIEVE_ZOOM_OAUTH_APP`

Retrieve detailed information about a specific Zoom OAuth app by its ID. Returns the OAuth app configuration including client credentials, app type (user-level or account-level), webhook settings, and creation timestamp. Use this to verify OAuth app configuration or retrieve credentials for integration setup.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the Zoom OAuth app to retrieve. This ID is returned when creating a Zoom OAuth app or can be obtained from the list Zoom OAuth apps endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Start recording

**Slug:** `RECALLAI_START_RECORDING`

Instructs the bot to start recording the meeting. This will restart the current recording if one is already in progress.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the bot to start recording. |
| `recording_mode` | string ("speaker_view" | "gallery_view" | "gallery_view_v2" | "audio_only") | No | Setting for the recording mode. |
| `real_time_media` | object | No | The settings for real-time media output. For example          {             "webhook_call_events_destination_url": "some_webhook_url",             "webhook_chat_messages_destination_url": "some_webhook_url",             "websocket_speaker_timeline_exclude_null_speaker": true,             "websocket_speaker_timeline_destination_url": "some_url",             "websocket_audio_destination_url": "some_url",             "websocket_video_destination_url": "some_url",             "rtmp_destination_url": "some_url"         } |
| `recording_mode_options` | object | No | Additional options for recording mode. For example          {             "participant_video_when_screenshare": "beside",             "start_recording_on": "participant_speak"         } |
| `real_time_transcription` | object | No | The settings for real-time transcription.          {             "destination_url": "some_url",             "partial_results": false,             "enhanced_diarization": true         } |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Stop recording

**Slug:** `RECALLAI_STOP_RECORDING`

Stops the current recording for the specified bot. This creates a new recording entry in the bot's recordings field. Important: The bot must be actively recording for this action to succeed. If the bot is not in a call or not currently recording, the API will return a 400 error. Use the RECALLAI_RETRIEVE_BOT action to check the bot's status before attempting to stop recording. Note: For pausing and resuming a single continuous recording, use the pause/resume recording endpoints instead. Stop recording will create separate recording entries.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The UUID of the bot whose recording should be stopped. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Bot

**Slug:** `RECALLAI_UPDATE_BOT`

Tool to partially update a scheduled bot. Use when you need to modify bot settings like bot_name, metadata, or configuration options for a scheduled bot that has not yet completed. Only provide fields you want to update.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the bot to update. |
| `chat` | object | No | Settings for the bot to send chat messages. Note: Chat functionality is only supported for Zoom, Google Meet and Microsoft Teams currently. |
| `zoom` | object | No | Zoom specific parameters like join_token_url, zak_url, user_email, obf_token_url. |
| `join_at` | string | No | The time at which the bot will join the call, formatted in ISO 8601. This field can only be read from scheduled bots that have not yet joined a call. Once a bot has joined a call, it's join_at will be cleared. |
| `variant` | object | No | Configure bot variants per meeting platforms, e.g. {'zoom': 'web_4_core'}. |
| `bot_name` | string | No | The name of the bot that will be displayed in the call. Note: Authenticated Google Meet bots will use the Google account name and this field will be ignored. |
| `metadata` | object | No | Custom metadata as key-value pairs. Values must be strings or null. |
| `google_meet` | object | No | Google Meet specific parameters such as google_login_group_id. |
| `meeting_url` | string | No | The url of the meeting. For example, https://zoom.us/j/123?pwd=456. This field will be cleared a few days after the bot has joined a call. |
| `output_media` | object | No | Settings for the bot output media including camera and screenshare configuration. |
| `breakout_room` | object | No | Configure how the bot handles breakout rooms. Currently, Zoom is supported. Examples: {'mode': 'join_main_room'} \| {'mode': 'join_specific_room', 'room_id': '<uuid>'} \| {'mode': 'auto_accept_all_invites'} (default). |
| `automatic_leave` | object | No | Settings for the bot to automatically leave the call. Configure timeouts for various scenarios like waiting room, empty meeting, recording states. |
| `recording_config` | object | No | Configure the recording generated by the bot. Includes options for getting meeting transcript, the layout of the recorded video, when to start recording and more. |
| `automatic_audio_output` | object | No | Settings for the bot to output audio. |
| `automatic_video_output` | object | No | Settings for the bot to output video. Image should be 16:9. Read more about this here: https://docs.recall.ai/docs/output-video-in-meetings |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Calendar

**Slug:** `RECALLAI_UPDATE_CALENDAR`

Update an existing calendar integration in Recall.ai. Use this to modify calendar metadata, OAuth credentials, webhook URLs, or platform settings. Only include fields you want to update; omitted fields remain unchanged.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this calendar. |
| `metadata` | object | No | Custom metadata for the calendar. Keys and values must be strings. Values can be null. |
| `platform` | string ("google_calendar" | "microsoft_outlook") | No | The calendar platform type (Google Calendar or Microsoft Outlook). |
| `oauth_email` | string | No | Email address associated with the OAuth credentials. |
| `webhook_url` | string | No | Webhook URL to receive calendar event notifications. |
| `oauth_client_id` | string | No | OAuth client ID for the calendar integration. |
| `oauth_client_secret` | string | No | OAuth client secret for the calendar integration. |
| `oauth_refresh_token` | string | No | OAuth refresh token for maintaining calendar access. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Calendar User

**Slug:** `RECALLAI_UPDATE_CALENDAR_USER`

Update recording preferences and calendar connections for a calendar user. Use this to configure which meetings should be automatically recorded based on meeting type (internal/external, recurring, host status) and to manage calendar platform connections (Google, Microsoft).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the calendar user to update |
| `connections` | array | Yes | List of calendar platform connections with their enabled/disabled status |
| `external_id` | string | No | External identifier for the calendar user |
| `preferences` | object | No | Recording preferences for calendar user |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Google Login

**Slug:** `RECALLAI_UPDATE_GOOGLE_LOGIN`

Tool to update an existing Google Login credential. Use when you need to modify authentication details like email, certificates, private keys, or SSO workspace domain for an existing Google login that bots use to join Google Meet meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the Google login to update. |
| `email` | string | Yes | The email address of the Google account to use for login. |
| `group_id` | string | Yes | The ID of the login group this login belongs to. |
| `is_active` | boolean | No | If the login should be used for round robin. (default: true) |
| `created_at` | string | Yes | ISO 8601 timestamp when the login was created. This field is typically returned by the API and should match the existing value when updating. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the login was last updated. This field is typically returned by the API and should match the existing value when updating. |
| `sso_v2_cert` | string | Yes | PEM-formatted x509 certificate which is registered in your Google Workspace SSO Profile. |
| `sso_v2_private_key` | string | Yes | PEM-formatted private key used for signing SSO requests. |
| `sso_v2_workspace_domain` | string | Yes | The primary domain name of your Google Workspace Account used for SSO. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Google Login Group

**Slug:** `RECALLAI_UPDATE_GOOGLE_LOGIN_GROUP`

Tool to update an existing Google Login Group in Recall.ai. Use when you need to modify the name, login mode, or login credentials for a Google login group that bots use to authenticate with Google Meet.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the Google login group to update |
| `name` | string | Yes | Name of the login group. It can be used to filter out login groups when retrieving them via API. |
| `logins` | array | Yes | List of Google login credentials in this group. Each login contains authentication details for a specific Google account. |
| `created_at` | string | Yes | ISO 8601 timestamp when the login group was created. This field is typically returned by the API and should match the existing value when updating. |
| `login_mode` | string ("always" | "only_if_required") | Yes | Login behaviour of bots that use this login group. 'always' means bots will always login before joining meetings. 'only_if_required' means bots will only login if the meeting requires authentication. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the login group was last updated. This field is typically returned by the API and should match the existing value when updating. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Partial Update Google Login Group

**Slug:** `RECALLAI_UPDATE_GOOGLE_LOGIN_GROUPS`

Tool to partially update an existing Google Login Group in Recall.ai. Use when you need to modify the name or login mode of a Google login group without replacing all fields. This performs a PATCH operation that only updates the fields you provide.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the Google login group to update. |
| `name` | string | No | Name of the login group. It can be used to filter out login groups when retrieving them via API. |
| `login_mode` | string ("always" | "only_if_required") | No | Login mode for bots using this login group |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Recording

**Slug:** `RECALLAI_UPDATE_RECORDING`

Tool to update a recording's metadata. Use when you need to update custom metadata fields on an existing recording without modifying other recording properties.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the recording to update. |
| `metadata` | object | No | Custom metadata to attach to the recording. Use this to store application-specific data like user IDs, session identifiers, or custom tags. Keys and values must be strings or null. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Video Mixed

**Slug:** `RECALLAI_UPDATE_VIDEO_MIXED`

Tool to partially update a video mixed artifact by ID. Use when you need to update metadata or other properties of an existing video mixed artifact without replacing the entire resource. This is commonly used to attach custom metadata to video recordings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying this video mixed artifact |
| `data` | object | No | Data object containing download URL for the video |
| `format` | string | No | Format of the mixed video file. Currently only 'mp4' is supported |
| `status` | object | No | Status information for the video mixed artifact |
| `metadata` | object | No | Custom metadata dictionary to attach to the video mixed artifact. Values can be strings or null. |
| `recording` | object | No | Recording information associated with the video mixed artifact |
| `created_at` | string | No | ISO 8601 timestamp when the video mixed artifact was created |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Zoom OAuth App

**Slug:** `RECALLAI_UPDATE_ZOOM_O_AUTH_APP`

Tool to update an existing Zoom OAuth App's credentials. Use when you need to update the client secret or webhook secret for a Zoom OAuth app without changing other properties.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | A UUID string identifying the Zoom OAuth app to update. |
| `client_secret` | string | No | The client secret for the Zoom OAuth app. Use this to update the app's authentication credentials. |
| `webhook_secret` | string | No | The webhook secret for verifying webhook requests from Zoom. Update this to enhance security or rotate credentials. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
