# Speak AI Docs > API reference, MCP tools, SDK guides, and changelog for Speak AI, written for humans and agents. Index: https://docs.speakai.co/llms.txt # Speak AI Docs > API reference, MCP tools, SDK guides, and changelog for Speak AI, written for humans and agents. Source: https://docs.speakai.co/ · Markdown: https://docs.speakai.co/index.md # Speak AI Docs Everything you need to build on Speak AI lives here: the MCP server and its tool reference, the REST API, the Node SDK, help articles, and the product changelog, under one root with one search index. This page mirrors the homepage. It is the Markdown twin an agent reads, so it carries the same facts in a flatter shape. ## Which surface are you building against? Speak AI is one system of record for voice, video, and text data, and you reach it through four surfaces. - **[MCP server](/mcp)** connects Claude, ChatGPT, Cursor, VS Code, and other Model Context Protocol clients to a Speak AI workspace. It runs at `https://api.speakai.co/v1/mcp` and exposes 112 tools covering media, transcripts, AI insights, folders, recorders, automations, and exports. ```bash claude mcp add speakai --transport http --url https://api.speakai.co/v1/mcp ``` - **[API reference](/api)** documents 75 REST endpoints across 13 resources at the base URL `https://api.speakai.co/v1`. Exchange your API key for an access token, then send that token on every call. ```bash curl -X POST 'https://api.speakai.co/v1/auth/accessToken' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'Content-Type: application/json' \ -d '{}' ``` - **[Node SDK](/sdk)** covers `@speakai/mcp-server`, the package that runs the MCP server and doubles as a Node library. Install it to register Speak AI's tools, resources, and prompts on your own MCP server. It needs Node 22 or newer. ```bash npm install @speakai/mcp-server ``` - **[Changelog](/changelog)** records every feature, fix, and improvement Speak AI has shipped, grouped by year, with an RSS feed at `/changelog/rss.xml` and a JSON feed at `/changelog/feed.json`. ```bash curl https://docs.speakai.co/changelog/feed.json ``` ## What else is in these docs? Three more sections cover what the reference pages do not. - **[Help](/help)** answers product questions about recorders, folders, uploads, and workspace settings. - **[Tool reference](/mcp/tools)** documents every MCP tool, resource, and prompt, grouped by the area it works on. ## How do agents read these docs? Agents get the same content as browsers, in a cleaner format. Fetch [llms.txt](https://docs.speakai.co/llms.txt) for the index of every page, or [llms-full.txt](https://docs.speakai.co/llms-full.txt) for the whole corpus in one document, then append `index.md` to any page path to read that page as clean Markdown with its frontmatter intact. A prompt worth pasting into any AI tool: ```text I'm working with Speak AI. Read https://docs.speakai.co/llms.txt for the documentation index, and connect the MCP server at https://api.speakai.co/v1/mcp for live workspace access. ``` # Speak AI API reference for audio, video, and text data > Reference for the Speak AI REST API: base URL, API key and access token authentication, error format, and every endpoint for media, folders, and more. Source: https://docs.speakai.co/api/ · Markdown: https://docs.speakai.co/api/index.md The Speak AI API is a REST API for uploading audio, video, and text, reading the transcripts and insights Speak AI generates from them, and managing the folders, recorders, webhooks, and automations around them. It covers 75 endpoints across 14 resources. ## What is the base URL for the Speak AI API? The base URL for the Speak AI API is `https://api.speakai.co/v1`. Every path on this reference is relative to that base URL, so `GET /media` means `GET https://api.speakai.co/v1/media`. ## How is the Speak AI API versioned? The Speak AI API is versioned in the URL path. The base URL is `https://api.speakai.co/[version]` and the current version is `v1`, so every request goes to `https://api.speakai.co/v1`. The spec does not document a deprecation policy or any version other than `v1`. ## How do you authenticate with the Speak AI API? Every Speak AI API call takes two headers: `x-speakai-key` with your API key, and `x-access-token` with an access token you generate from that key. Get your API key from the developer page in your Speak AI account, then exchange it for a token pair. ```bash curl -X POST 'https://api.speakai.co/v1/auth/accessToken' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'Content-Type: application/json' \ -d '{}' ``` ```json { "status": "success", "data": { "email": "your_email_id", "accessToken": "access_token", "refreshToken": "refresh_token" } } ``` Send the `accessToken` in the `x-access-token` header on every other call. The access token expires after 80 minutes and the refresh token after 24 hours. When the access token expires the API returns `401`, and you call `POST /auth/refreshToken` for a new pair. When the refresh token expires you start again at `POST /auth/accessToken`. > **Note** > > Full request and response detail for both token endpoints is on the [Authentication](/api/authentication/) page. ## What are the rate limits on the Speak AI API? The two authentication endpoints, `POST /auth/accessToken` and `POST /auth/refreshToken`, are limited to 5 requests per 60 seconds, and going over returns `429 Too Many Requests`. Back off and retry when you see a `429`. `POST /live-transcription/token` is limited the same way, to 5 requests per 60 seconds per IP address. It returns `429` with a plain text body rather than the usual JSON error, so mint one token per session and reuse it. > **Caution** > > Those three endpoints are the only ones with a documented rate limit. No limit is documented for any other endpoint, so none is stated here. Ask support before you assume a rate for a production integration. ## What does a Speak AI API error look like? A failed Speak AI API call returns a JSON body with a `status` of `failed`, a `requestId` you can quote to support, a numeric `code`, a human readable `message`, and sometimes a `hints` array. This example is the response to a call made with an invalid API key. ```json { "status": "failed", "requestId": "ca665625-645e-438a-867d-366a6e3f133a", "code": 401, "message": "The authorization api key provided for the request is invalid.", "hints": [ "The authorization api key provided for the request is invalid." ] } ``` A successful call returns `status: "success"` with the payload under `data`. Note that the HTTP status line and the `code` field in the body do not always agree, so read the `code` field as well as the HTTP status. ## Which endpoints does the Speak AI API have? Speak AI groups its 75 endpoints into 14 resources, one page each. Each page lists every endpoint in that resource with its parameters, an example request, and the response shape. | Resource | Endpoints | What it covers | | --- | --- | --- | | [Authentication](/api/authentication/) | 2 | Exchange your Speak AI API key for an access token, send it in the x-access-token header, and refresh the pair before the 80 minute expiry ends. | | [Media](/api/media/) | 10 | Upload audio and video to Speak AI, list your media library, poll processing status, read the transcript and insights, and run the analysis again. | | [Live transcription](/api/live-transcription/) | 3 | Open a live transcription session in Speak AI, mint the token that authorizes the streaming connection, and send words and the recording back as it runs. | | [Text](/api/text/) | 4 | Create a text note in Speak AI, read the insights generated from it, update the note when its content changes, and delete it when you are finished. | | [Exports](/api/exports/) | 4 | Export a transcript or its insights from Speak AI as PDF, DOCX, TXT, SRT, VTT, CSV, or JSON, one file at a time or several files in one request. | | [Folders](/api/folders/) | 12 | Create, list, clone, update, and delete Speak AI folders, and manage the saved views that control how the media inside a folder is filtered. | | [Recorders and surveys](/api/recorders/) | 11 | Create and clone Speak AI recorders, set their questions and settings, generate share URLs, and read the recordings that respondents submit. | | [Media embeds](/api/embeds/) | 5 | Create and update Speak AI media embeds, check whether a piece of media is already embedded, and get the iframe URL to drop into your own page. | | [AI chat](/api/ai-chat/) | 2 | Ask a question about the media stored in Speak AI and read the answer back, and list the AI chat prompts that have already run in your account. | | [Meeting assistant](/api/meeting-assistant/) | 4 | Schedule the Speak AI meeting assistant to join a call, list your scheduled and past meeting events, and remove or delete an assistant booking. | | [Fields](/api/fields/) | 4 | Create custom fields in Speak AI, list every field defined in your account, and update a single field or a whole batch of fields in one request. | | [Automations](/api/automations/) | 6 | Create, read, update, and delete Speak AI automations, and turn an automation on or off without changing the trigger and action it is built from. | | [Admin](/api/admin/) | 3 | Create users in your Speak AI account, update an existing user, and list every user the account contains. These endpoints are for account admins. | | [Webhooks](/api/webhooks/) | 5 | Register a webhook so Speak AI posts events to your server, list and update the webhooks on your account, send a test payload, and delete a webhook. | ## How current is this reference? Every endpoint, parameter, and response on these pages is generated from the API's OpenAPI 3.0 definition, so the reference matches what the API actually accepts and returns. When the API changes, these pages change with it. > **Note** > > Audio for a live transcription session streams over a WebSocket connection rather than REST. The three REST endpoints that open and feed a session are documented on the [Live transcription](/api/live-transcription/) page. The streaming connection itself is not, because its host is not part of the REST API. ## Related pages - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) - [Export Speak AI transcripts and insights to a file](/api/exports/) - [Organize Speak AI media with the folders endpoints](/api/folders/) - [Collect async voice and video with Speak AI recorders](/api/recorders/) - [Embed Speak AI media and transcripts in your pages](/api/embeds/) - [Ask questions about your media with the AI chat API](/api/ai-chat/) - [Send the Speak AI meeting assistant into your calls](/api/meeting-assistant/) - [Attach custom fields to your Speak AI media records](/api/fields/) - [Trigger Speak AI workflows with the automations API](/api/automations/) - [Manage Speak AI account users with the admin endpoints](/api/admin/) - [Receive Speak AI events with outbound webhook calls](/api/webhooks/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-overview), then start with [Authentication](/api/authentication/). # Manage Speak AI account users with the admin endpoints > Create users in your Speak AI account, update an existing user, and list every user the account contains. These endpoints are for account admins. Source: https://docs.speakai.co/api/admin/ · Markdown: https://docs.speakai.co/api/admin/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 3 admin endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). Manage your team. ## What can you do with the admin endpoints? Speak AI groups these 3 endpoints under the admin resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `POST` | [`/admin/user`](#post-admin-user) | Create New User | | `PUT` | [`/admin/user`](#put-admin-user) | Update User | | `GET` | [`/admin/users`](#get-admin-users) | List users |

Create New User

#### Add User Endpoint This endpoint allows administrators to add a new user to the system. The request requires a JSON payload containing user details. ##### Request Parameters The request body should be in JSON format and include the following parameters: - `firstName` (string): The first name of the user. - `lastName` (string): The last name of the user. - `email` (string): The email address of the user. - `isActive` (boolean): Indicates whether the user account is active. - `isVerified` (boolean): Indicates whether the user's email has been verified. - `permission` (object): An object specifying the permissions granted to the user: - `audio` (boolean): Permission to access audio features. - `video` (boolean): Permission to access video features. - `text` (boolean): Permission to access text features. - `addPayment` (boolean): Permission to manage payment options. - `userManagement` (boolean): Permission to manage other users. ##### Expected Response Upon a successful request, the server will respond with a confirmation of the user creation, typically including the user ID and any other relevant details about the newly created user. ##### Notes - Ensure that the email provided is unique and valid to avoid conflicts. - Permissions should be assigned based on the user's role within the organization. - This endpoint is restricted to users with administrative privileges. ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `firstName` | string | | `lastName` | string | | `email` | string | | `isActive` | boolean | | `isVerified` | boolean | | `permission` | object | | `permission.audio` | boolean | | `permission.video` | boolean | | `permission.text` | boolean | | `permission.addPayment` | boolean | | `permission.userManagement` | boolean |
```bash curl -X POST 'https://api.speakai.co/v1/admin/user' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "firstName": "Vatsal", "lastName": "Shah", "email": "test@abc.com", "isActive": true, "isVerified": true, "permission": { "audio": true, "video": true, "text": true, "addPayment": false, "userManagement": false } }' ```
**`200` Success** The spec records this status code with no example body.

Update User

#### Update User Details This endpoint allows administrators to update the details of a user in the system. It is a PUT request that modifies the user's information based on the provided payload. ##### Request Parameters The request body should be a JSON object with the following parameters: - **_id** (string): The unique identifier of the user to be updated. - **email** (string): The email address of the user. This field can be left empty if no change is required. - **firstName** (string): The first name of the user. - **lastName** (string): The last name of the user. - **isActive** (boolean): Indicates whether the user account is active. - **isVerified** (boolean): Indicates whether the user's email has been verified. - **permission** (object): An object that defines the permissions for the user with the following keys: - **audio** (boolean): Permission to access audio features. - **video** (boolean): Permission to access video features. - **text** (boolean): Permission to access text features. - **addPayment** (boolean): Permission to add payment methods. - **userManagement** (boolean): Permission to manage other users. ##### Expected Response Upon a successful update, the API will return a response indicating the status of the operation. The response typically includes a success message and may also return the updated user details. ##### Notes - Ensure that the user ID provided in the request is valid and corresponds to an existing user in the system. - The permissions object allows for fine-grained control over what the user can access, so be sure to set these values according to your application's requirements. - If any required fields are missing or invalid, the API will return an error response with details about the issue. ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `_id` | string | | `email` | string | | `firstName` | string | | `lastName` | string | | `isActive` | boolean | | `isVerified` | boolean | | `permission` | object | | `permission.audio` | boolean | | `permission.video` | boolean | | `permission.text` | boolean | | `permission.addPayment` | boolean | | `permission.userManagement` | boolean |
```bash curl -X PUT 'https://api.speakai.co/v1/admin/user' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "_id": "string", "email": "", "firstName": "Vatsal", "lastName": "Shah", "isActive": true, "isVerified": true, "permission": { "audio": true, "video": true, "text": true, "addPayment": false, "userManagement": false } }' ```
**`200` Success** The spec records this status code with no example body.

List users

#### Get Users This endpoint retrieves a list of users from the admin panel. It is primarily used by administrators to access user information stored in the system. ##### Request - **Method**: GET - **Endpoint**: `https://api.speakai.co/v1/admin/users` ##### Response The response will contain a JSON object with the following structure: - **users**: An array of user objects, where each user object includes: - **id**: Unique identifier for the user. - **name**: The name of the user. - **email**: The email address of the user. - **role**: The role assigned to the user (e.g., admin, user). - **status**: The current status of the user (e.g., active, inactive). ##### Example Response ``` json { "users": [ { "id": "123", "name": "John Doe", "email": "john.doe@example.com", "role": "admin", "status": "active" }, { "id": "124", "name": "Jane Smith", "email": "jane.smith@example.com", "role": "user", "status": "inactive" } ] } ``` ##### Notes - Ensure that appropriate authentication and authorization headers are included in the request to access this endpoint. - The response may vary based on the user's permissions and the number of users in the system.
```bash curl -X GET 'https://api.speakai.co/v1/admin/users' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` Success** The spec records this status code with no example body.
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-admin). # Ask questions about your media with the AI chat API > Ask a question about the media stored in Speak AI and read the answer back, and list the AI chat prompts that have already run in your account. Source: https://docs.speakai.co/api/ai-chat/ · Markdown: https://docs.speakai.co/api/ai-chat/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 2 ai chat endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). Fetch all your Speak AI Chat Responses. ## What can you do with the ai chat endpoints? Speak AI groups these 2 endpoints under the ai chat resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `GET` | [`/prompt`](#get-prompt) | All AI Chats | | `POST` | [`/prompt`](#post-prompt) | Ask AI Chat |

All AI Chats

Get AI Chat History.
```bash curl -X GET 'https://api.speakai.co/v1/prompt' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.totalCount` | integer | | `data.pages` | integer | | `data.history` | object[] | Deeper nested fields are not listed. See the example response below for the full shape. Example response (List of Prompts), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "totalCount": 2, "pages": 1, "history": [ { "id": "64b04ce76db5f05cba07a3ff", "prompt": "Identify the top 5 action items to prioritize for maximum impact", "answer": "", "createdAt": "2023-07-13T19:13:43.953Z", "assistantType": "general", "mediaName": "How To Upload A Video File On Desktop", "mediaIds": [ "de737309a4e9" ], "state": "failed", "link": "https://app.speakai.co/media/insight/MEDIA_URL" } ] } } ```

Ask AI Chat

AI Chat API allows you to run your own prompt via API. `Prompt` (**required**) - It will be your query - please be as descriptive as possible to get an accurate output `assistantType` (**default: general**) - Allow values are - general, researcher, marketer, sales, recruiter `mediaIds` (**required**) - You can pass multiple `mediaIds` to run your prompt OR pass a single mediaId in an array ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `prompt` | string | | `mediaIds` | string[] | | `assistantType` | string |
```bash curl -X POST 'https://api.speakai.co/v1/prompt' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "prompt": "Tell me how my speaking pace was. Did I speak too fast, at a good pace or too slowly? A good pace is between 140 and 170 words per minute. Less than 140 words per minute is too slow and more than 170", "mediaIds": [ "923884998a91" ], "assistantType": "general" }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.state` | string | | `data.answer` | string | | `data.totalMedia` | integer | | `data.references` | any[] | Example response (Success Response), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "state": "completed", "answer": "Main discussion points:\n\n- The video demonstrates how to upload a video file through Speak.\n- The process involves signing in, accessing the dashboard, and hitting the upload butto...", "totalMedia": 1, "references": [] } } ```
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-ai-chat). # Authenticate with the Speak AI API using access tokens > Exchange your Speak AI API key for an access token, send it in the x-access-token header, and refresh the pair before the 80 minute expiry ends. Source: https://docs.speakai.co/api/authentication/ · Markdown: https://docs.speakai.co/api/authentication/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 2 authentication endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). All Speak AI API operations require two headers: `x-speakai-key: your_speak_ai_api_key_here` `x-access-token: generated_access_token` --- ## Authentication Flow 1. **Get Access Token**: Call `POST /v1/auth/accessToken` with your `x-speakai-key` and `Content-Type: application/json` headers. The request body should be `{}` (empty JSON) when using API key authentication. On success, the response returns your `accessToken` and `refreshToken` inside the `data` object. 2. **Use Access Token**: Include the access token in the `x-access-token` header for all subsequent API calls, alongside your `x-speakai-key`. 3. **Refresh Token**: When the access token expires, call `POST /v1/auth/refreshToken` with both `x-speakai-key` and `x-access-token` headers (include the expired access token), and pass `{"refreshToken": "..."}` in the request body. You will receive a new `accessToken` and `refreshToken` pair. **Example Response** ```json { "data": { "email": "you@example.com", "accessToken": "eyJhbG...", "refreshToken": "eyJhbG..." } } ``` --- ## Token Expiry | Token | Expiry | Action on Expiry | |---|---|---| | Access Token | 80 minutes | Call Refresh Token endpoint | | Refresh Token | 24 hours | Re-authenticate via Get Access Token | --- ## Rate Limits Both `/v1/auth/accessToken` and `/v1/auth/refreshToken` are limited to **5 requests per 60 seconds**. Exceeding this returns `429 Too Many Requests`. --- ## Error Handling - **Expired Access Token**: Returns `401 Unauthorized`. Use the Refresh Token endpoint to obtain a new token pair. - **Expired Refresh Token**: Returns an error response. Re-authenticate from scratch via the Get Access Token endpoint. - **Rate Limited**: Returns `429`. Wait and retry, implement exponential backoff for automated clients. ## What can you do with the authentication endpoints? Speak AI groups these 2 endpoints under the authentication resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `POST` | [`/auth/accessToken`](#post-auth-access-token) | Get Access Token | | `POST` | [`/auth/refreshToken`](#post-auth-refresh-token) | Refresh Token |

Get Access Token

This endpoint allows you to obtain an access token by providing the necessary authentication credentials. The request body for this endpoint should include the your authentication credentials. Upon successful authentication, the server will respond with a status of "success" and provide the your email, access token, and refresh token in the response data. ### Request body Send an empty JSON object, `{}`, with `Content-Type: application/json`.
```bash curl -X POST 'https://api.speakai.co/v1/auth/accessToken' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'Content-Type: application/json' \ -d '{}' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.email` | string | | `data.accessToken` | string | | `data.refreshToken` | string | Example response (Get Access Token), `application/json`. ```json { "status": "success", "data": { "email": "your_email_id", "accessToken": "access_token", "refreshToken": "refresh_token" } } ```
**`404` Not Found** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `requestId` | string | | `code` | integer | | `message` | string | | `hints` | string[] | Example response (Get Access Token - Failure (No value found for Speak AI Key)), `application/json`. ```json { "status": "failed", "requestId": "ca665625-645e-438a-867d-366a6e3f133a", "code": 401, "message": "The authorization api key provided for the request is invalid.", "hints": [ "The authorization api key provided for the request is invalid." ] } ``` Example response (Get Access Token - Failure - Invalid API Key), `application/json`. ```json { "status": "failed", "requestId": "358bc130-e798-41c2-9864-2cd2ce9b766d", "code": 401, "message": "The authorization api key provided for the request is invalid.", "hints": [ "The authorization api key provided for the request is invalid." ] } ```

Refresh Token

This endpoint is used to refresh the access token by providing the refresh token in the request body. The refreshToken expires in 24 hour. #### Request Body - refreshToken (string, required): The refresh token used to obtain a new access token. #### Response - status (string): Indicates the status of the request, where "success" means the request was successful. - data (object): Contains the new access token and refresh token. - accessToken (string): The new access token. - refreshToken (string): The new refresh token. ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `refreshToken` | string |
```bash curl -X POST 'https://api.speakai.co/v1/auth/refreshToken' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "refreshToken": "refreshToken" }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.accessToken` | string | | `data.refreshToken` | string | Example response (Refresh Token), `application/json`. ```json { "status": "success", "data": { "accessToken": "new_access_token", "refreshToken": "new_refresh_token" } } ```
**`404` Not Found** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `requestId` | string | | `code` | integer | | `message` | string | Example response (Refresh Token - Failure - Invalid / Expired Token), `application/json`. ```json { "status": "failed", "requestId": "3fcf7e0c-a977-4c37-bae5-a72485206cd0", "code": 404, "message": "We were unable to find a valid token. Your token may have expired or invalid. Please contact development team." } ```
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) - [Export Speak AI transcripts and insights to a file](/api/exports/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-authentication). # Trigger Speak AI workflows with the automations API > Create, read, update, and delete Speak AI automations, and turn an automation on or off without changing the trigger and action it is built from. Source: https://docs.speakai.co/api/automations/ · Markdown: https://docs.speakai.co/api/automations/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 6 automations endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). Best way to automate your workflow with Automations. ## What can you do with the automations endpoints? Speak AI groups these 6 endpoints under the automations resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `GET` | [`/automations`](#get-automations) | Get Automations | | `POST` | [`/automations`](#post-automations) | Create Automation | | `GET` | [`/automations/{automationId}`](#get-automations-automation-id) | Get Automation | | `PUT` | [`/automations/{automationId}`](#put-automations-automation-id) | Update Automation | | `DELETE` | [`/automations/{automationId}`](#delete-automations-automation-id) | Delete Automation | | `PUT` | [`/automations/status/{automationId}`](#put-automations-status-automation-id) | Enable or Disable Automation |

Get Automations

The endpoint retrieves a list of automations via an HTTP GET request to https://api.speakai.co/v1/automations. #### Response The response will be in the form of a JSON schema, with the following structure: ``` json { "status": "", "data": { "totalCount": 0, "automationList": [ { "trigger": { "folderIds": [ { "name": "", "folderId": "" } ], "values": [], "type": "" }, "action": { "magicPrompt": { "title": "", "assistantType": "", "prompt": "" }, "type": "" }, "name": "", "description": "", "runType": "", "isActive": true, "automationId": "", "actionHistory": [ { "type": "" } ], "createdAt": "", "updatedAt": "", "history": 0 } ] } } ``` The response will have a status code of 200 upon successful retrieval of the automation list. For related responses from other endpoints of this API, the data model will be largely similar, with the addition of "email", "accessToken", and "refreshToken" fields in the "data" object, and a status code of 200.
```bash curl -X GET 'https://api.speakai.co/v1/automations' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` Success** The spec records this status code with no example body.

Create Automation

The API request creates an automation by sending an HTTP POST request to the specified endpoint. The request body is in JSON format and includes the name, description, runType, trigger, and action details. The trigger type is "folders" with specific folder IDs, and the action type is "magic-prompt" with associated details like title, assistantType, prompt, and assistantTemplateId. The last call to this request used the following payload with the raw request body type: ``` json { "name": "First Automation", "description": "Test", "action": { "type": "magic-prompt", "magicPrompt": { "prompt": "Summarize my meetings", "assistantType": "general" } }, "trigger": { "type": "folders", "folderIds": ["3711858e52a6"] } } ``` The response to the last execution returned a 200 status code with the following content in JSON format: ``` json { "status": "", "data": { "automationId": "", "message": "" } } ``` Additionally, related responses from other endpoints of this API also returned 200 status codes with similar data models, including email, access token, refresh token, totalCount, automation list, and trigger details. Please note that the specific values (such as automationId, email, accessToken, refreshToken, folderIds, etc.) have been intentionally masked for privacy. ##### 1\. **Instant Automation with AI Chat Action** **Body (JSON):** ``` json { "name": "Instant Folder Analysis", "description": "Automatically analyze documents in specific folders using AI assistant", "runType": "instant", "trigger": { "type": "folders", "folderIds": ["folder123", "folder456"] }, "action": { "type": "magic-prompt", "magicPrompt": { "title": "Document Analysis", "assistantType": "researcher", "prompt": "Analyze the document content and provide key insights, main topics, and actionable recommendations.", "assistantTemplateId": "template123" } }, "fieldId": "field789" } ``` ##### 2\. **Scheduled Automation with Translation Action** **Method:** `POST` **Body (JSON):** ``` json { "name": "Weekly Document Translation", "description": "Translate documents in selected folders every week", "runType": "schedule", "schedule": { "timePeriod": "last7days", "repeatAt": "09:00" }, "trigger": { "type": "folders", "folderIds": ["folder789", "folder101"] }, "action": { "type": "translation", "translation": { "targetLanguage": "spanish" } } } ``` ##### 3\. **Instant Automation with Custom AI Chat** **Method:** `POST` **Body (JSON):** ``` json { "name": "Sales Lead Analysis", "description": "Analyze potential leads and generate sales insights", "runType": "instant", "trigger": { "type": "folders", "folderIds": ["leads-folder"] }, "action": { "type": "magic-prompt", "magicPrompt": { "title": "Sales Intelligence", "assistantType": "sales", "prompt": "Review the lead information and provide: 1) Lead quality score (1-10), 2) Key pain points identified, 3) Recommended follow-up strategy, 4) Potential deal size estimate", "assistantTemplateId": "" } } } ``` ##### 4\. **Scheduled Automation with Marketing Analysis** **Method:** `POST` **Body (JSON):** ``` json { "name": "Daily Marketing Report", "description": "Generate daily marketing insights from campaign data", "runType": "schedule", "schedule": { "timePeriod": "yesterday", "repeatAt": "08:00" }, "trigger": { "type": "folders", "folderIds": ["marketing-data", "campaign-reports"] }, "action": { "type": "magic-prompt", "magicPrompt": { "title": "Marketing Daily Digest", "assistantType": "marketer", "prompt": "Analyze yesterday's marketing data and provide: 1) Top performing campaigns, 2) Key metrics summary, 3) Trends identified, 4) Recommendations for today", "assistantTemplateId": "marketing-template-001" } }, "fieldId": "marketing-field-123" } ``` #### **Available Enum Values:** **Run Types:** - `"instant"` - Executes immediately when triggered - `"schedule"` - Executes based on schedule configuration **Trigger Types:** - `"folders"` - Triggered by folder changes - `"tags"` - Triggered by tag changes - `"keywords"` - Triggered by keyword matches **Action Types:** - `"magic-prompt"` - AI-powered content analysis - `"translation"` - Document translation **Assistant Types (for magic-prompt):** - `"researcher"`, `"marketer"`, `"sales"`, `"general"`, `"recruiter"`, `"custom"` **Schedule Time Periods:** - `"today"`, `"yesterday"`, `"last7days"`, `"last14days"`, `"thisWeek"` These examples cover both instant and scheduled automation types with different actions. Make sure to replace the placeholder values (folder IDs, template IDs, etc.) with actual values from your system. ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | Description | | --- | --- | --- | | `name` | string | | | `description` | string | | | `runType` | string | | | `schedule` | object | | | `schedule.timePeriod` | string | | | `schedule.repeatAt` | string | | | `trigger` | object | | | `trigger.type` | string | | | `trigger.folderIds` | string[] | | | `fieldId` | string | | | `steps` | object[] | Ordered automation steps. Required, at least 1 and at most 20. |
```bash curl -X POST 'https://api.speakai.co/v1/automations' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "name": "Daily Marketing Report", "description": "Generate daily marketing insights from campaign data", "runType": "schedule", "schedule": { "timePeriod": "yesterday", "repeatAt": "08:00" }, "trigger": { "type": "folders", "folderIds": [ "marketing-data", "campaign-reports" ] }, "fieldId": "marketing-field-123", "steps": [ { "stepId": "step-1", "stepType": "magic-prompt", "magicPrompt": { "promptId": "prompt-123", "name": "Weekly summary" } } ] }' ```
**`200` Success** The spec records this status code with no example body.

Get Automation

The endpoint makes an HTTP GET request to retrieve a list of automations from the specified URL. The response of this request can be documented as a JSON schema: ``` json { "type": "object", "properties": { "status": { "type": "string" }, "data": { "type": "object", "properties": { "totalCount": { "type": "integer" }, "automationList": { "type": "array", "items": { "type": "object", "properties": { "trigger": { "type": "object", "properties": { "type": { "type": "string" }, "folderIds": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "folderId": { "type": "string" } } } }, "values": { "type": "array" } } }, "action": { "type": "object", "properties": { "magicPrompt": { "type": "object", "properties": { "title": { "type": "string" }, "assistantType": { "type": "string" }, "assistantTemplateId": { "type": "string" }, "prompt": { "type": "string" } } }, "type": { "type": "string" } } }, "name": { "type": "string" }, "description": { "type": "string" }, "runType": { "type": "string" }, "isActive": { "type": "boolean" }, "automationId": { "type": "string" }, "actionHistory": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string" } } } }, "createdAt": { "type": "string" }, "updatedAt": { "type": "string" }, "history": { "type": "integer" } } } } } } } } ``` ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `automationId` | path | string | Yes | |
```bash curl -X GET 'https://api.speakai.co/v1/automations/97c57afd7ff1' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` Success** The spec records this status code with no example body.

Update Automation

#### Update Automation **Body (JSON):** ``` json { "name": "Updated Marketing Analysis", "description": "Enhanced automation with schedule and new assistant type", "isActive": true, "runType": "schedule", "schedule": { "timePeriod": "last7days", "repeatAt": "09:30" }, "trigger": { "type": "folders", "folderIds": ["folder123", "folder456"] }, "action": { "type": "magic-prompt", "magicPrompt": { "title": "Weekly Marketing Report", "assistantType": "marketer", "prompt": "Analyze marketing data and provide insights, trends, and recommendations", "assistantTemplateId": "marketing-template-001" } }, "fieldId": "marketing-field-123" } ``` #### **Key Points:** • **Path Parameter Required:** `automationId` must be included in the URL path • **Partial Updates Supported:** You can update only specific fields, not all fields are required • **Run Type Changes:** When changing to `"schedule"`, include the `schedule` object with `timePeriod` and `repeatAt` • **Trigger & Action Required:** Both `trigger` and `action` objects appear to be required in the request body • **Assistant Type :** The `assistantType` is for custom Assistant selected • **Status Control:** Use `isActive: true/false` to enable or disable the automation • **Optional Fields:** `fieldId` is optional and only used with magic-prompt actions • **Schedule Time Periods:** Available options - `"today"`, `"yesterday"`, `"last7days"`, `"last14days"`, `"thisWeek"` • **Action Types:** Support for `"magic-prompt"` and `"translation"` action types • **Trigger Types:** Support for `"folders"`, `"tags"`, and `"keywords"` trigger types • **Assistant Types:** Available options - `"researcher"`, `"marketer"`, `"sales"`, `"general"`, `"recruiter"`, `"custom"` ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `automationId` | path | string | Yes | | ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | Description | | --- | --- | --- | | `name` | string | | | `description` | string | | | `isActive` | boolean | | | `runType` | string | | | `schedule` | object | | | `schedule.timePeriod` | string | | | `schedule.repeatAt` | string | | | `trigger` | object | | | `trigger.type` | string | | | `trigger.folderIds` | string[] | | | `fieldId` | string | | | `steps` | object[] | Ordered automation steps. Required, at least 1 and at most 20. |
```bash curl -X PUT 'https://api.speakai.co/v1/automations/AUTOMATION_ID' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "name": "Updated Marketing Analysis", "description": "Enhanced automation with schedule and new assistant type", "isActive": true, "runType": "schedule", "schedule": { "timePeriod": "last7days", "repeatAt": "09:30" }, "trigger": { "type": "folders", "folderIds": [ "folder123", "folder456" ] }, "fieldId": "marketing-field-123", "steps": [ { "stepId": "step-1", "stepType": "magic-prompt", "magicPrompt": { "promptId": "prompt-123", "name": "Weekly summary" } } ] }' ```
**`200` Success** The spec records this status code with no example body.

Delete Automation

#### DELETE Automation This endpoint is used to delete a specific automation identified by its unique `automationId`. By sending a DELETE request to this endpoint, you can remove an automation from the system. ##### Request Format - **Method**: DELETE - **Endpoint**: `https://api.speakai.co/v1/automations/{automationId}` - **Path Parameter**: - `automationId` (string): The unique identifier of the automation that you wish to delete. This parameter is required and should be included in the URL. ##### Response Structure Upon successful deletion of the automation, the server will respond with a confirmation message. The expected response is typically structured as follows: - **Status Code**: `204 No Content` - Indicates that the request was successful and there is no additional content to send in the response body. In case of an error, the server may return a different status code along with an error message detailing the issue encountered. Ensure to handle responses appropriately based on the status code received. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `automationId` | path | string | Yes | |
```bash curl -X DELETE 'https://api.speakai.co/v1/automations/null' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` Success** The spec records this status code with no example body.

Enable or Disable Automation

#### Update Automation Status This endpoint allows you to update the status of a specific automation to enable or disable by providing the automation ID in the URL path. ##### Request Body The request body should contain the following parameters: - `status`: (string) The new status for the automation. - `message`: (string) An optional message related to the status update. ##### Response The response will have a status code of 200 and a JSON body with the following structure: - `status`: (string) Indicates the status of the request. - `message`: (string) Provides additional information about the status. ##### Sample Response ``` json { "status": "", "message": "" } ``` ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `automationId` | path | string | Yes | |
```bash curl -X PUT 'https://api.speakai.co/v1/automations/status/97c57afd7ff1' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` Success** The spec records this status code with no example body.
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-automations). # Embed Speak AI media and transcripts in your pages > Create and update Speak AI media embeds, check whether a piece of media is already embedded, and get the iframe URL to drop into your own page. Source: https://docs.speakai.co/api/embeds/ · Markdown: https://docs.speakai.co/api/embeds/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 5 media embeds endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). Embed Individual Media Player or the Folder (as repository) to make the insights, transcription and insights publicly visible or share with others. ## What can you do with the media embeds endpoints? Speak AI groups these 5 endpoints under the media embeds resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `GET` | [`/embed`](#get-embed) | Check Embed | | `POST` | [`/embed`](#post-embed) | Create Embed | | `PUT` | [`/embed/{embedId}`](#put-embed-embed-id) | Update Embed | | `GET` | [`/embed/iframe`](#get-embed-iframe) | Get Iframe URL | | `GET` | [`/embed/privacyState`](#get-embed-privacy-state) | Check Embed Privacy Mode |

Check Embed

Checks if an embed already exits and returns status and token id. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `mediaId` | query | string | No | ID of the media file to check for an embed |
```bash curl -X GET 'https://api.speakai.co/v1/embed' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.meta` | object | | `data._id` | string | | `data.mediaId` | string | | `data.token` | string | | `data.privacyMode` | string | Deeper nested fields are not listed. See the example response below for the full shape. Example response, `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "meta": { "backgroundImg": "", "logo": "", "primaryColor": "", "isDataVizDownloadable": true, "isSEOIndexing": true, "isTitle": true, "isDescription": true, "callToActionButtons": [], "features": [ { "name": "transcript", "isActive": true } ] }, "_id": "61280763ec13780791f004b2", "mediaId": "e4e3079e3da9", "token": "daily-standup-august-23-2021-239819a49b2d", "privacyMode": "public" } } ```

Create Embed

Create an Interactive Media Player by passing the value for `mediaId` OR `folderIds` - By passing `mediaId` - Create an individual media player. - By passing `folderIds` - Create a repository for a folder to share with others. Make sure you have access to Shareable Media Repository in your subscription. ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `folderIds` | string[] |
```bash curl -X POST 'https://api.speakai.co/v1/embed' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "folderIds": [ "e88575b384b6" ] }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data._id` | string | | `data.meta` | object | | `data.mediaId` | string | | `data.folderIds` | any[] | | `data.mediaType` | string | | `data.token` | string | | `data.privacyMode` | string | | `data.page` | string | | `data.iframe` | string | Deeper nested fields are not listed. See the example response below for the full shape. Example response (Create Embed), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "_id": "65660bf97f916888ccc2f4ca", "meta": { "callToActionButtons": [ { "url": "https://speakai.co", "label": "Speak Ai" } ], "features": [ { "name": "labels", "isActive": true } ], "isDataVizDownloadable": false, "isDescription": false, "isSEOIndexing": false, "isRemarks": true, "isPromptAsk": true, "isPromptHistory": true, "isTitle": true, "primaryColor": "#c42860" }, "mediaId": "3afc714552cd", "folderIds": [], "mediaType": "video", "token": "how-to-edit-the-transcript-79a590aa126b", "privacyMode": "private", "page": "", "iframe": "" } } ```

Update Embed

Update an existing Embed Media Player. - Make sure to pass in path `embedId` to update your existing player ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `embedId` | path | string | Yes | | ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `_id` | string | | `mediaId` | string | | `meta` | object | | `meta.backgroundImg` | string | | `meta.callToActionButtons` | object[] | | `meta.features` | object[] | | `meta.isDataVizDownloadable` | boolean | | `meta.isDescription` | boolean | | `meta.isSEOIndexing` | boolean | | `meta.isRemarks` | boolean | | `meta.isPromptAsk` | boolean | | `meta.isPromptHistory` | boolean | | `meta.isTitle` | boolean | | `meta.logo` | string | | `meta.primaryColor` | string | Deeper nested fields are not listed. See the example response below for the full shape.
```bash curl -X PUT 'https://api.speakai.co/v1/embed/65660bf97f916888ccc2f4ca' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "_id": "65660bf97f916888ccc2f4ca", "mediaId": "3afc714552cd", "meta": { "backgroundImg": "", "callToActionButtons": [ { "url": "https://speakai.co", "label": "Speak Ai" } ], "features": [ { "name": "keywords", "isActive": true }, { "name": "transcript", "isActive": true } ], "isDataVizDownloadable": true, "isDescription": true, "isSEOIndexing": true, "isRemarks": true, "isPromptAsk": false, "isPromptHistory": true, "isTitle": true, "logo": "", "primaryColor": "#c42860" } }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data._id` | string | | `data.meta` | object | | `data.mediaId` | string | | `data.folderIds` | any[] | | `data.embedType` | string | | `data.isActive` | boolean | | `data.isDeleted` | boolean | | `data.analytics` | any[] | | `data.companyId` | string | | `data.userId` | string | | `data.mediaType` | string | | `data.token` | string | | `data.createdAt` | string (date-time) | | `data.updatedAt` | string (date-time) | | `data.__v` | integer | | `data.password` | string | Deeper nested fields are not listed. See the example response below for the full shape. Example response (Update Embed), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "_id": "65660bf97f916888ccc2f4ca", "meta": { "backgroundImg": "", "callToActionButtons": [ { "url": "https://speakai.co", "label": "Speak Ai" } ], "features": [ { "name": "keywords", "isActive": true } ], "isDataVizDownloadable": true, "isDescription": true, "isSEOIndexing": true, "isRemarks": true, "isPromptAsk": false, "isPromptHistory": true, "isTitle": true, "logo": "", "primaryColor": "#c42860" }, "mediaId": "3afc714552cd", "folderIds": [], "embedType": "mediaPlayer", "isActive": true, "isDeleted": false, "analytics": [], "companyId": "5e21c8dd2d77242c64214816", "userId": "5d03a9d5d4bca272e9c8cf89", "mediaType": "video", "token": "how-to-edit-the-transcript-79a590aa126b", "createdAt": "2023-11-28T15:49:13.511Z", "updatedAt": "2023-11-28T15:55:58.403Z", "__v": 0, "password": "" } } ```

Get Iframe URL

Get Embed Iframe and Page URL Either pass `mediaId` for individaul file. OR Pass `folderId` for a repository URLs. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `mediaId` | query | string | No | Either Folder ID or Media ID | | `folderId` | query | string | No | Either Folder ID or Media ID |
```bash curl -X GET 'https://api.speakai.co/v1/embed/iframe?mediaId='\'''\''' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.iframe` | string | | `data.page` | string | Example response (Get Iframe URL), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "iframe": "", "page": "https://recorder.speakai.co/recorder-9-4fb7713e267a" } } ```
**`404` Not Found** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `requestId` | string | | `code` | integer | | `message` | string | | `hints` | string[] | Example response, `application/json`. ```json { "status": "failed", "requestId": "1babfc3a-9f8f-4c22-83c8-0367cb2b7cb1", "code": 404, "message": "Recorder Id not found!", "hints": [ "The requested operation failed because a resource associated with the request could not be found." ] } ```

Verify Password

User to grant\prohobit access to a password-protected recorder ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `token` | string | | `password` | string |
```bash curl -X POST 'https://api.speakai.co/v1/recorder/verify' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "token": "token", "password": "123" }' ```
**`404` Not Found** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `requestId` | string | | `code` | integer | | `message` | string | | `hints` | string[] | Example response, `application/json`. ```json { "status": "failed", "requestId": "32732927-3809-4973-a82b-82663013d36f", "code": 404, "message": "Recorder not found!", "hints": [ "The requested operation failed because a resource associated with the request could not be found." ] } ```
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-recorders). # Analyze text notes with the Speak AI text endpoints > Create a text note in Speak AI, read the insights generated from it, update the note when its content changes, and delete it when you are finished. Source: https://docs.speakai.co/api/text/ · Markdown: https://docs.speakai.co/api/text/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 4 text endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). Text notes are operable as well, complete listing of media can be requested, insight to particular analyzed media, analytics on top of our analysis, and of course, you can delete your note ! Attention: `id` is the required parameter here instead of `mediaId` as in Media functionalities Re-analyzing a text note runs through `GET /media/reanalyze/{mediaId}`, which covers text notes and uploaded files alike. It is documented on the [Media](/api/media/) page. ## What can you do with the text endpoints? Speak AI groups these 4 endpoints under the text resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `DELETE` | [`/text/{mediaId}`](#delete-text-media-id) | Delete Text Note | | `POST` | [`/text/create`](#post-text-create) | Create Text note | | `GET` | [`/text/insight/{mediaId}`](#get-text-insight-media-id) | Text Insight | | `PUT` | [`/text/update/{mediaId}`](#put-text-update-media-id) | Update Text Note |

Delete Text Note

#### DELETE Request to Remove a Text Resource This endpoint is used to delete a specific text resource identified by its unique `mediaId`. By sending a DELETE request to this endpoint, the client can remove the text resource from the server. ##### Request Parameters - **mediaId** (path parameter): A unique identifier for the text resource that you wish to delete. This is a required parameter and should be included in the URL. ##### Response Structure Upon successful deletion of the text resource, the server will respond with a status code indicating the outcome of the request: - **204 No Content**: Indicates that the resource was successfully deleted and there is no additional content to return. - **404 Not Found**: Indicates that the specified `mediaId` does not correspond to any existing resource. ##### Example To delete a text resource with a specific `mediaId`, the request would look like: ```text DELETE https://api.speakai.co/v1/text/12345 ``` This request would attempt to delete the text resource with the ID `12345`. Make sure to handle the response appropriately to confirm the deletion or to manage any errors that may arise. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `mediaId` | path | string | Yes | |
```bash curl -X DELETE 'https://api.speakai.co/v1/text/3722e7826784' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` Success** The spec records this status code with no example body.

Create Text note

#### PARAMETERS The difference between `rawText` and `text.` `text` (required): Text is an HTML field to display content on the editor. It helps users to identify `bold,` `italic` or any other editor functionality. **Important:** If you don't have an HTML editor in your application, you can pass normal text content. `rawText` (required): This helps Speak AI to analyze text notes. `remark`: If you want to pass any remarks from the user to display on Speak and also in your application. ``` json userId: String; // optional folderId: String, // optional name: String, // required, description: string, // optional tags: [], // optional text: "HTML content", // required rawText: "raw text content", // required remark: "string", // optional ``` ##### Webhook Callback URL: - If you created a webhook for text events and want to receive a callback to a specific URL for this text note, you can assign `callbackUrl` - `string` in a `req.body`. - Speak will consider the `callbackUrl` and will skip the callbackUrl created via Webhook API. --- #### Response You can select from the examples attached to this API endpoint or find below: ```text { "status": "success", "data": { "mediaId": "xxxxxxxxx", "folderId": "" } } ``` ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `name` | string | | `folderId` | string | | `description` | string | | `tags` | string[] | | `text` | string | | `rawText` | string | | `remark` | string | | `fields` | object[] | | `fields[].id` | string | | `fields[].value` | string |
```bash curl -X POST 'https://api.speakai.co/v1/text/create' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "name": "text file 1", "folderId": "", "description": "description", "tags": [ "tag1", "tag2" ], "text": "This is my sample text. Please provide the proper text with some entities included in it. For example: Apple, Canada, Fruits, $50,000.", "rawText": "This is my sample text. Please provide the proper text with some entities included in it. For example: Apple, Canada, Fruits, $50,000.", "remark": "add any remarks", "fields": [ { "id": "", "value": "" } ] }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.mediaId` | string | Example response (Create Text note), `application/json`. ```json { "status": "success", "data": { "mediaId": "c55125c7cc32" } } ```

Text Insight

You need to call this API to find the insights from your text note. Please check an example find the return response and an object. #### Response ```text { "status": "success", "data": { "count": { "wordCount": 0, "characterCount": 0, "characterCountWithoutSpace": 0 }, "insight": { "intents": { "needs": [ { "id": 32, "text": "Sentence 1" } ], "wants": [ { "id": 50, "text": "Sentence 1" } ] }, "state": "processed", "updatedAt": "2021-04-13T00:30:26.720Z", "arts": [ { "isDeleted": false, "instances": [ { "endChar": 512, "startChar": 489 } ], "isCustom": false, "name": "xxxxx", "id": 0 }, { "isDeleted": false, "instances": [ { "endChar": 1397, "startChar": 1386 } ], "isCustom": false, "name": "xxxxxxx", "id": 1 } ], "brands": [ { "isDeleted": false, "instances": [ { "endChar": 202, "startChar": 198 }, { "endChar": 356, "startChar": 352 } ], "isCustom": false, "name": "xxxxx", "id": 0 }, { "isDeleted": false, "instances": [ { "endChar": 333, "startChar": 310 } ], "isCustom": false, "name": "xxxxx", "id": 1 }, { "isDeleted": false, "instances": [ { "endChar": 721, "startChar": 713 }, { "endChar": 3009, "startChar": 3001 }, { "endChar": 6074, "startChar": 6066 }, { "endChar": 6391, "startChar": 6383 }, { "endChar": 6615, "startChar": 6607 }, { "endChar": 6854, "startChar": 6846 }, { "endChar": 6914, "startChar": 6906 } ], "isCustom": false, "name": "xxxxx", "id": 2 } ], "cardinals": [ { "isDeleted": false, "instances": [ { "endChar": 1797, "startChar": 1794 }, { "endChar": 1850, "startChar": 1847 } ], "isCustom": false, "name": "xxxxx", "id": 0 }, { "isDeleted": false, "instances": [ { "endChar": 3028, "startChar": 3022 } ], "isCustom": false, "name": "xxxxx", "id": 1 } ], "dates": [ { "isDeleted": false, "instances": [ { "endChar": 755, "startChar": 739 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "events": [ { "isDeleted": false, "instances": [ { "endChar": 755, "startChar": 739 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "facs": [ { "isDeleted": false, "instances": [ { "endChar": 755, "startChar": 739 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "geopolitical": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "keywords": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "languages": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "laws": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "locations": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "money": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "nationalities": [ { "isDeleted": false, "instances": [ { "endChar": 1284, "startChar": 1275 } ], "isCustom": false, "name": "Republish", "id": 0 } ], "ordinals": [ { "isDeleted": false, "instances": [ { "endChar": 2812, "startChar": 2807 }, { "endChar": 2851, "startChar": 2846 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "people": [ { "isDeleted": false, "instances": [ { "endChar": 196, "startChar": 188 }, { "endChar": 350, "startChar": 342 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "percentages": [ { "isDeleted": false, "instances": [ { "endChar": 196, "startChar": 188 }, { "endChar": 350, "startChar": 342 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "products": [ { "isDeleted": false, "instances": [ { "endChar": 4930, "startChar": 4926 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "quantities": [ { "isDeleted": false, "instances": [ { "endChar": 4930, "startChar": 4926 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "times": [ { "isDeleted": false, "instances": [ { "endChar": 4930, "startChar": 4926 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "topics": [] }, "description": "xxxxx", "tags": [ "tag1", "tag2" ], "text": "Hello, This is sample text", "rawText": "Hello, This is sample text", "state": "processed", "assignTo": "", "remark": "", "sentiment": [ { "document": { "Negative": 0.00000, "Neutral": 0.00000, "Positive": 0.00000 }, "sentences": [ { "id": 1, "instances": [], "score": { "compound": 0, "neg": 0, "neu": 1, "pos": 0 }, "text": "Sentence 1" }, { "id": 2, "instances": [], "score": { "compound": 0, "neg": 0, "neu": 1, "pos": 0 }, "text": "Sentence 2" }, { "id": 3, "instances": [], "score": { "compound": 0.7269, "neg": 0.037, "neu": 0.809, "pos": 0.154 }, "text": "Sentence 3" } ] } ], "createdAt": "2021-04-13T00:30:26.721Z", "originalCreatedAt": "2021-04-13T00:30:26.721Z", "name": "xxxxx" } } ``` ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `mediaId` | path | string | Yes | |
```bash curl -X GET 'https://api.speakai.co/v1/text/insight/c1f4c82dec47' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.count` | object | | `data.insight` | object | | `data.description` | string | | `data.tags` | string[] | | `data.text` | string | | `data.rawText` | string | | `data.state` | string | | `data.assignTo` | string | | `data.remark` | string | | `data.sentiment` | object[] | | `data.createdAt` | string (date-time) | | `data.originalCreatedAt` | string (date-time) | | `data.name` | string | Deeper nested fields are not listed. See the example response below for the full shape. Example response (Text Insight), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "count": { "wordCount": 0, "characterCount": 0, "characterCountWithoutSpace": 0 }, "insight": { "intents": { "needs": [ { "id": 32, "text": "Sentence 1" } ], "wants": [ { "id": 50, "text": "Sentence 1" } ] }, "state": "processed", "updatedAt": "2021-04-13T00:30:26.720Z", "arts": [ { "isDeleted": false, "instances": [ { "endChar": 512, "startChar": 489 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "brands": [ { "isDeleted": false, "instances": [ { "endChar": 202, "startChar": 198 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "cardinals": [ { "isDeleted": false, "instances": [ { "endChar": 1797, "startChar": 1794 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "dates": [ { "isDeleted": false, "instances": [ { "endChar": 755, "startChar": 739 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "events": [ { "isDeleted": false, "instances": [ { "endChar": 755, "startChar": 739 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "facs": [ { "isDeleted": false, "instances": [ { "endChar": 755, "startChar": 739 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "geopolitical": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "keywords": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "languages": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "laws": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "locations": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "money": [ { "isDeleted": false, "instances": [ { "endChar": 172, "startChar": 163 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "nationalities": [ { "isDeleted": false, "instances": [ { "endChar": 1284, "startChar": 1275 } ], "isCustom": false, "name": "Republish", "id": 0 } ], "ordinals": [ { "isDeleted": false, "instances": [ { "endChar": 2812, "startChar": 2807 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "people": [ { "isDeleted": false, "instances": [ { "endChar": 196, "startChar": 188 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "percentages": [ { "isDeleted": false, "instances": [ { "endChar": 196, "startChar": 188 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "products": [ { "isDeleted": false, "instances": [ { "endChar": 4930, "startChar": 4926 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "quantities": [ { "isDeleted": false, "instances": [ { "endChar": 4930, "startChar": 4926 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "times": [ { "isDeleted": false, "instances": [ { "endChar": 4930, "startChar": 4926 } ], "isCustom": false, "name": "xxxxx", "id": 0 } ], "topics": [] }, "description": "xxxxx", "tags": [ "tag1" ], "text": "Hello, This is sample text", "rawText": "Hello, This is sample text", "state": "processed", "assignTo": "", "remark": "", "sentiment": [ { "document": { "Negative": 0, "Neutral": 0, "Positive": 0 }, "sentences": [ { "id": 1, "instances": [], "score": { "compound": 0, "neg": 0, "neu": 1, "pos": 0 }, "text": "Sentence 1" } ] } ], "createdAt": "2021-04-13T00:30:26.721Z", "originalCreatedAt": "2021-04-13T00:30:26.721Z", "name": "xxxxx" } } ```

Update Text Note

#### PARAMETERS If you want to update your customer unique `medicalId` key then you can pass as a `string`. The difference between `rawText` and `text` `text` (required): Text is an HTML field to display content on the editor. It helps users to identify `bold`, `italic` or any other editor functionality. **Important:** If you don't have HTML editor in your application then you can pass normal text content. `rawText` (required): This helps Speak AI to analyze text notes. `remark`: If you want to pass any remarks from the user to display on Speak and also in your application. ```text medicalId: String, // optional name: String, // required, description: string, // optional tags: [], // optional text: "HTML content", // required rawText: "raw text content", // required remark: "string", // optional ``` ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `mediaId` | path | string | Yes | | ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `name` | string | | `description` | string | | `tags` | string[] | | `text` | string | | `rawText` | string | | `remark` | string |
```bash curl -X PUT 'https://api.speakai.co/v1/text/update/2b12351c8146' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "name": "text file", "description": "description", "tags": [ "tag1", "tag2" ], "text": "this is my sample text 2", "rawText": "this is my sample text 2. Sample code format. Happy.", "remark": "update any remarks" }' ```
**`200` Success** The spec records this status code with no example body.
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Export Speak AI transcripts and insights to a file](/api/exports/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-text). # Receive Speak AI events with outbound webhook calls > Register a webhook so Speak AI posts events to your server, list and update the webhooks on your account, send a test payload, and delete a webhook. Source: https://docs.speakai.co/api/webhooks/ · Markdown: https://docs.speakai.co/api/webhooks/index.md import EndpointIndex from "@/components/api/EndpointIndex.astro"; The Speak AI API exposes 5 webhooks endpoints under the base URL `https://api.speakai.co/v1`. Every request needs the `x-speakai-key` and `x-access-token` headers described in [Authentication](/api/authentication/). Receive Webhooks from Speak to your platform. Manage webhook workflows and select events. ## What can you do with the webhooks endpoints? Speak AI groups these 5 endpoints under the webhooks resource. Each entry below links to the full reference for that endpoint further down this page. | Method | Path | What it does | | --- | --- | --- | | `GET` | [`/webhook`](#get-webhook) | List | | `POST` | [`/webhook`](#post-webhook) | Create Webhook | | `PUT` | [`/webhook/{webhookId}`](#put-webhook-webhook-id) | Update | | `DELETE` | [`/webhook/{webhookId}`](#delete-webhook-webhook-id) | Delete | | `POST` | [`/webhook/test/{webhookId}`](#post-webhook-test-webhook-id) | Test |

List

If you want to list all the exisitng webhooks
```bash curl -X GET 'https://api.speakai.co/v1/webhook' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object[] | | `data[].events` | string[] | | `data[].isActive` | boolean | | `data[]._id` | string | | `data[].callbackUrl` | string | | `data[].metaData` | object | | `data[].description` | string | | `data[].createdAt` | string (date-time) | Deeper nested fields are not listed. See the example response below for the full shape. Example response (List Webhooks), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": [ { "events": [ "media.created" ], "isActive": true, "_id": "60884fec4cb70a295c0ddf59", "callbackUrl": "https://example.com/webhooks/speak", "metaData": { "providedInternalUUID": "111222333" }, "description": "This is an edited explanation.", "createdAt": "2021-04-27T17:54:52.250Z" } ] } ```

Create Webhook

Webhooks are the means by which you receive notification in the instant event you are subscribed to is triggered. We support several media events right now: Speak will send you a `POST` request to the webhookUrl. We will send you related keys in the `body` params such as `mediaId`, `recorderId`, `state` , `meetingAssistantId` or `meetingAssistantStatus` **For Media Files:** - `media.created` - `media.analyzed` - `media.reanalyzed` - `media.failed` - `media.deleted` **For Text Files:** - `text.created` - You will receive the foll - `text.analyzed` - You will receive following keys: `mediaId`, `state` - `text.reanalyzed` - You will receive following keys: `mediaId`, `state` - `text.failed` - You wil receive following keys: `mediaId` - `text.deleted` - You will receive the following keys: `mediaId` **For Embed Recorder:** - `embed_recorder.created` - You will receive following keys: `recorderId` - `embed_recorder.deleted` - You will receive following keys: `recorderId` - `embed_recorder.recording_received` - You will receive following keys: `recorderId` , `mediaId` **For Meeting Assistant:** - `meeting_assistant.status` - Trigger a webhook for meeting assistant status changes for following status: Joining call, Waiting room, In call not recording, In call recording, Call ended, Error. - You will receive following keys: **`mediaId, meetingAssistantId`**, and **`meetingAssistantStatus`** **For AI Chat:** - `chat.status` - AI Chat response with the final answer. - You will receive follwoing keys: `mediaIds, folderId, state, promptId, messageId and answer` **For CSV Files:** - `csv.uploaded` - When you upload the CSV file, it will return with `fileId, totalRecords, succeededRecords` - `csv.failed` - When there is a failure or few records failed, you will receive fileId `fileId, totalRecords, failedRecords, failedRecordsList` You can subscribe to one or more events at once for one media, and then later update your webhook as needed. Internally, Speak AI system will `POST` to `callbackURL` with provided `metaData` as a request body, the attempt will be recorded and you can access the results, errors and response times in [https://app.speakai.co/developers/webhooks](https://app.speakai.co/developers/webhooks) ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `callbackUrl` | string | | `metaData` | object | | `metaData.providedInternalUUID` | string | | `events` | string[] | | `description` | string |
```bash curl -X POST 'https://api.speakai.co/v1/webhook' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "callbackUrl": "https://example.com/webhooks/speak", "metaData": { "providedInternalUUID": "111222333" }, "events": [ "media.created", "media.analyzed", "text.created", "text.analyzed", "text.reanalyzed", "text.failed", "text.deleted", "media.reanalyzed", "media.failed", "media.deleted" ], "description": "This is a readable explanation of what this webhook does on your side." }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.events` | string[] | | `data.attempts` | any[] | | `data.isActive` | boolean | | `data.isDeleted` | boolean | | `data._id` | string | | `data.companyId` | string | | `data.userId` | string | | `data.callbackUrl` | string | | `data.metaData` | object | | `data.description` | string | | `data.createdAt` | string (date-time) | | `data.__v` | integer | Deeper nested fields are not listed. See the example response below for the full shape. Example response (Success), `application/json`. Arrays are shortened to one entry and long strings are cut. ```json { "status": "success", "data": { "events": [ "media.created" ], "attempts": [], "isActive": true, "isDeleted": false, "_id": "608850ed4cb70a295c0ddf5b", "companyId": "5e21c8dd2d77242c64214816", "userId": "5d03a9d5d4bca272e9c8cf89", "callbackUrl": "https://example.com/webhooks/speak", "metaData": { "providedInternalUUID": "111222333" }, "description": "This is a readable explanation of what this webhook does on your side.", "createdAt": "2021-04-27T17:59:09.862Z", "__v": 0 } } ```

Update

You can update definition of an existing webhook: change events it's subscribed to, edit description or your `metaData`. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `webhookId` | path | string | Yes | | ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `callbackUrl` | string | | `metaData` | object | | `metaData.providedInternalUUID` | string | | `events` | string[] | | `description` | string |
```bash curl -X PUT 'https://api.speakai.co/v1/webhook/609d7de35bde285f4c98ca63' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "callbackUrl": "https://example.com/webhooks/speak", "metaData": { "providedInternalUUID": "777888999" }, "events": [ "media.created", "media.analyzed", "media.deleted" ], "description": "This is an edited explanation." }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `message` | string | Example response (Successful), `application/json`. ```json { "status": "success", "message": "Webhook updated" } ```

Delete

#### DELETE Webhook This endpoint allows you to delete a specific webhook identified by its unique `webhookId`. ##### Request Parameters - `webhookId` (path parameter): The unique identifier of the webhook you wish to delete. ##### Expected Response Upon successful deletion of the webhook, the API will return a JSON object with the following structure: - `status`: A string indicating the status of the request. - `message`: A string providing additional information about the result of the operation. ##### Notes - Ensure that the `webhookId` provided in the request is valid and corresponds to an existing webhook. - Deleting a webhook is irreversible; once deleted, the webhook cannot be recovered. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `webhookId` | path | string | Yes | |
```bash curl -X DELETE 'https://api.speakai.co/v1/webhook/609d7de35bde285f4c98ca63' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `message` | string | Example response (Success), `application/json`. ```json { "status": "success", "message": "Webhook deleted!" } ```

Test

Looking to test the webhook without uploading much media in your account ? Testing is made easier using this endpoint. You can trigger an event on a particular webhook and get the request\response or error. ### Parameters | Parameter | In | Type | Required | Description | | --- | --- | --- | --- | --- | | `webhookId` | path | string | Yes | | ### Request body Field types and names come from the request body the spec records. The spec does not mark request body fields as required, so read this as the shape the endpoint accepts rather than a required field list. | Field | Type | | --- | --- | | `event` | string |
```bash curl -X POST 'https://api.speakai.co/v1/webhook/test/659ee5c7350d7f6593fd36ea' \ -H 'x-speakai-key: sk_test_speak_0000000000000000' \ -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \ -H 'Content-Type: application/json' \ -d '{ "event": "media.created" }' ```
**`200` OK** Response body, `application/json`. | Field | Type | | --- | --- | | `status` | string | | `data` | object | | `data.isFirstAttempt` | boolean | | `data._id` | string | | `data.webhookId` | string | | `data.event` | string | | `data.requestBody` | string | | `data.responseBody` | string | | `data.responseTime` | integer | | `data.createdAt` | string (date-time) | | `data.__v` | integer | Example response (Success), `application/json`. ```json { "status": "success", "data": { "isFirstAttempt": true, "_id": "608854d7368c102ad3d3ad53", "webhookId": "60884fec4cb70a295c0ddf59", "event": "media.created", "requestBody": "{\"providedInternalUUID\":\"111222333\"}", "responseBody": "{\"message\":\"My UUID is 111222333.\"}", "responseTime": 48, "createdAt": "2021-04-27T18:15:51.686Z", "__v": 0 } } ``` Example response (Error), `application/json`. ```json { "status": "success", "data": { "isFirstAttempt": true, "_id": "608854d7368c102ad3d3ad53", "webhookId": "60884fec4cb70a295c0ddf59", "event": "media.created", "requestBody": "{\"providedInternalUUID\":\"111222333\"}", "responseBody": "{\"message\":\"invalid json response body at https://example.com/webhooks/speak reason: Unexpected token < in JSON at position 0\",\"type\":\"invalid-json\"}", "responseTime": 48, "createdAt": "2021-04-27T18:15:51.686Z", "__v": 0 } } ```
## Related pages - [API reference](/api/) for the base URL, authentication, and the error format. - [Authenticate with the Speak AI API using access tokens](/api/authentication/) - [Upload audio and video to Speak AI and read insights](/api/media/) - [Create and update live transcription sessions in Speak AI](/api/live-transcription/) - [Analyze text notes with the Speak AI text endpoints](/api/text/) Get an API key on the [Speak AI developer page](https://app.speakai.co/developers?utm_source=docs&utm_medium=referral&utm_campaign=api-reference&utm_content=api-webhooks). # Speak AI changelog > Every feature, fix, and improvement Speak AI has shipped, organized by year. Subscribe with RSS or JSON. Source: https://docs.speakai.co/changelog/ · Markdown: https://docs.speakai.co/changelog/index.md See what is new in Speak AI. Entries are grouped by year, newest first, and each one links to the part of the app it changed. ## How do you subscribe? Speak AI publishes the changelog as RSS and JSON feeds so you can follow along without checking this page. Point a feed reader or Slack integration at `/changelog/rss.xml` for RSS 2.0, or fetch `/changelog/feed.json` for JSON Feed 1.1 if you're rendering the changelog inside your own app. ## Browse by year - **2026** — [60 updates →](/changelog/2026/) - **2025** — [39 updates →](/changelog/2025/) - **2024** — [48 updates →](/changelog/2024/) - **2023** — [31 updates →](/changelog/2023/) - **2022** — [18 updates →](/changelog/2022/) # Speak AI changelog: every product update shipped in 2022 > Every product update Speak AI shipped in 2022: 18 updates from May through November, covering new features, fixes, and improvements to the product. Source: https://docs.speakai.co/changelog/2022/ · Markdown: https://docs.speakai.co/changelog/2022/index.md [Back to all changelog years](/changelog/) Speak AI shipped 18 updates in 2022, across 5 months. Each entry links to the part of the app it changed. ## November 2022 ### New keyword, phrase and topic reports **Feature** · November 15, 2022 The Explore Insights dashboard now shows a summary report of topics, keywords and phrases. Search or click any visualization to see how often something is mentioned, how many files it appears in, its overall and sentence by sentence sentiment, the trend over time, and links to read, listen or watch key moments. ![New keyword, phrase and topic reports](/shots/2022-11/new-keyword-phrase-and-topic-reports.gif) ### More detailed sentiment analysis **Improvement** · November 15, 2022 Sentiment is no longer just positive or negative. Speak now scores each sentence across seven levels from very positive through neutral to very negative. ![More detailed sentiment analysis](/shots/2022-11/more-detailed-sentiment-analysis.gif) ### Advanced data filtering in Explore Insights **Feature** · November 15, 2022 You can now build filters with multiple and or conditions to include and exclude data across speakers, sentiment, tags, category insights, folders and time. Saved filters let you repeatedly surface what matters most. ![Advanced data filtering in Explore Insights](/shots/2022-11/advanced-data-filtering-in-explore-insights.gif) ### Explore Insights button on files and folders **Improvement** · November 15, 2022 When viewing any file or folder in Speak you now see an Explore Insights button that opens the dashboard scoped to that selected data. ![Explore Insights button on files and folders](/shots/2022-11/explore-insights-button-on-files-and-folders.gif) ### White labeled data visualizations **Feature** · November 15, 2022 White label subscribers can add their brand color in the Account Customization area and Speak automatically restyles every visualization. You can then export branded visualizations for presentations, reports and content. ![White labeled data visualizations](/shots/2022-11/white-labeled-data-visualizations.gif) ## September 2022 ### Relationship detection and knowledge graphs **Feature** · September 15, 2022 Speak now has a relationship detection algorithm that goes beyond pulling out data to automatically find connections in it. It then builds visualizations and knowledge graphs so you can grasp and share those relationships. ![Relationship detection and knowledge graphs](/shots/2022-09/relationship-detection-and-knowledge-graphs.png) ### Improved bulk editing of tags **Improvement** · September 15, 2022 You can now add, edit and remove tags in bulk, so organizing large amounts of data no longer means clicking through items one at a time. ![Improved bulk editing of tags](/shots/2022-09/improved-bulk-editing-of-tags.png) ## July 2022 ### Multiple language Twitter analysis **Feature** · July 15, 2022 Speak can now pull and analyze thousands of tweets going back to 2006. Give the keywords, phrases and hashtags you care about, and optionally locations and languages, to understand how people feel about trends, products and events. ![Multiple language Twitter analysis](/shots/2022-07/multiple-language-twitter-analysis.png) ### Multiple language Amazon review analysis **Feature** · July 15, 2022 Speak can now scrape Amazon reviews so you can understand how people think about products, brands and service. Give the product URLs and Speak builds a dataset with the review text, dates, location, reviewer name and star rating. ![Multiple language Amazon review analysis](/shots/2022-07/multiple-language-amazon-review-analysis.png) ### Gender and age data enrichment **Feature** · July 15, 2022 Speak can now analyze the names of people in a dataset to predict their gender and age. Each prediction includes a confidence score and the number of names it is based on. ![Gender and age data enrichment](/shots/2022-07/gender-and-age-data-enrichment.png) ### Automatic audio stream clipping and analysis **Feature** · July 15, 2022 Speak can now hook into live audio streams, automatically detect when someone is speaking, and create clips of only those moments for transcription and analysis so you do not pay to process silence. ![Automatic audio stream clipping and analysis](/shots/2022-07/automatic-audio-stream-clipping-and-analysis.png) ## June 2022 ### Customize Explore Insights visualizations **Improvement** · June 15, 2022 On the Explore Insights page you can now change how many insights show on the word cloud and bar chart, so you can scale up or focus down on what matters most. ![Customize Explore Insights visualizations](/shots/2022-06/customize-explore-insights-visualizations.gif) ### Export Explore Insights data to CSV **Feature** · June 15, 2022 Click the three dots above the bar chart or word cloud on the Explore Insights page to export the displayed data as a CSV. Use the dashboard filters first and then take the insights into your own tools. ![Export Explore Insights data to CSV](/shots/2022-06/export-explore-insights-data-to-csv.gif) ### Merged default and custom categories **Improvement** · June 15, 2022 Default and custom categories are now combined on one Categories page. You can still add categories and include or exclude keywords and phrases just like before. ![Merged default and custom categories](/shots/2022-06/merged-default-and-custom-categories.gif) ### Set a recorder duration limit **Feature** · June 15, 2022 You can now set how many minutes people are allowed to record directly in your recorder settings, and the embeddable recorder updates instantly to enforce that limit. This needs the Individual Media Sharing and Recorder Customization add on. ![Set a recorder duration limit](/shots/2022-06/set-a-recorder-duration-limit.gif) ## May 2022 ### Transcription and analysis in five languages **Feature** · May 15, 2022 You can now transcribe and analyze audio, video and text in Danish, French, German, Portuguese and Spanish. Pick the language from a dropdown when you upload and the transcript, insights, players and reports all follow that language. ![Transcription and analysis in five languages](/shots/2022-05/transcription-and-analysis-in-five-languages.gif) ### Screen recording and text uploads in recorder **Feature** · May 15, 2022 The Speak recorder now lets people share their screen while recording video. Submitters can also upload Word, PDF and TXT files through the recorder, and required fields are removed so you can collect anonymous submissions. ![Screen recording and text uploads in recorder](/shots/2022-05/screen-recording-and-text-uploads-in-recorder.gif) ### Automatic earnings call analysis prototype **Feature** · May 15, 2022 Speak can now produce automatic reports on earnings calls covering revenue, profit, headwinds, guidance and more. This is an early prototype built for people who follow public companies. ![Automatic earnings call analysis prototype](/shots/2022-05/automatic-earnings-call-analysis-prototype.gif) # Speak AI changelog: every product update shipped in 2023 > Every product update Speak AI shipped in 2023: 31 updates from January through September, covering new features, fixes, and improvements to the product. Source: https://docs.speakai.co/changelog/2023/ · Markdown: https://docs.speakai.co/changelog/2023/index.md [Back to all changelog years](/changelog/) Speak AI shipped 31 updates in 2023, across 7 months. Each entry links to the part of the app it changed. ## September 2023 ### Google and Outlook calendar sync **Feature** · September 15, 2023 You can now sync your Google or Microsoft Outlook Calendar so the Meeting Assistant automatically joins your scheduled calls. Preferences let you choose which events to join, which folder the files go to, who to share the player with, and the assistant name and image. ![Google and Outlook calendar sync](/shots/2023-09/google-and-outlook-calendar-sync.png) ### Custom assistant templates **Feature** · September 15, 2023 You can create your own custom Assistant templates in Account Preferences that set context for higher quality and more consistent outputs. You can reuse them in any manual or automated Magic Prompt and make several for different use cases. ![Custom assistant templates](/shots/2023-09/custom-assistant-templates.png) ### Filter out speakers in Magic Prompts **Feature** · September 15, 2023 You can filter out speakers such as the moderator, interviewer, sales reps or clients when running Magic Prompts analysis. You can also filter tags and speakers at the folder level. ![Filter out speakers in Magic Prompts](/shots/2023-09/filter-out-speakers-in-magic-prompts.png) ### Reanalyze media at file and folder levels **Feature** · September 15, 2023 You can reanalyze media at both the individual file and the folder level. You choose whether to reanalyze insights, sentiment, filler words, or everything at once. ### Remove filler words **Improvement** · September 15, 2023 You can remove filler words from your data for cleaner transcription and analysis. ### Remarks and prompts in shared libraries **Improvement** · September 15, 2023 You can easily add remarks and Magic Prompt capabilities to your Shareable Media Libraries. ### Better language model management **Improvement** · September 15, 2023 Speak now manages large language models behind the scenes to give higher quality outputs for different use cases. ### Better white label player and recorder **Improvement** · September 15, 2023 White labelling of the embeddable media player and recorder is easier to manage. ### Microsoft single sign on **Feature** · September 15, 2023 You can now sign in to Speak with Microsoft Single Sign On. ## August 2023 ### Speak AI Meeting Assistant now live **Feature** · August 15, 2023 The Speak AI Meeting Assistant is now live and free. It automatically joins your meetings and records, transcribes and analyzes them. It works on Zoom, Microsoft Teams, Google Meet and Webex, and you add it by pasting your meeting link in the app. ![Speak AI Meeting Assistant now live](/shots/2023-08/speak-ai-meeting-assistant-now-live.png) ### Customize your Meeting Assistant **Improvement** · August 15, 2023 You can customize your Meeting Assistant name and image for personal and professional branding when it joins your calls. This is available as a premium add on. ## June 2023 ### Speak Automation is now live **Feature** · June 15, 2023 Speak Automation is now live. You can build an automation with a folder trigger that fires when a new file is analyzed and a Magic Prompt action that runs a preset prompt automatically, then get notified when the response is ready. ![Speak Automation is now live](/shots/2023-06/speak-automation-is-now-live.png) ### Transcript editor improvements **Improvement** · June 15, 2023 The transcript editor gets improvements. ### Better document uploading **Improvement** · June 15, 2023 Document uploading is better. ### Improved live recording **Improvement** · June 15, 2023 Live recording is improved. ## April 2023 ### Thirty nine new languages **Feature** · April 15, 2023 Speak adds 39 new languages, bringing the total to 64 languages available for transcription and analysis. ![Thirty nine new languages](/shots/2023-04/thirty-nine-new-languages.png) ### Automatic embeddings for your data **Feature** · April 15, 2023 Speak now automatically creates embeddings so you can query large data sets past model character limits, get faster and cheaper responses, and see the original sources with links to the exact moments. You can also share these knowledge bases through Shareable Media Libraries with your own branding. ![Automatic embeddings for your data](/shots/2023-04/automatic-embeddings-for-your-data.png) ### Magic Prompt response Zapier trigger **Feature** · April 15, 2023 A new Speak Magic Prompts Response trigger in Zapier lets you automatically send your prompt responses to more than 5,000 connected platforms, such as email, YouTube or your CRM. ![Magic Prompt response Zapier trigger](/shots/2023-04/magic-prompt-response-zapier-trigger.png) ## March 2023 ### Analyze many files with Magic Prompts **Feature** · March 15, 2023 You can now analyze many files at once with Speak Magic Prompts. Add the files to a folder, select Prompts, then choose a suggested or custom prompt to get one answer across all the data. ![Analyze many files with Magic Prompts](/shots/2023-03/analyze-many-files-with-magic-prompts.png) ### Much higher Magic Prompt character limit **Improvement** · March 15, 2023 Speak Magic Prompts now analyzes up to 60,000 characters, roughly 25,000 words, at once. The previous limit was 4,000 characters. ### Choose your Magic Prompt assistant type **Feature** · March 15, 2023 You can choose an assistant type of General, Researcher or Marketer. Each one sets context for the prompt engine so you get more concise and relevant outputs for your role. ## February 2023 ### Embeddable recorder question types **Feature** · February 15, 2023 The embeddable recorder now supports many question types such as checkboxes, drop downs, dates and numbers. This lets you collect both qualitative and quantitative data from almost anywhere. ![Embeddable recorder question types](/shots/2023-02/embeddable-recorder-question-types.png) ### Shareable media library filters **Feature** · February 15, 2023 You can now pass the data filters you create in your account through your Shareable Media Libraries. This lets you curate insights for clients and teams so they can instantly derive value from the data. ![Shareable media library filters](/shots/2023-02/shareable-media-library-filters.png) ### WebVTT to text converter tool **Feature** · February 15, 2023 A new WebVTT to Text Converter tool cleans WebVTT files that contain timestamps and sentence numbers so you can import and analyze them cleanly in Speak. ### Recorder API updates **Improvement** · February 15, 2023 Recorder API updates make recorders easier to create and update. ### Better transcript find and replace **Improvement** · February 15, 2023 The transcript editor experience is improved with better find and replace. ## January 2023 ### Lower transcription and analysis pricing **Improvement** · January 15, 2023 Speak permanently lowers transcription and analysis pricing from ten cents per minute to six cents per minute, a 40 percent reduction. Customers transcribing over 100 hours per month can ask about bigger discounts. ![Lower transcription and analysis pricing](/shots/2023-01/lower-transcription-and-analysis-pricing.png) ### Twenty new transcription languages **Feature** · January 15, 2023 Speak adds 20 new transcription and analysis languages, bringing the total to 25 languages you can use across the software and APIs. ![Twenty new transcription languages](/shots/2023-01/twenty-new-transcription-languages.png) ### Improved keyword extraction **Improvement** · January 15, 2023 Keyword extraction now works the same way across audio, video and text. The improved algorithm detects longer phrases like fundamental constitutional right, adding more context to your analysis. ![Improved keyword extraction](/shots/2023-01/improved-keyword-extraction.png) ### Recorder minimum and maximum duration **Feature** · January 15, 2023 You can now set a minimum and maximum recording length on your embeddable recorders so people give enough feedback without recording too much. ![Recorder minimum and maximum duration](/shots/2023-01/recorder-minimum-and-maximum-duration.png) ### Explore insights button on recorder submissions **Improvement** · January 15, 2023 A new Explore Insights button sits at the top right of your recorder submissions so you can instantly analyze the responses coming in. ![Explore insights button on recorder submissions](/shots/2023-01/explore-insights-button-on-recorder-submissions.png) # Speak AI changelog: every product update shipped in 2024 > Every product update Speak AI shipped in 2024: 48 updates from January through December, covering new features, fixes, and improvements to the product. Source: https://docs.speakai.co/changelog/2024/ · Markdown: https://docs.speakai.co/changelog/2024/index.md [Back to all changelog years](/changelog/) Speak AI shipped 48 updates in 2024, across 7 months. Each entry links to the part of the app it changed. ## December 2024 ### Pay with PayPal **Feature** · December 15, 2024 PayPal now works for subscriptions and balance top ups. When paying, just select the Pay With PayPal button, which supports people without credit cards. ![Pay with PayPal](/shots/2024-12/pay-with-paypal.png) ### AI chat conversation memory **Improvement** · December 15, 2024 AI chats now store previous questions and answers, giving the AI better context and stronger follow up answers. ![AI chat conversation memory](/shots/2024-12/ai-chat-conversation-memory.png) ### Store media in chosen regions **Security** · December 15, 2024 Speak can now store your media in selected regions for data compliance. This option is available on enterprise plans. ![Store media in chosen regions](/shots/2024-12/store-media-in-chosen-regions.png) ### Usage notifications and filters **Improvement** · December 15, 2024 Notifications now has filters for team members, actions and date range, plus search, so it is a useful place to monitor team usage. ![Usage notifications and filters](/shots/2024-12/usage-notifications-and-filters.png) ### Faster folder and media loading **Performance** · December 15, 2024 Folder and media list loading was improved, along with better media downloading experiences. ### Recorder cloning improvements **Improvement** · December 15, 2024 Recorder cloning was improved, and the UI for all payment methods and options was enhanced. ## October 2024 ### Share files with AI chat enabled **Feature** · October 15, 2024 When sharing an individual file or library you can let viewers chat with the media using an assistant template. Questions and answers appear in your chat history and characters come from your account. ![Share files with AI chat enabled](/shots/2024-10/share-files-with-ai-chat-enabled.png) ### Folder statistics view **Feature** · October 15, 2024 Every folder now has a statistics view with a breakdown of media types, speakers, dates, file types and durations to help you summarize your data set. ![Folder statistics view](/shots/2024-10/folder-statistics-view.png) ### Analyze fields without comparing **Improvement** · October 15, 2024 You can now analyze fields on their own without comparing data, and you can analyze comma separated outputs. ![Analyze fields without comparing](/shots/2024-10/analyze-fields-without-comparing.png) ### Instant translation in automations **Feature** · October 15, 2024 Automations can translate a file to a target language the moment it is uploaded, or on a set schedule. ![Instant translation in automations](/shots/2024-10/instant-translation-in-automations.png) ### Transcribe your files again **Feature** · October 15, 2024 You can now re run transcription on your files. ### Faster AI chat and insights loading **Performance** · October 15, 2024 AI chat responses and explore insights now load faster, and AI chat character limits were increased. ## August 2024 ### Custom vocabularies **Feature** · August 15, 2024 You can add up to 100 words or phrases per language to improve transcription accuracy right away. Available to all subscribers in English and French with more languages coming. ![Custom vocabularies](/shots/2024-08/custom-vocabularies.png) ### Word by word transcript playback **Feature** · August 15, 2024 Speak now plays transcripts word by word so you can jump to the exact moment instead of the start of a sentence. ![Word by word transcript playback](/shots/2024-08/word-by-word-transcript-playback.png) ### Improved speaker editing **Improvement** · August 15, 2024 You can pick speakers from a list of past speakers on the main media insight page. Team member photos show when available, otherwise icons show their initials. ![Improved speaker editing](/shots/2024-08/improved-speaker-editing.png) ### Professional captions **Improvement** · August 15, 2024 Captions now show only two lines at a time, align with speakers, appear on the video player, and can be exported as SRT and VTT. ![Professional captions](/shots/2024-08/professional-captions.png) ### Automatic AI summaries for meetings **Feature** · August 15, 2024 Meeting transcription users now receive automatic AI summaries. ### See who folders are shared with **Improvement** · August 15, 2024 You can now see who you have shared folders with. CSV mapping for uploads and the recorder page were also improved. ## May 2024 ### Side by side AI chat **Improvement** · May 15, 2024 Your AI chat now sits right beside your media for easy use. You can expand the transcript and chat, filter by speaker and use assistant templates. ![Side by side AI chat](/shots/2024-05/side-by-side-ai-chat.png) ### Return on investment calculator **Feature** · May 15, 2024 A new calculator shows how much money and time you save with Speak based on the hours of media or words you analyze. ![Return on investment calculator](/shots/2024-05/return-on-investment-calculator.png) ### Personalized AI automations **Feature** · May 15, 2024 New sign ups get personalized automations built from their onboarding details. One runs instantly and one runs weekly when files are uploaded, and you can edit or turn them off. ![Personalized AI automations](/shots/2024-05/personalized-ai-automations.png) ### Map automations to fields **Feature** · May 15, 2024 Automations can map AI responses to your fields, which you can then export to CSV or share through Zapier or the API. ![Map automations to fields](/shots/2024-05/map-automations-to-fields.png) ### Personalized plan recommendations **Feature** · May 15, 2024 Speak uses your onboarding details to recommend a plan suited to your needs, which you can adjust by changing your profile or inputs. ![Personalized plan recommendations](/shots/2024-05/personalized-plan-recommendations.png) ### Clone recorders and edit notifications **Feature** · May 15, 2024 You can clone recorders to speed up setup and choose which team members receive email notifications. ![Clone recorders and edit notifications](/shots/2024-05/clone-recorders-and-edit-notifications.png) ### Meeting assistant status webhooks **Feature** · May 15, 2024 You can now receive webhooks when a Meeting Assistant status changes. ### Reset speakers easily **Improvement** · May 15, 2024 You can now easily reset speakers if they were mapped incorrectly. ### Outlook calendar recurring events fix **Fix** · May 15, 2024 Fixed recurring events and event visibility for Outlook Calendar. ### Select many files at once **Improvement** · May 15, 2024 You can hold shift and select many files at once. Mobile responsiveness and the find and replace transcript editor were also improved. ## April 2024 ### Translate media in 99 languages **Feature** · April 15, 2024 You can now translate audio, video and text in 99 languages almost instantly. Speak calculates the cost, charges when you order, and creates labeled text notes for each translation. ### Scrape web pages and sitemaps **Feature** · April 15, 2024 You can scrape individual pages and full sitemaps, and Speak pulls the page text without headers and footers so you can analyze and visualize it right away. ### Map file analysis to fields **Feature** · April 15, 2024 You can run analysis on each file in a folder and map the responses to a chosen field, which lets you evaluate large data sets without model character limits. ### Intelligent meeting routing **Feature** · April 15, 2024 Speak can use calendar event titles to route meetings to specific folders and run the exact chat automations you set for each type of call. ### Live transcription in the app **Feature** · April 15, 2024 You can now transcribe audio or video in real time directly in Speak, then upload the file afterward for even more accurate transcription and analysis. ### Meeting assistant timelines **Feature** · April 15, 2024 You can review a timeline of meeting assistant activity for each call from the Meeting Assistant page. ### Update custom fields across files **Improvement** · April 15, 2024 You can now update fields at the folder or individual file level across selected files in just a few clicks. ### Two factor authentication **Security** · April 15, 2024 You can now turn on two factor authentication with Google Authenticator or another app, so Speak asks for a code every time you log in. ### Submit chat response feedback **Improvement** · April 15, 2024 You can leave quick thumbs up or thumbs down feedback on responses from the Chat History page, using standard options or your own words. ### Fixed recurring meeting events **Fix** · April 15, 2024 Fixed a recurring events issue for the Speak AI Meeting Assistant. ## March 2024 ### Chat with your data is live **Feature** · March 15, 2024 You can now have a back and forth chat with your media instead of single prompts. Chat keeps context, lets you reformat answers, and works inside shared media libraries. ![Chat with your data is live](/shots/2024-03/chat-with-your-data-is-live.png) ### Manage your table columns **Feature** · March 15, 2024 You can choose which columns show for your data using a drag and drop view, so you get a high level look at a folder without opening each file. Speak remembers your column choices. ![Manage your table columns](/shots/2024-03/manage-your-table-columns.png) ### Run Magic Prompts action in Zapier **Feature** · March 15, 2024 A new Run Magic Prompts in Speak action lets you pass data to Speak and generate responses inside no code Zapier workflows, and chain many actions together. ![Run Magic Prompts action in Zapier](/shots/2024-03/run-magic-prompts-action-in-zapier.png) ### Transcribe ten hour and 5 GB files **Improvement** · March 15, 2024 Speak can now handle files up to ten hours long and up to 5 GB in size. ### Automatic speaker labeling for meetings **Feature** · March 15, 2024 Speak now gathers the details of meeting attendees and labels the speakers automatically once the meeting is transcribed, so you can filter speakers across all your meetings. ![Automatic speaker labeling for meetings](/shots/2024-03/automatic-speaker-labeling-for-meetings.png) ### Redesigned media sharing interface **Improvement** · March 15, 2024 The interface for sharing individual media players and libraries was redesigned with all the latest options for logo, background, insights and functionality. ![Redesigned media sharing interface](/shots/2024-03/redesigned-media-sharing-interface.png) ### Data is now embedded automatically **Performance** · March 15, 2024 Speak now embeds your data automatically using retrieval augmented generation, so you can analyze very large data sets with quicker responses, lower character use and source references. ![Data is now embedded automatically](/shots/2024-03/data-is-now-embedded-automatically.png) ### Leave feedback on chat responses **Improvement** · March 15, 2024 You can now leave feedback on chat responses to help improve the quality of future answers. ### Cached answers for repeated questions **Performance** · March 15, 2024 Repeated questions now return cached answers quickly without using characters. ## January 2024 ### Faster and more accurate transcription **Performance** · January 15, 2024 Speak transcription now runs up to 90 percent faster and is 22 percent more accurate. New noise reduction gives cleaner results. # Speak AI changelog: every product update shipped in 2025 > Every product update Speak AI shipped in 2025: 39 updates from March through November, covering new features, fixes, and improvements to the product. Source: https://docs.speakai.co/changelog/2025/ · Markdown: https://docs.speakai.co/changelog/2025/index.md [Back to all changelog years](/changelog/) Speak AI shipped 39 updates in 2025, across 5 months. Each entry links to the part of the app it changed. ## November 2025 ### Transcript Editor 2.0 **Improvement** · November 15, 2025 The transcript editor is rebuilt. You can edit timestamps inline, split or merge sections, delete, search, and replace text instantly, auto save every 30 seconds, restore the original transcript anytime, and use a focus mode for distraction free reviewing. ### New survey customization and controls **Feature** · November 15, 2025 Video surveys have new customization. You can hide titles, wavelengths, and branding for a clean look, start and stop recordings with simple API controls, and preview your configuration before you embed it. ### Smart join for the meeting assistant **Improvement** · November 15, 2025 A smart join setting brings the meeting assistant into meetings only when it is needed. ### Shareable invite links for teammates **Improvement** · November 15, 2025 You can onboard teammates at scale using shareable invite links. ### Favourite prompts **Improvement** · November 15, 2025 You can save and reuse your best prompts by marking them as favourites. ### Dedicated chat links **Improvement** · November 15, 2025 Every chat now has its own unique URL. ### Clone automations and folders **Improvement** · November 15, 2025 You can clone automations and folders to scale your setups in one click. ### Schedule automations on folders **Improvement** · November 15, 2025 You can schedule automations on a single folder or on several folders. ### Update speaker names through the API **Feature** · November 15, 2025 A new API lets you update speaker names accurately. ### More platform languages **Improvement** · November 15, 2025 The platform now supports more languages with better consistency. ### File size column added **Improvement** · November 15, 2025 A file size column shown in gigabytes was added to your file list. ### Chat auto scroll **Improvement** · November 15, 2025 Chat now auto scrolls to the latest message. ### Faster load times and reliability **Performance** · November 15, 2025 Load times are faster and overall reliability is improved. ## September 2025 ### Mac app in beta **Feature** · September 15, 2025 Speak now has a Mac app in beta with all the core functions of Speak. A coming update will let you record desktop audio and video such as YouTube and webinars, improve screen shares and recordings, and capture meetings without needing a meeting bot in your calls. ### Schedule meetings with a link **Feature** · September 15, 2025 You can now schedule meetings with just a link instead of only starting them in the moment. You can set times up to 7 days in advance, edit scheduled meetings inside Speak, and cancel if a meeting is within 5 minutes of starting. ### Bigger and cheaper voice translation **Improvement** · September 15, 2025 Voice translation now handles files up to 1 GB and 2.5 hours, raised from 100 MB and 45 minutes, and the price dropped from 90 dollars to 60 dollars per hour, a 33 percent reduction. This unlocks longer interviews, full meetings, and extended recordings. ### Analyze Data redesign **Feature** · September 15, 2025 You can now view and filter files across your entire account in a new media list inside Analyze Data. From one place you can bulk manage files, chat with them, map results to fields, translate, view statistics, and export, instead of opening folders one at a time. ### Download chat responses **Improvement** · September 15, 2025 You can export chat outputs as DOC, PDF, TXT, or Markdown. ### Improved keyword search **Improvement** · September 15, 2025 Phrase matching now works across all search functions for more precise results. ### AI chat filters **Improvement** · September 15, 2025 You can choose between filtering chats or mapped fields for clearer insights in your chat history. ### Merge files into one Word document **Improvement** · September 15, 2025 You can export multiple files into a single polished DOCX. ### Better document exports **Improvement** · September 15, 2025 Document exports now have better formatting, cleaner page breaks, and per company customization on request. ### Transcript editing and saving fixes **Fix** · September 15, 2025 Fixed the hidden save button, made inline editing smoother, and reduced merge issues when editing transcripts. ### Dark mode timestamps now visible **Fix** · September 15, 2025 Timestamps are now clearly visible in the dark theme. ## June 2025 ### Chat across your entire library **Feature** · June 15, 2025 You can now chat across all your files instead of one folder at a time. Use the Advanced Filters in the Analyze Data section to isolate files by field, media type, and more for analysis across whole data sets. ![Chat across your entire library](/shots/2025-06/chat-across-your-entire-library.png) ### Smoother audio and video clipping **Improvement** · June 15, 2025 On top of selecting whole sections, you can now clip individual words and sentences. Highlight a segment, right click, and choose Add to Clip. The order of your clips no longer matters, and when you are done you select Create Clip and Speak builds the compilation in the Clips section. ![Smoother audio and video clipping](/shots/2025-06/smoother-audio-and-video-clipping.png) ### Pick media from your gallery on iOS **Improvement** · June 15, 2025 On iOS you can now select audio and video from your gallery to transcribe and analyze. ### Record with your screen locked **Improvement** · June 15, 2025 On mobile you can now capture meetings and voice notes even while your screen is off. ### Share to Speak on iOS **Improvement** · June 15, 2025 On iOS you can use the Share function and select Speak to instantly add a file for transcription and analysis. ![Share to Speak on iOS](/shots/2025-06/share-to-speak-on-ios.png) ### Automatic AI management of your data **Improvement** · June 15, 2025 Speak now optimizes how it works with your data to give better results, avoid hitting AI model limits, provide references across multiple files, and keep costs low. For single meetings under 2 hours it includes the full context, and for folders or whole libraries it pinpoints the most relevant parts and links back to references. ![Automatic AI management of your data](/shots/2025-06/automatic-ai-management-of-your-data.png) ### New transcription and translation languages **Feature** · June 15, 2025 Transcription and translation now support more languages. Pick the language you want from the dropdown when you upload or translate files. ![New transcription and translation languages](/shots/2025-06/new-transcription-and-translation-languages.png) ### Smarter custom field filtering **Improvement** · June 15, 2025 You get smarter filtering for custom fields in the Analyze Data view. ## May 2025 ### Add a balance in the mobile apps **Feature** · May 15, 2025 You can now add a pay as you go balance to your account directly in the iOS and Android apps. Open your profile, go to Payment Settings, choose Add Balance, and pick 10, 30, or 100 dollars to buy in one tap. ![Add a balance in the mobile apps](/shots/2025-05/add-a-balance-in-the-mobile-apps.png) ### More control over team permissions **Improvement** · May 15, 2025 You now have more control over what permissions each team member has. You can set users as Admin or Member, and account owners get a unique Owner role with full access and management of the team. ![More control over team permissions](/shots/2025-05/more-control-over-team-permissions.png) ### Improved two factor authentication **Security** · May 15, 2025 Two factor authentication is improved. You can see your trusted devices with details of when you logged in, and you can save your two factor login for 14 days for convenience. ![Improved two factor authentication](/shots/2025-05/improved-two-factor-authentication.png) ### Custom fields in API uploads **Improvement** · May 15, 2025 You can now include custom fields when you upload files through the API. ### Deep links open the mobile app **Improvement** · May 15, 2025 Deep links now open the Speak app directly if it is installed on your phone. ### Collapsible fields in folder view **Improvement** · May 15, 2025 Fields in the folder view can now be collapsed for a cleaner interface. ## March 2025 ### Speak mobile apps for iOS and Android **Feature** · March 15, 2025 Speak now has iPhone and Android apps in beta so you can record, transcribe, and get insights on the go. The iPhone app comes through TestFlight and the Android app comes from the Google Play store. # Speak AI changelog: every product update shipped in 2026 > Every product update Speak AI shipped in 2026: 60 updates from January through July, covering new features, fixes, and improvements to the product. Source: https://docs.speakai.co/changelog/2026/ · Markdown: https://docs.speakai.co/changelog/2026/index.md [Back to all changelog years](/changelog/) Speak AI shipped 60 updates in 2026, across 7 months. Each entry links to the part of the app it changed. ## July 2026 ### Inline creation in selection menus **Feature** · July 14, 2026 You can now create folders and custom fields directly from selection menus without leaving your current workflow. Search also matches custom field values more accurately, and records with linked content are protected from accidental deletion. ### Visible menus in full screen chat **Fix** · July 13, 2026 Dropdown menus now open correctly when the chat panel is maximized. Model, assistant, and recommendation pickers stay visible instead of appearing behind the full screen interface. ### Expanded premium model selection **Feature** · July 13, 2026 You can now choose from additional premium chat models in the model picker. Plan based availability is shown more clearly so free and paid workspaces see the right options. ### Faster app responsiveness **Performance** · July 13, 2026 Pages and interactions across the app now feel more responsive during everyday use. Behind the scenes optimizations reduce unnecessary work so screens load and update more smoothly. ### Automation Library template picker **Feature** · July 11, 2026 You can now start automations from a curated template library instead of building from scratch every time. New automation opens the library first, with a blank canvas option pinned at the top. ### Cleaner recorder and upload handling **Fix** · July 10, 2026 Recording and upload flows now handle incomplete media more gracefully. You see fewer unexpected errors when a recording, its details, or its transcript are still being prepared. ### More reliable transcription across languages **Fix** · July 10, 2026 Transcription now applies the right settings for every supported language. Uploads no longer fail for languages that handle custom vocabulary differently. ### More flexible custom fields **Fix** · July 9, 2026 You can now create custom fields without adding a description, and AI generated fields work reliably. Field setup is consistent whether you build them by hand or let AI create them. ### In app What's New hub **Feature** · July 9, 2026 You can now see the latest product announcements in a dashboard modal and reopen them later from the account menu. The changelog page also matches your app theme for a smoother reading experience. ### Better search in long dropdown lists **Improvement** · July 8, 2026 Dropdown searches now look through your full list instead of only what is loaded on screen. You can find folders and other items more reliably in long lists. ### Visible prompt text on retry **Fix** · July 8, 2026 Retrying a failed chat message now keeps your original prompt visible while the new response is prepared. Chat history stays readable instead of showing a blank prompt bubble. ### Clearer automation run failures **Fix** · July 8, 2026 Automation runs now show clearly when a prompt fails instead of appearing stuck while preparing. You can tell when a run did not complete rather than waiting on it. ### Record first mobile capture flow **Improvement** · July 6, 2026 Mobile recording now starts immediately without requiring a code or setup before capture. Recordings save offline first, and recorder selection, questions, and upload happen afterward from saved recordings. ### Unified workspace product switching **Improvement** · July 3, 2026 You can now move between Speak and Speak Agents from the sidebar with a smoother sign in handoff. New account setup also lands on a dedicated welcome flow that makes cross product access clearer. ### Canvas workspace for agent planning **Feature** · July 3, 2026 You can now start building agents in a new canvas workspace designed for visual planning. Agents gain a foundation for arranging steps and logic in a more flexible builder experience. ### More reliable transcript processing **Fix** · July 2, 2026 Transcripts now finish processing even when some timing or speaker details arrive incomplete. Media no longer gets stuck during analysis when parts of the speech data are missing. ### Expanded webhook automation integrations **Feature** · July 2, 2026 You can now connect outbound webhooks to more automation platforms with simpler setup. Integrations also support more reliable event delivery and push based triggers for faster downstream workflows. ### Pick the AI model for your chat **Feature** · July 1, 2026 You can now choose which AI model runs your chat from the latest top models, and set a default that sticks. Ask about one file or your whole library with the model you trust. ![Pick the AI model for your chat](/shots/2026-07/choose-model.png) [Open Chat →](https://app.speakai.co/chat/history) ### Automations on a visual canvas **Feature** · July 1, 2026 Automations got their biggest upgrade yet. You build a workflow on a visual canvas and Speak runs it for you. New triggers fire when a file finishes, a field changes, or a webhook comes in. You can add filter and branch steps, send alerts by email, Slack, or in the app, and review a full run history with test runs. ![Automations on a visual canvas](/shots/2026-07/automations-canvas.png) [Open Automations →](https://app.speakai.co/automations) ### A rebuilt integrations page **Feature** · July 1, 2026 We rebuilt the integrations page so you can connect in a couple of clicks. Link tools like Gmail, Slack, Notion, and Google Docs so Speak can act inside your automations. Sync Slack, Google Calendar, Outlook, Vimeo, and the Chrome extension, and connect Speak to ChatGPT, Claude, or Claude Code with one link. ![A rebuilt integrations page](/shots/2026-07/integrations-page.png) [Open Integrations →](https://app.speakai.co/integrations) ### A new recorder app for Android **Feature** · July 1, 2026 The new Speak mobile app is live on Android. You can record any conversation with no login and fully offline, whether it is a meeting, a call, or a chat in the field. Everything syncs to your workspace once you enter your recorder code. ![A new recorder app for Android](/shots/2026-07/android-recorder.png) [Open Surveys →](https://app.speakai.co/recorder) ### A cleaner and faster chat **Improvement** · July 1, 2026 Chat is cleaner and quicker. Press Enter to send, attach an audio or video file or paste a link, stop a reply while it is still writing, and chat with one file or your whole library. [Open Chat →](https://app.speakai.co/chat/history) ### Choose which meetings your notetaker joins **Improvement** · July 1, 2026 You can now choose exactly which meetings your notetaker joins, with simple rules to skip the calls you want to keep private. [Open Meeting Assistant →](https://app.speakai.co/meeting-assistant) ### Balance is now Credits **Improvement** · July 1, 2026 Your balance is now called Credits, and your trial status is always in view. ## June 2026 ### Build and share custom dashboards **Feature** · June 15, 2026 You can now build your own dashboards with cards and charts from your media fields, filter them, and share a public link or embed them. An optional email gate captures leads and shows you who viewed the dashboard. ![Build and share custom dashboards](/shots/2026-06/custom-dashboards.png) [Open Dashboards →](https://app.speakai.co/dashboards) ### An assistant that acts on your workspace **Feature** · June 15, 2026 The Speak assistant can take actions in your workspace using its tools and asks clarifying questions when it needs them. Anything destructive is held back until you confirm it. [Open Chat →](https://app.speakai.co/chat/history) ### Attach files to AI chat **Improvement** · June 15, 2026 You can add images, PDFs, or audio and video files directly to a chat message. Images and documents give the AI extra context, and audio or video is transcribed before the chat reads it. [Open Chat →](https://app.speakai.co/chat/history) ### Use your integrations inside AI chat **Feature** · June 15, 2026 Connect tools like Gmail, Slack, Notion, and Google Drive and let the assistant use them during a conversation. You can also trigger the same integrations from automations. [Open Integrations →](https://app.speakai.co/integrations) ### Variables in prompts **Feature** · June 15, 2026 You can drop variables into your chat and automation prompts. Speak swaps in real values from the current media, folder, user, or workspace before the prompt reaches the model. [Try it in Chat →](https://app.speakai.co/chat/history) ### Choose your chat assistant **Improvement** · June 15, 2026 You can now pick which assistant answers you from the chat input, including custom assistants you set up. Each assistant is tuned for a different style of help. [Open Chat →](https://app.speakai.co/chat/history) ### Trigger automations from any tool **Feature** · June 15, 2026 Automations can now start from an inbound webhook, so any external tool can kick off a Speak workflow. [Open Automations →](https://app.speakai.co/automations) ### Recorder pairing codes **Feature** · June 15, 2026 Turn on recorder pairing codes to connect the native recorder apps to your workspace with a six digit code. You can find the code on the recorder share tab and rotate it anytime. [Open Surveys →](https://app.speakai.co/recorder) ### The redesigned Speak app is live **Feature** · June 6, 2026 The Speak app has a fresh redesign and it is live. It is easier to move around and built around how you work, so you reach your recaps, decisions, and follow ups in fewer steps. The old version is still there and you can switch back any time. ![The redesigned Speak app is live](/shots/2026-06/new-app.png) ### Live meeting transcripts as they happen **Feature** · June 6, 2026 You can now pull a live meeting transcript in real time and act on the call while it is still going. ## May 2026 ### Speak connector for Claude, ChatGPT, and Cursor **Feature** · May 15, 2026 Speak now connects to Claude, ChatGPT, and Cursor through a connector at mcp.speakai.co. You paste the connector URL into your AI tool settings, then ask it to upload a recording or pull action items from your last meeting, using an API key from your developer settings. ![Speak connector for Claude, ChatGPT, and Cursor](/shots/2026-05/mcp-connector.png) [Set up the connector →](https://mcp.speakai.co) ### Bulk import from a CSV file **Feature** · May 15, 2026 You can now upload a CSV to bring in many media links or text notes at once. This saves you from adding each item by hand. [Import media →](https://app.speakai.co/embed-media) ### Dub your videos into other languages **Feature** · May 15, 2026 Translation now includes audio dubbing and lets you set a different target language for each file. You see a clear cost breakdown before you start. [Open Translate →](https://app.speakai.co/translate) ### Bring in content from web pages **Feature** · May 15, 2026 A web scraper lets you pull text from a web page directly into Speak for analysis. You point it at a link and Speak imports the content. [Open Integrations →](https://app.speakai.co/integrations) ### Record your screen with a camera overlay **Feature** · May 15, 2026 The web recorder can now capture your screen together with a picture in picture camera view. This makes it easy to record walkthroughs and demos. [Open Surveys →](https://app.speakai.co/recorder) ### AI insights on text documents **Feature** · May 15, 2026 Speak now runs its AI analysis on text files and notes, not only audio and video. You get the same insights and fields from written content. [Open Analyze Data →](https://app.speakai.co/explore) ### Speak AI command line tool **Feature** · May 15, 2026 A command line tool lets you upload, transcribe, and manage your media from the terminal. It runs alongside the connector for scripted and developer workflows. [Read the CLI guide →](https://docs.speakai.co/sdk/) ## April 2026 ### Explore trends and sentiment across your library **Feature** · April 15, 2026 A new Explore view surfaces trending topics and sentiment across all your media. It shows how each metric changed compared to the previous period so you can see what is moving. [Open Analyze Data →](https://app.speakai.co/explore) ### Purpose built chat agents **Feature** · April 15, 2026 AI chat now offers different agent types tuned for different jobs instead of one generic assistant. You pick the agent that fits the question you are asking. [Open Chat →](https://app.speakai.co/chat/history) ## March 2026 ### Live Speak voice AI agent preview **Feature** · March 15, 2026 You can now try a live Speak voice AI agent on the web or by calling a phone number. The agent knows the Speak platform and can answer questions about features, workflows, and pricing and guide you step by step. [Try the voice agent →](https://speakai.co/voice-agents/) ### Cleaner recorder and upload flow **Improvement** · March 15, 2026 The recorder and upload flow is cleaner and easier to use. [Open Surveys →](https://app.speakai.co/recorder) ### Live translation across languages **Feature** · March 15, 2026 Speak now supports live translation across multiple languages. [Open Translate →](https://app.speakai.co/translate) ### Smoother video and transcript viewing **Improvement** · March 15, 2026 Viewing video alongside the transcript is now a smoother experience. ## February 2026 ### Integrated help and AI chat panel **Feature** · February 15, 2026 Help and Chat now open in a panel across the whole app. There is a clear split between Help for support and Chat for analysis, and answers are grounded in the documentation and best practices. ![Integrated help and AI chat panel](/shots/2026-02/integrated-help-and-ai-chat-panel.png) [Open Chat →](https://app.speakai.co/chat/history) ### Transcript view upgrades **Improvement** · February 15, 2026 The transcript now opens in a full width view by default for easier reading. You can toggle the insights and chat panels on and off. ![Transcript view upgrades](/shots/2026-02/transcript-view-upgrades.png) ### Dashboard refresh **Improvement** · February 15, 2026 Quick Actions are grouped with clearer labels and recent and ongoing activity is easier to see. Account usage is expanded and there is a new Discover section for helpful resources. ![Dashboard refresh](/shots/2026-02/dashboard-refresh.png) [Open Home →](https://app.speakai.co/home) ### 31 more transcription languages **Feature** · February 15, 2026 Speak added transcription support for 31 more languages. ### Saved prompt templates **Feature** · February 15, 2026 Save your most used AI chat prompts as templates and reapply them in one click. This keeps recurring analysis consistent and faster to run. [Open Chat →](https://app.speakai.co/chat/history) ## January 2026 ### AI chat actions on transcripts **Feature** · January 15, 2026 You can now create clips, rename speakers, and edit transcript text directly from the AI chat. Changes apply instantly, you can revert them with revisions, and you can export to Word, PDF, and TXT. ![AI chat actions on transcripts](/shots/2026-01/ai-chat-actions-on-transcripts.png) [Open Chat →](https://app.speakai.co/chat/history) ### Intelligent account search **Feature** · January 15, 2026 The search in the top left is improved. You can filter results by data type and analyze your data with filters that are ready to use. ![Intelligent account search](/shots/2026-01/intelligent-account-search.png) ### Custom CSS branding for surveys **Feature** · January 15, 2026 Surveys now support custom CSS. You can style each survey on its own or apply the branding across your whole account. ![Custom CSS branding for surveys](/shots/2026-01/custom-css-branding-for-surveys.png) [Open Surveys →](https://app.speakai.co/recorder) ### Better meeting assistant experience **Improvement** · January 15, 2026 The meeting assistant has a cleaner interface where you can see past and upcoming meetings. It also handles timeouts during meetings more smartly and can detect other bots to decide whether to stay or leave. ![Better meeting assistant experience](/shots/2026-01/better-meeting-assistant-experience.png) [Open Meeting Assistant →](https://app.speakai.co/meeting-assistant) ### SSO team invite links **Feature** · January 15, 2026 You can invite teammates with a shareable link and require team members to register through SSO. ![SSO team invite links](/shots/2026-01/sso-team-invite-links.png) [Open Team →](https://app.speakai.co/team) ### Pay as you go media retention **Improvement** · January 15, 2026 Media now stays live for 30 days and you get a reminder before files are archived. Subscribing to a plan keeps files live. ### AI powered data extraction fields **Feature** · January 15, 2026 You can now set field properties that tell the AI exactly what information to pull from each recording. Speak fills those fields automatically across your media and automations. [Open Analyze Data →](https://app.speakai.co/explore) ### Keyword alerts on transcripts **Feature** · January 15, 2026 Set up alerts that fire when chosen keywords appear in a transcript. Speak can notify you or start an automation the moment those words are detected. [Open Automations →](https://app.speakai.co/automations) # Speak AI help, grouped by what you do > Every Speak AI help guide in one place: upload and record, transcribe, chat with your recordings, build dashboards, share and export, manage your account. Source: https://docs.speakai.co/help/ · Markdown: https://docs.speakai.co/help/index.md Guides for using Speak AI, grouped the way you actually work. Search below, or browse the sections. ## Get media in Record it, upload it, or let the assistant join the meeting and capture it for you. - **[Getting started](/help/start/)** 3 pages Upload or record audio, video and text, transcribe it across 93 languages with speakers identified, then summarize and analyze it with AI. - **[Uploads](/help/uploads/)** 6 pages Upload from your computer, import from a URL, pull from a connected integration, or record straight into the app. - **[Embeddable recorder](/help/recorder/)** 10 pages Collect audio and video from anyone through your website or a share link. Submissions upload and transcribe automatically. - **[Meeting Assistant](/help/meeting-assistant/)** 8 pages The Meeting Assistant joins Zoom, Google Meet, Microsoft Teams and Webex calls to record, transcribe and summarize them. ## Understand what is in it Transcription, then the answers and insights Speak AI pulls out of it. - **[Transcription](/help/transcription/)** 9 pages Speak AI transcribes audio and video automatically across 93 languages, separates speakers, and timestamps every line for review and editing. - **[AI Chat](/help/ai-chat/)** 6 pages Open AI Chat on a file or a folder, ask a question in plain language, and get an answer grounded in your own recordings. - **[Insights](/help/insights/)** 6 pages What Speak AI extracts from every recording, what each insight type means, and how to read them without opening the transcript. ## Put it to work Turn recurring analysis into something that runs itself, and watch it on a dashboard. - **[Automations](/help/automations/)** 5 pages Chain a trigger, conditions and actions on a visual canvas so work runs on every new recording without anyone starting it. - **[Dashboards](/help/dashboards/)** 2 pages Build an analytics surface from widgets, charts, KPI cards, tables and notes on a resizable grid scoped to chosen folders. ## Organize and share Find a recording again, send it to someone, or take the data out. - **[Library](/help/library/)** 4 pages Library in Speak AI. - **[Sharing](/help/sharing/)** 4 pages Sharing in Speak AI. - **[Exports](/help/exports/)** 3 pages Download transcripts as PDF, DOCX, TXT, CSV, SRT, VTT, JSON or HTML, with options to redact names, emails, locations, brands and dates. ## Run your workspace Teammates and permissions, connected tools, and your plan. - **[Teams](/help/teams/)** 1 pages Invite teammates, group them, set folder-level permissions, and share a media library across your whole Speak AI workspace. - **[Integrations](/help/integrations/)** 4 pages Speak AI integrates with Google Drive, Slack, Zoom, Zapier, Vimeo and more, so recordings flow in and results flow out automatically. - **[Account](/help/account/)** 10 pages Account in Speak AI. ## When something is wrong Fix a failed upload or export, and read how Speak AI handles your data. - **[Troubleshooting](/help/troubleshoot/)** 4 pages Troubleshooting in Speak AI. - **[Security](/help/security/)** 42 pages Encryption in transit and at rest, access control, retention limits, sub-processors and the certifications Speak AI holds. # Account > Account in Speak AI. Source: https://docs.speakai.co/help/account/ · Markdown: https://docs.speakai.co/help/account/index.md Your relationship with Speak AI in one place: what the [free trial](/help/account/free-trial/) includes, how [plans](/help/account/plans/) and [credits](/help/account/credits/) work, managing [payment methods](/help/account/payment-methods/) and [invoices](/help/account/invoices/), changing or pausing your [subscription](/help/account/subscription/), controlling [email preferences](/help/account/notifications/), and exactly what happens on [data deletion](/help/account/data-deletion/). Nothing here auto-charges and nothing surprises you: the trial converts to a free tier, credits reset each cycle, and deletion is permanent after a 7-day recovery window. - **[Affiliate program](/help/account/affiliate-program/)** - **[Credits and usage](/help/account/credits/)** - **[Data deletion](/help/account/data-deletion/)** - **[Email preferences](/help/account/email-preferences/)** - **[Free trial](/help/account/free-trial/)** - **[Invoices and receipts](/help/account/invoices/)** - **[Notifications](/help/account/notifications/)** - **[Payment methods](/help/account/payment-methods/)** - **[Plans and pricing](/help/account/plans/)** - **[Subscription](/help/account/subscription/)** Questions about billing on a team plan? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). # Affiliate program > Earn 25% recurring commission on every customer you refer, with a 60-day cookie window and a real-time tracking dashboard. Source: https://docs.speakai.co/help/account/affiliate-program/ · Markdown: https://docs.speakai.co/help/account/affiliate-program/index.md ## How it works The Speak AI affiliate program lets you earn recurring commissions by referring new customers. When someone signs up through your affiliate link and becomes a paying customer, you earn a percentage of their subscription for as long as they remain a customer. ## Program details - **Commission:** 25% recurring on every payment from referred customers - **Duration:** Lifetime of the customer's subscription - **Cookie window:** 60 days from when someone clicks your link to when they convert - **Applies to all plans:** Individual, Team, and Enterprise subscriptions ## What you get - A dedicated affiliate dashboard to track clicks, conversions, and earnings in real time - Marketing materials including banners, deep links, and email templates - Full creative freedom to promote Speak AI in your own way ## Join Apply for the affiliate program here: [speakai.co/affiliates](https://speakai.co/affiliates/?utm_source=docs&utm_medium=referral&utm_campaign=help) Once approved, you will get access to your tracking dashboard and affiliate link. Share your link on your website, social media, newsletter, or anywhere else you reach your audience. ## Questions? For questions about the affiliate program, reach out to us at success@speakai.co or send us a message here. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Account](/help/account/) · [Credits and usage](/help/account/credits/) # Credits and usage > Your plan carries a credit pool spent across transcription, AI Chat, translation and the Meeting Assistant. Credits reset each billing cycle. Source: https://docs.speakai.co/help/account/credits/ · Markdown: https://docs.speakai.co/help/account/credits/index.md ## How your plan works Your Speak plan runs on **credits**. Each billing cycle your plan includes a pool of credits that you spend across everything you do in Speak: transcription, AI Chat, translation, the Meeting Assistant, and text notes. Credits carry a dollar value, so you always know what an action costs, and they reset at the start of each cycle. ## One flexible balance Credits are flexible. The same balance can go toward transcription or AI Chat, so you are not locked into separate buckets. Speak shows the estimated cost before you run something, so there are no surprises. ## If you joined before credits Accounts created before we moved to credits use the earlier model: a monthly allowance of transcription hours and AI Chat characters, plus a Speak Credit balance (in US dollars) for anything beyond it. If that is your account, your Usage page shows hours and characters instead of credits. ## What counts toward usage - **Transcription** is based on the length of the audio or video you process, not the time you spend in the app. A 30-minute recording uses 30 minutes of transcription. - **AI Chat** is based on how much text is processed: the transcript sent to the model plus the response generated. - Reviewing transcripts, reading insights, and exporting are always free. Only processing new work draws on your plan. - Re-transcribing a file runs the full pipeline again, so it draws on your plan again. ## Checking your usage Open the profile menu at the bottom-left of the sidebar, then go to Settings > Billing > [Usage](https://app.speakai.co/profile/usage) to see your balance and what you have used this cycle. Your available balance and invoices are under Settings > Billing > [Payment & Invoices](https://app.speakai.co/profile/payment). ## If you run low You are never hard-blocked. When you use more than your plan includes, additional usage is billed from your Speak Credit balance (a prepaid balance in US dollars that never expires), and then your card. You can top up anytime. ## File size Free plans can upload files up to 2 GB each. Paid plans have no per-file size limit. For current credit amounts and per-seat pricing, see [speakai.co/pricing](https://speakai.co/pricing/?utm_source=docs&utm_medium=referral&utm_campaign=help). Visit this page in your account: [https://app.speakai.co/profile/payment](https://app.speakai.co/profile/payment) Select "Reload your credit". A modal will pop up: Enter the credit you would like to add. Speak AI will use your attached credit card to deduct the defined amount. Automatically, your credit will update in the account. You will be able to use that credit to transcribe and analyze your media files. ## Don't have a credit card added? On the same page, Select "Add a Card", fill out the details and hit "Add". ## Add credit to your Speak AI account Visit this page in your account: [https://app.speakai.co/profile/payment](https://app.speakai.co/profile/payment) Select "Reload your credit". A modal will pop up: Enter the credit you would like to add. Speak AI will use your attached credit card to deduct the defined amount. Automatically, your credit will update in the account. You will be able to use that credit to transcribe and analyze your media files. ## Don't have a credit card added? On the same page, Select "Add a Card", fill out the details and hit "Add". Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # Data deletion > Deleted files enter a 7-day soft-delete window before permanent removal. Covers file deletion, account deletion and what is retained. Source: https://docs.speakai.co/help/account/data-deletion/ · Markdown: https://docs.speakai.co/help/account/data-deletion/index.md ## Deleting individual files When you delete a media file, transcript, or text note: 1. The file enters a **7-day soft delete** period 1. During this period, the file can be recovered if needed 1. After 7 days, the file is **permanently deleted** from our servers To delete a file, open it and select **Delete** from the actions menu, or select multiple files in a folder and use the bulk delete option. ## Deleting your account To permanently delete your entire account and all associated data: 1. Go to [Settings > Data Management](https://app.speakai.co/profile/data) 1. Click **Delete Account** 1. Confirm the deletion This action is **irreversible**. All your media files, transcripts, analysis data, and account settings will be permanently removed. We recommend exporting any data you want to keep before deleting. ## What gets deleted - The original audio/video file - The transcript text - All AI analysis results (insights, sentiment, keywords) - AI Chat conversation history for that file - Any clips created from the file ## Do you train AI on my data? **No.** Speak AI does not use your data to train AI models unless you explicitly instruct us to. Your content remains private and is only processed for the features you use. ## Data residency Speak AI data centers are located in Canada Central and North United States regions. Enterprise customers can request specific data storage locations. For details, see our [security overview](/help/security/). Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # Email preferences > Change which Speak AI emails you receive, or stop marketing email entirely, from the notification settings in your profile. Source: https://docs.speakai.co/help/account/email-preferences/ · Markdown: https://docs.speakai.co/help/account/email-preferences/index.md ## Manage Email Preferences By managing your preferences, you can reduce inbox clutter and ensure you don't miss important account-related messages. ### How It Works You can manage your email preferences in two main ways: - By clicking the "Unsubscribe" or "Manage Preferences" link at the bottom of any marketing email. - By adjusting your settings directly in your User Profile. ### Getting Started To access your notification settings, go to **[Profile → Email Notifications](https://app.speakai.co/profile/notifications)** in your dashboard. ### Troubleshooting **Still getting emails?** If you've recently updated your preferences, please note that it may take 24-48 hours for the changes to fully take effect across all our systems. ### Next Steps Ready to manage your email communications? - **Login to your account** and navigate to **Settings → Notifications**. - **Review your options** and uncheck any categories you no longer wish to receive emails for, such as "Product Updates" or "Newsletter". - **Save your changes** to apply your new preferences. Remember, do not unsubscribe from "Transactional Emails" like password resets or invoice notifications, as these are essential for your account security and access. Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # Free trial > The trial runs 7 days with every premium feature on. Most new accounts get 60 minutes of transcription, 5 files and 3 assistant meetings. Source: https://docs.speakai.co/help/account/free-trial/ · Markdown: https://docs.speakai.co/help/account/free-trial/index.md Every Speak AI trial runs 7 days with **every premium feature turned on**: transcription, AI Chat, the Meeting Assistant, automations, insights, and exports. No credit card required, and nothing is charged when it ends. {/* fact:trial.days */}{/* fact:trial.no_card */} - Try the whole platform, not a cut-down version - Upload real recordings; your transcripts stay yours after the trial - No auto-charge, ever: the account converts to the free tier when the trial ends ## What the trial includes | | Standard trial | Extended trial | | --- | --- | --- | | Transcription | **60 minutes** {/* fact:trial.t1.minutes */} | 120 minutes {/* fact:trial.t2.minutes */} | | Files | 5 {/* fact:trial.t1.files */} | 15 | | Meeting Assistant | 3 meetings {/* fact:trial.t1.meetings */} | 3 meetings | | AI Chat | 10,000 characters {/* fact:trial.t1.chat_chars */} | 75,000 characters | | Translation | 5,000 characters {/* fact:trial.t1.translation_chars */} | 25,000 characters | Teams evaluating with a shared workspace start with extended limits. If you need more than that to test properly, longer files, a bigger dataset, or more seats, ask us and we'll set up a custom trial: [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) or write to success@speakai.co. ## What happens when the trial ends **You are not charged.** The account converts to the free tier: you keep access to Speak AI, your uploads, transcripts, and analysis. Limits apply to new work, not to what you already made. Upgrade whenever it's actually worth it to you: [compare plans](/help/account/plans/). ## Can I test with a long recording? A single long file can use most of the trial's transcription minutes. That's a legitimate test, not a problem. If your evaluation needs more (a full interview study, a season of podcast episodes), [book a consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll extend the trial to fit it. ## Do trial transcripts work like paid ones? Yes: view, edit, export, and share them exactly as on a paid plan. That's the point of the trial: judge Speak AI on your own recordings, end to end. --- Related: [Plans and pricing](/help/account/plans/) · [Credits and usage](/help/account/credits/) · [Upload files](/help/uploads/) · Evaluating for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo) # Invoices and receipts > Receipts email automatically from Stripe on every payment. Download past invoices, including VAT invoices, from your payment history. Source: https://docs.speakai.co/help/account/invoices/ · Markdown: https://docs.speakai.co/help/account/invoices/index.md ## Automatic email receipts When you make a payment on Speak AI AI, a receipt is automatically sent to the email address associated with your account. Check your inbox (and spam folder) for emails from Stripe, our payment processor. ## Viewing payment history 1. Go to your [Payment Information page](https://app.speakai.co/profile/payment) 1. Scroll down to see your payment history 1. Click on any transaction to view or download the invoice ## Downloading invoices From your payment history, you can download invoices as PDF files. Each invoice includes the date, amount, plan details, and payment method used. ## VAT and custom invoicing If you need invoices with VAT details, company information, or reverse charge formatting for your business, reach out to our support team. We can set up custom invoicing for enterprise and business accounts. ## Didn't receive a receipt? - Check your spam/junk folder for emails from Stripe - Make sure your account email is correct in your [profile settings](https://app.speakai.co/profile/usage) - Contact us and we can resend the receipt Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # Notifications > Email yourself and chosen teammates whenever someone submits to a recorder. Set per recorder, so each project notifies its own owner. Source: https://docs.speakai.co/help/account/notifications/ · Markdown: https://docs.speakai.co/help/account/notifications/index.md ## How upload notifications work When someone submits a recording to one of your recorders (your shared recording or survey link), Speak AI can email you and the teammates you choose. This is set per recorder, so each recorder can notify a different group. ## Turn it on for a recorder 1. Open the recorder and go to its **Settings** tab. 1. In the **Notifications** section, turn on **Upload notification** ("Send notification when survey is completed"). 1. Under **Notify team members**, select the teammates who should get the email. Selected members receive an email when a new recording is submitted. 1. Save your settings. You can also set this while creating a recorder with the **Notify your team on every upload** toggle. ## Your own email setting To control whether you receive these emails, go to [Profile > Email Notifications](https://app.speakai.co/profile/notifications) and check that **Recording Submission** ("Get notified when a recording is submitted") is on. ## Good to know - These notifications are for recordings submitted to a recorder. They are email notifications. - Each recorder keeps its own notification list, so you can route different recorders to different teammates. - Team members you select are notified whenever a recording is submitted, even if you have turned off your own submission notifications. Your personal setting only controls whether **you** receive the email. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). ## Get email notifications when a recording is submitted ## How upload notifications work When someone submits a recording to one of your recorders (your shared recording or survey link), Speak AI can email you and the teammates you choose. This is set per recorder, so each recorder can notify a different group. ## Turn it on for a recorder 1. Open the recorder and go to its **Settings** tab. 1. In the **Notifications** section, turn on **Upload notification** ("Send notification when survey is completed"). 1. Under **Notify team members**, select the teammates who should get the email. Selected members receive an email when a new recording is submitted. 1. Save your settings. You can also set this while creating a recorder with the **Notify your team on every upload** toggle. ## Your own email setting To control whether you receive these emails, go to [Profile > Email Notifications](https://app.speakai.co/profile/notifications) and check that **Recording Submission** ("Get notified when a recording is submitted") is on. ## Good to know - These notifications are for recordings submitted to a recorder. They are email notifications. - Each recorder keeps its own notification list, so you can route different recorders to different teammates. - Team members you select are notified whenever a recording is submitted, even if you have turned off your own submission notifications. Your personal setting only controls whether **you** receive the email. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # Payment methods > Add a card, switch to a different one, or remove an old payment method from the Payment and Invoices page in your account. Source: https://docs.speakai.co/help/account/payment-methods/ · Markdown: https://docs.speakai.co/help/account/payment-methods/index.md ## Adding a credit card Your saved cards live on the **Payment Methods** tab of the Payment & Invoices page. 1. Go to your [Payment & Invoices page](https://app.speakai.co/profile/payment) 1. Click **Add Card** 1. Fill out your card details and click **Add** ## Updating to a new card To switch to a different credit card: 1. Go to your [Payment & Invoices page](https://app.speakai.co/profile/payment) 1. Click **Add Card** and enter your new card details 1. Once the new card is added, you can delete the old one ## Removing a card After adding a new card, click the delete icon next to the old card to remove it from your account. ## Troubleshooting - **Card declined?** Check our [payment troubleshooting guide](/help/troubleshoot/payments/) for common reasons and fixes. - **Need to add credit instead?** You can reload your account credit from the same [Payment & Invoices page](https://app.speakai.co/profile/payment) using the "Reload your credit" option. ## Add or Update Your Credit Card ## Adding a credit card Your saved cards live on the **Payment Methods** tab of the Payment & Invoices page. 1. Go to your [Payment & Invoices page](https://app.speakai.co/profile/payment) 1. Click **Add Card** 1. Fill out your card details and click **Add** ## Updating to a new card To switch to a different credit card: 1. Go to your [Payment & Invoices page](https://app.speakai.co/profile/payment) 1. Click **Add Card** and enter your new card details 1. Once the new card is added, you can delete the old one ## Removing a card After adding a new card, click the delete icon next to the old card to remove it from your account. ## Troubleshooting - **Card declined?** Check our [payment troubleshooting guide](/help/troubleshoot/payments/) for common reasons and fixes. - **Need to add credit instead?** You can reload your account credit from the same [Payment & Invoices page](https://app.speakai.co/profile/payment) using the "Reload your credit" option. Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # Plans and pricing > Free trial, Pro and custom Enterprise pricing compared. Every paid plan includes transcription, AI Chat, Meeting Assistant, automations and insights. Source: https://docs.speakai.co/help/account/plans/ · Markdown: https://docs.speakai.co/help/account/plans/index.md Speak AI has three ways in: a [free trial](/help/account/free-trial/) with every feature on, a **Pro** plan for individuals and teams, and **Enterprise** for organizations with custom volume, security review, and white-label needs. Current prices are always on the [pricing page](https://speakai.co/pricing/?utm_source=docs&utm_campaign=consult), so this page never shows you a stale number. ## What every paid plan includes Transcription, AI Chat, the Meeting Assistant, automations, insights, exports, and the mobile app. Plans differ by volume and team features, not by which product you get. ## How billing works Your plan carries a pool of [credits](/help/account/credits/) spent across everything you do: transcription minutes, AI Chat, translation, the Meeting Assistant. Credits reset each billing cycle, and you can [add prepaid credit](/help/account/credits/) for overflow instead of surprise charges. ## Choosing - **Testing whether it works for you:** the [free trial](/help/account/free-trial/), no card required. - **Individual or small team doing real volume:** Pro. - **An organization with procurement, security review, or 50+ seats:** Enterprise. [Book a demo and see your own workflows priced](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). **Buying for a team and not sure what volume you need?** Bring a week of real recordings to a [free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll size it with you. --- Related: [Free trial](/help/account/free-trial/) · [Credits and usage](/help/account/credits/) · [Subscription](/help/account/subscription/) · [Invoices](/help/account/invoices/) # Subscription > Upgrading unlocks AI Chat, premium exports, custom insights and higher limits. Changes apply immediately and bill pro rata. Source: https://docs.speakai.co/help/account/subscription/ · Markdown: https://docs.speakai.co/help/account/subscription/index.md ## Upgrade Your Subscription These premium features are designed to help you achieve more, streamline your processes, and get the most out of our platform. ### How It Works Upgrading your subscription is a straightforward process that grants you immediate access to premium features. You can easily manage your plan and view available options directly within your account settings. ### Getting Started To upgrade your subscription, go to **Settings → Manage Plan** in your dashboard and click **"Change Plan"** or **"Upgrade"**. ### Steps 1. **Compare Plans:** View the pricing table to understand the features included in each tier. Team and Enterprise plans typically offer advanced capabilities such as "Custom Branding" or "API Access". 1. **Select:** Click "Upgrade" on the plan that best suits your needs. 1. **Checkout:** Confirm your payment method. A pro-rated charge will be applied immediately to reflect the upgrade. 1. **Access:** Once your payment is successful, new features, such as the "Export" button becoming active, will be available instantly. ### Pro Tips Consider opting for annual plans, as they usually provide a 20% discount compared to paying on a monthly basis. ### Troubleshooting If you encounter a **"Payment Failed"** error, please check if your bank requires two-factor authentication (2FA) for the transaction. ### Next Steps Ready to enhance your experience? Here's what to do next: - **Login to your account** and navigate to **Settings → Manage Plan**. - **Explore the available plans** to find the one that best fits your requirements. - **Complete the upgrade process** to instantly access premium features. ## Upgrade my subscription ## Upgrade Your Subscription ### Overview Unlock powerful advanced features that can significantly enhance your workflow and productivity. By upgrading, you gain access to tools like AI Chat for smarter suggestions, advanced Export capabilities, and higher usage limits to support your growing needs. These premium features are designed to help you achieve more, streamline your processes, and get the most out of our platform. ### How It Works Upgrading your subscription is a straightforward process that grants you immediate access to premium features. You can easily manage your plan and view available options directly within your account settings. ### Getting Started To upgrade your subscription, go to **Settings → Manage Plan** in your dashboard and click **"Change Plan"** or **"Upgrade"**. ### Steps 1. **Compare Plans:** View the pricing table to understand the features included in each tier. Team and Enterprise plans typically offer advanced capabilities such as "Custom Branding" or "API Access". 1. **Select:** Click "Upgrade" on the plan that best suits your needs. 1. **Checkout:** Confirm your payment method. A pro-rated charge will be applied immediately to reflect the upgrade. 1. **Access:** Once your payment is successful, new features, such as the "Export" button becoming active, will be available instantly. ### Pro Tips Consider opting for annual plans, as they usually provide a 20% discount compared to paying on a monthly basis. ### Troubleshooting If you encounter a **"Payment Failed"** error, please check if your bank requires two-factor authentication (2FA) for the transaction. ### Next Steps Ready to enhance your experience? Here's what to do next: - **Login to your account** and navigate to **Settings → Manage Plan**. - **Explore the available plans** to find the one that best fits your requirements. - **Complete the upgrade process** to instantly access premium features. ## Pause, resume, or cancel your subscription ## Pausing your subscription If you need a break but plan to come back, you can pause your subscription instead of canceling: 1. Go to [Profile > Manage Plan](https://app.speakai.co/pricing) 1. Click **Pause Subscription** 1. Select how long you want to pause While paused, you won't be charged. Your data and transcriptions remain saved. You can resume anytime. ## Resuming your subscription 1. Go to [Profile > Manage Plan](https://app.speakai.co/pricing) 1. Click **Resume Subscription** 1. Your plan reactivates immediately and billing resumes on the next cycle ## Canceling your subscription 1. Go to [Profile > Manage Plan](https://app.speakai.co/pricing) 1. Click **Cancel Subscription** ### What happens after cancellation - **Monthly plans:** You keep access until the end of your current billing cycle - **Annual plans:** You keep access through the end of your paid period - After the paid period ends, your account converts to the free tier - Your data remains accessible and exportable - No cancellation fees or penalties ## Deleting your account If you want to permanently delete your account and all associated data, go to [Settings > Profile > Data Management](https://app.speakai.co/profile/data). This action is irreversible and removes all your media, transcripts, and analysis data. Before deleting, we recommend exporting any data you want to keep. ## Questions? If you're thinking about canceling because something isn't working for you, let us know. We'd love the chance to help solve the issue. Send us a message anytime. Need further assistance? Contact our support team or explore our other help guides. Need further assistance? Contact our support team or explore our other help guides. ## Pausing your subscription If you need a break but plan to come back, you can pause your subscription instead of canceling: 1. Go to [Profile > Manage Plan](https://app.speakai.co/pricing) 1. Click **Pause Subscription** 1. Select how long you want to pause While paused, you won't be charged. Your data and transcriptions remain saved. You can resume anytime. ## Resuming your subscription 1. Go to [Profile > Manage Plan](https://app.speakai.co/pricing) 1. Click **Resume Subscription** 1. Your plan reactivates immediately and billing resumes on the next cycle ## Canceling your subscription 1. Go to [Profile > Manage Plan](https://app.speakai.co/pricing) 1. Click **Cancel Subscription** ### What happens after cancellation - **Monthly plans:** You keep access until the end of your current billing cycle - **Annual plans:** You keep access through the end of your paid period - After the paid period ends, your account converts to the free tier - Your data remains accessible and exportable - No cancellation fees or penalties ## Deleting your account If you want to permanently delete your account and all associated data, go to [Settings > Profile > Data Management](https://app.speakai.co/profile/data). This action is irreversible and removes all your media, transcripts, and analysis data. Before deleting, we recommend exporting any data you want to keep. ## Questions? If you're thinking about canceling because something isn't working for you, let us know. We'd love the chance to help solve the issue. Send us a message anytime. ### Overview This guide explains how to cancel your subscription to stop future billing or permanently delete your account and all associated data. This process allows you to manage your account status and data retention according to your needs. Understanding these options ensures you can make informed decisions about your account and data privacy. ### How It Works There are two primary actions you can take: - **Cancellation:** This stops future billing. You will retain access to your data until the end of your current billing period. After this period, your account will revert to the Free plan limits. - **Deletion:** This is an irreversible action. All your media, transcripts, and analysis data will be permanently removed from our servers. In some cases, data may be retained for a set period if legally required. ### Getting Started To access these options, navigate to your account settings: - For cancellation: Go to **Profile → Manage Plan → Cancel Subscription**. - For deletion: Go to **Settings → Profile → Data Management** ### Prerequisites To perform these actions, you must be the **Account Owner**. ### Related Information - [Payment & Invoices](https://app.speakai.co/pricing) - [Data Privacy](https://app.speakai.co/profile/data) ### Pro Tips Before deleting your account, it is highly recommended to export all your data. ### Troubleshooting **"Contact Admin":** If you see this message, it means you are a team member and do not have the permissions to delete the company account. Only the account administrator can perform this action. ### Next Steps Ready to manage your account status? Here's what to do next: - **Login to your account** and navigate to the Billing or Profile settings. - **Choose the action** that best suits your needs: cancel your subscription or delete your account. - **Review the consequences** of your chosen action before proceeding. Need help? Contact our support team or check out our other guides. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Account](/help/account/) · [Affiliate program](/help/account/affiliate-program/) # AI Chat > Open AI Chat on a file or a folder, ask a question in plain language, and get an answer grounded in your own recordings. Source: https://docs.speakai.co/help/ai-chat/ · Markdown: https://docs.speakai.co/help/ai-chat/index.md AI Chat answers questions about your recordings: one file, a whole folder, or your entire library. Ask for summaries, themes, action items, or charts, and get answers grounded in your own transcripts. It also acts on your workspace: [creating clips](/help/sharing/clips/), renaming speakers, and running [batch analysis](/help/ai-chat/batch-analysis/) across a folder. Save the [prompts](/help/ai-chat/prompts/) your team uses so everyone analyzes the same way, choose your [model](/help/ai-chat/models/), [attach files](/help/ai-chat/attachments/) for context, and connect [your other tools](/help/ai-chat/connectors/) so the assistant can use them mid-conversation. - **[Attachments](/help/ai-chat/attachments/)** - **[Batch analysis](/help/ai-chat/batch-analysis/)** - **[Connectors](/help/ai-chat/connectors/)** - **[Date ranges](/help/ai-chat/date-ranges/)** - **[Models](/help/ai-chat/models/)** - **[Prompts](/help/ai-chat/prompts/)** ## Use AI Chat in Speak AI ## Step 1: Visit An Individual File When you are viewing any individual file in Speak, all you have to do is select the "Prompt" button. ## Step 2: Select Your Desired Prompt A modal will pop up that enables you to use pre-defined prompts to instantly and magically get valuable written answers. Here are the currently available prompts: 1. Create a SWOT Analysis 1. Give me the top action items 1. Create a bullet point list summary 1. Tell me the key issues that were left unresolved 1. Tell me what questions were asked ## Step 2: Create Or Select Your Desired Prompt A modal will pop up so you can use the suggested prompts we shared above to instantly and magically get your answers. If you have the prompts you want to create, select "Custom Prompt" from the dropdown, and another text box will open that gives you 100 characters where you can ask anything you want of your data. ## Watch the video tutorial here: ## AI Chat: Ask AI Anything About Your Recordings ## What is AI Chat? AI Chat is Speak AI's built-in conversational AI that lets you interact with your recordings. Ask questions, get summaries, create clips, rename speakers, generate charts, and more. It works with your choice of AI model: Claude, GPT, or Gemini. ## AI models available You can choose which AI powers your chat: - **Claude** (Anthropic) - Claude Sonnet 4.6 - **GPT** (OpenAI) - GPT-5.1 and GPT-4o - **Gemini** (Google) - Gemini 2.5 Flash and 2.0 Flash Your default model depends on your plan. Free Trial users start with Gemini. You can change your preferred model in your account preferences. ## What you can do with AI Chat ### Ask questions about your content - "What are the key takeaways from this meeting?" - "List all action items with owners" - "What did they say about pricing?" - "Summarize the main points in 5 bullet points" - "What questions were asked during the interview?" ### Create clips Extract specific portions of your recording: - "Create a clip from 0:30 to 1:45" - "Cut the section between 2 minutes and 5 minutes" - "Make a 30-second clip starting at 1:00" ### Edit speakers and transcripts - "Change Speaker 1 to John Smith" - "Rename Speaker A to Sarah and Speaker B to Mike" - "Replace 'gonna' with 'going to' throughout" - "Remove all instances of 'um'" ### Export transcripts - "Export this transcript as PDF" - "Download as a Word document" - "Export as TXT without timestamps" ### Search across files (at folder level) - "How many files are in this folder?" - "Show files from last week" - "Find all files tagged 'interview'" - "Find files where Gender is Male" ### Generate charts (at folder level) - "Create a pie chart of gender distribution" - "Show a bar chart of files by category" - "Generate a doughnut chart of sentiment across files" ## File level vs folder level AI Chat works differently depending on where you open it: **On a specific file:** All tools available. Create clips, rename speakers, edit transcript text, export, and ask questions about that specific recording. **On a folder:** Search across all files, generate charts, export multiple files, and ask cross-file questions. You can also use "Run on Each File" to process the same prompt across every file in the folder individually. ## Prompt templates Not sure what to ask? Speak AI includes 20+ pre-built prompt templates organized by use case: - Customer Feedback Synthesis - Key Themes Identification - Comprehensive Meeting Overview - Customer Pain Points Identification - Follow-Up Strategy Planner - Strategic Insights Extraction - And many more Access templates from the prompt library icon in the chat interface. ## Usage AI Chat usage is measured in characters. The Individual plan includes 10M characters per month. The Team plan includes 25M. You can see your remaining balance in your dashboard. The rate limit is 15 requests per minute. For the complete list of chat commands, see our [AI Chat Prompts Guide](/help/ai-chat/prompts/). ## What the Speak AI Assistant can do ## What the AI assistant can do The AI Chat panel in Speak AI does more than answer questions about your recordings. It can also act on your workspace using the same tools the Speak AI platform exposes: creating folders, managing recorders, toggling automations, building embeds, updating media metadata, and more. When you make a request, the assistant picks the right tool and runs it on your behalf. You can watch it work in real time. Each step the assistant takes (searching your library, calling a tool, thinking through a plan) appears as a collapsible card in the chat so you always know what is happening. ## Clarifying questions When a request is ambiguous, the assistant may pause and ask you a clarifying question before it acts. You will see a blue card in the chat with a question and, where applicable, suggested answer options you can tap. You can also type a free-text reply or skip the question to let the assistant proceed with its best guess. ## Confirmation before destructive actions Actions that cannot be undone, such as deleting media or bulk-removing items, are gated behind an explicit confirmation step. The assistant pauses and shows you exactly what it is about to do. You choose **Confirm** to proceed or **Cancel** to stop. Nothing is deleted until you approve it. ## Agent modes Depending on the nature of your request, the assistant operates in one of several modes: **help** (answering questions), **task** (performing workspace actions), **research** (synthesizing information across recordings), or **sales**. The active mode is shown as a small badge next to the chat title so you know how the assistant is approaching your request. ## Related articles - [How to use AI Chat in Speak AI](https://intercom.help/speak-ai/en/articles/6836940) - [AI Chat FAQ](https://intercom.help/speak-ai/en/articles/6836930) The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). ## AI Chat FAQ ## Do I get AI Chat in my free trial? Yes. Your 7-day free trial includes AI Chat so you can try it out. ## How is AI Chat usage calculated? AI Chat usage is based on how much text is processed: the transcript text sent to the model (including speaker names and timestamps) plus the response generated. On credit-based plans this is deducted from your plan's credits; on older character-based plans it counts toward your monthly AI Chat characters. You can see your usage under Settings > Billing > [Usage](https://app.speakai.co/profile/usage) (open the profile menu at the bottom-left of the sidebar). ### Does usage count if my prompt fails? No. If an AI Chat prompt fails to generate an output, those characters are not counted. ## How much AI Chat do I get? Your plan includes a pool of credits you can spend on AI Chat (or, on older plans, a monthly allowance of AI Chat characters). For current amounts, see [speakai.co/pricing](https://speakai.co/pricing/). ## Does unused AI Chat roll over? No. Your plan's credits (or characters) reset at the start of each billing cycle and do not roll over. A separate Speak Credit balance you top up yourself never expires. ## What if my prompt takes a long time? For large files, AI processing may take a few minutes. If a prompt takes more than 10 minutes, you can delete it and re-run it at no additional cost. ## Which AI models can I use? AI Chat supports leading models from multiple providers, including Anthropic (Claude), OpenAI (GPT), and Google (Gemini), each shown with its provider logo in the model picker. Speak routes each task to a strong default model, and you can choose your preferred one. On the free tier, premium models are locked (shown with a lock icon and an upgrade prompt) and you use the available free model. Upgrade to unlock the full model selection. ## What is the rate limit? 15 AI Chat requests per minute. If you need higher limits for enterprise use, contact our team. Evaluating AI analysis for a team? [Book a demo and ask AI Chat about your own recordings](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). # Attachments > Add images, documents and spreadsheets to an AI Chat message for extra context. Which file types are read and how each is processed. Source: https://docs.speakai.co/help/ai-chat/attachments/ · Markdown: https://docs.speakai.co/help/ai-chat/attachments/index.md ## Supported file types You can attach files to any AI Chat message to give the assistant more context. The attachment types differ by how they are processed: - **Images** (JPEG, PNG, WebP, GIF, and other common image formats), sent directly to the AI model as visual context alongside your message. Maximum 10 MB per file. - **PDFs**, sent directly to the AI model as document context. Maximum 10 MB per file. - **Audio and video files**, routed through Speak AI's standard transcription pipeline. The file is uploaded as a new media item, transcribed, and the transcript is added as context for your chat. This uses your transcription quota exactly as a normal upload would. ## Attach a file 1. Click the **paperclip** icon in the chat input toolbar. 1. Select one or more files from your device. Images and PDFs can be attached in batches. Only one audio or video file can be attached per message. 1. Your attachments appear as chips above the input box. Remove any you do not want by clicking the **X** on its chip. 1. Type your message and send. You can also **paste an image** directly from your clipboard into the chat input box instead of picking a file. ## Transcription quota note Audio and video attachments count against your transcription minutes just like any other upload. If you are on a Free Trial or Pay As You Go plan, charges apply at your plan's per-minute rate. Check your usage at any time under **Account**. ## Related articles - [AI Chat: Ask AI Anything About Your Recordings](https://intercom.help/speak-ai/en/articles/14289254) - [AI Chat FAQ](https://intercom.help/speak-ai/en/articles/6836930) The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [AI Chat](/help/ai-chat/) · [Batch analysis](/help/ai-chat/batch-analysis/) # Batch analysis > Run on Each File applies a single AI Chat prompt to every recording in a folder and returns one result per file, not one summary. Source: https://docs.speakai.co/help/ai-chat/batch-analysis/ · Markdown: https://docs.speakai.co/help/ai-chat/batch-analysis/index.md ## What is "Run on Each File"? When using AI Chat at the folder level, you can enable the "Run on Each File" option. This processes the same prompt against every individual file in the folder, giving you per-file results instead of a single aggregated answer. ## When to use it This is powerful when you want the same analysis applied to many recordings: - **Research:** "Extract the top 3 themes from each interview" - **Sales:** "What objections were raised in each call?" - **Meetings:** "Generate action items from each meeting this week" - **Customer feedback:** "Summarize the customer's main concern in each recording" - **Field extraction:** "What is the participant's age and role?" for each file ## Use it 1. Open a folder in Speak AI 1. Open AI Chat 1. Toggle on **Run on Each File** 1. Optionally select a specific field to analyze 1. Type your prompt and send The system processes each file individually in the background. Results appear as they complete. ## vs regular folder prompts **Regular folder prompt:** "What are the common themes across all these interviews?" gives you one aggregated answer. **Run on Each File:** "What are the main themes?" gives you a separate answer for every file, which you can then compare and analyze. ## Tips - Processing time scales with the number of files. A folder with 50 files will take longer than one with 5. - Each file uses your AI Chat character allowance individually. - Results are saved and you can review them later. - Combine with the Automations feature to run batch analysis automatically on new uploads. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [AI Chat](/help/ai-chat/) · [Attachments](/help/ai-chat/attachments/) # Connectors > Give AI Chat direct access to HubSpot, Salesforce, Zoho CRM and other connected apps so it can act on them inside a conversation. Source: https://docs.speakai.co/help/ai-chat/connectors/ · Markdown: https://docs.speakai.co/help/ai-chat/connectors/index.md ## What integrations are available You can connect third-party apps to Speak AI and use them as tools directly inside AI Chat. The current supported connectors are: - **CRM:** HubSpot, Salesforce, Zoho CRM, Attio, Close - **Helpdesk:** Zendesk, Freshdesk - **Project management:** Jira, Linear, Asana, ClickUp, Trello - **Storage:** Google Drive, Dropbox, OneDrive, Box - **Communications:** Gmail, Slack, Outlook, Telegram - **Documents:** Notion, Google Docs, Confluence - **Scheduling:** Calendly ## Connect an integration Most integrations use OAuth, meaning you authorize Speak AI to access the app without sharing your password. A few (such as Close and Freshdesk) connect with an API key you paste in. 1. Go to **Integrations** from the sidebar. 1. Find the app you want to connect and click **Connect**. 1. Complete the OAuth flow (or paste your API key) in the dialog that opens. ## Connecting from inside a chat If you ask the assistant to do something that requires an integration you have not connected yet, it pauses and shows an inline **Connect** card inside the chat. Click the card, complete the authorization, and the assistant continues automatically. For example: "Send a summary of this recording to the #product channel in Slack" will prompt a Slack connect card if Slack is not already linked. ## What you can do once connected After connecting, you can ask the assistant to perform actions such as: - Send a message or email summarizing a transcript (Slack, Gmail, Outlook) - Create a Notion page, Google Doc, or Confluence page from a recording - Add a CRM note or contact from meeting insights (HubSpot, Salesforce, Attio, etc.) - Create a task or ticket from action items (Jira, Asana, ClickUp, Trello, Linear) - Upload a file to cloud storage (Dropbox, Google Drive, OneDrive, Box) ## Related articles - [AI Chat FAQ](https://intercom.help/speak-ai/en/articles/6836930) The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [AI Chat](/help/ai-chat/) · [Attachments](/help/ai-chat/attachments/) # Date ranges > Every natural-language date pattern AI Chat understands, so you can scope a prompt to last week, a named month or a custom range. Source: https://docs.speakai.co/help/ai-chat/date-ranges/ · Markdown: https://docs.speakai.co/help/ai-chat/date-ranges/index.md This guide documents all supported date patterns in the Chat. These patterns allow you to specify date ranges in natural language within their prompts. ## Usage Examples in AI Chat Here are practical examples of how these patterns work in AI chat scenarios: ## Business Analysis - "Highlight unresolved key issues from **last 3 months**" - "Show me sales performance for **Q1 2024**" - "What are the trends **year to date**?" ## Meeting Summaries - "Tell me the summary from **yesterday's** meeting" - "What action items were discussed **last week**?" - "Show me all decisions made **this month**" ## Data Analysis - "Compare revenue **between January and March 2024**" - "What's the growth rate **in the past 6 months**?" - "Show me user engagement **since December**" ## Project Management - "List all tasks completed **last couple of weeks**" - "What milestones are due **next quarter**?" - "Show me progress **month to date**" ## 1. Last N Periods - "Show me all customer feedback from the **last 10 days**" - "What were the top issues reported in the **last 3 weeks**?" - "Analyze sales performance over the **last 6 months**" - "Compare our growth with competitors from the **last 2 years**" - "List all meetings scheduled in the **last 1 week**" \2. Last Written Number Periods - "Summarize all project updates from the **last two days**" - "What trends emerged in the **last three weeks**?" - "Show me budget allocations for the **last four months**" - "How has our team productivity changed over the **last five years**?" - "Generate a report of all incidents from the **last seven days**" *Supported written numbers: one, two, three, four, five, six, seven, eight, nine, ten* ## 3. "Couple" and "Few" Patterns - "What urgent tasks came up in the **last couple of days**?" - "Show me client communications from the **last couple of weeks**" - "Highlight key decisions made in the **last few days**" - "What new opportunities arose in the **past couple of months**?" - "Analyze user feedback from the **past few weeks**" - "List all system updates deployed in the **past few months**" ## 4. Next N Periods - "What are the planned deliverables for the **next 3 weeks**?" - "Show me projected revenue for the **next 6 months**" - "What strategic goals are set for the **next 2 years**?" - "List all upcoming events in the **next two days**" - "Plan resource allocation for the **next five months**" ## 5. Past N Periods - "Analyze user engagement trends from the **past 30 days**" - "What were our biggest achievements in the **past 2 years**?" - "Show me all support tickets from the **in the past 5 months**" - "Highlight security incidents from the **past two weeks**" - "What lessons learned can we extract from the **past three months**?" ## 6. Calendar Periods - "What were the key accomplishments from **last week**?" - "Show me all invoices generated **last month**" - "How did our company perform **last year**?" - "What meetings were scheduled **previous week**?" - "List all new hires from **previous month**" - "Compare our growth metrics with **previous year**" ## 7. Current Periods - "What are the priorities for **this week**?" - "Show me all expenses recorded **this month**" - "How are we tracking against our goals for **this year**?" - "List all deadlines coming up **this week**" - "What's the budget status for **this month**?" ## 8. Day-Specific Patterns - "What meetings do I have scheduled for **today**?" - "Show me the summary from **yesterday**'s stand-up" - "What deliverables are due **tomorrow**?" - "Remind me about the presentation **day after tomorrow**" - "What was discussed in the meeting **day before yesterday**?" ## 9. Quarter Patterns - "What were our sales figures for **Q1**?" - "Show me the performance metrics from **Q2 2024**" - "What are the strategic initiatives for **Quarter 3**?" - "How did we perform in the **first quarter**?" - "What's the outlook for **this quarter**?" - "What are the goals for **next quarter**?" - "Compare our results with **previous quarter**" ## 10. "To Date" Patterns - "What's our revenue performance **year to date**?" - "Show me all project completions **quarter to date**" - "What are the expenses **month to date**?" - "How many support tickets were resolved **week to date**?" - "What's the sales pipeline looking like **YTD**?" - "Show me customer acquisition numbers **QTD**" ## 11. Month Patterns - "What were the hiring statistics for **January**?" - "Show me all project milestones from **March 2024**" - "What's been happening **since January**?" - "List all customer onboarding from **Dec**" - "How did our marketing campaigns perform in **August**?" - "What changes have occurred **since March 2024**?" *Supported months: January/Jan, February/Feb, March/Mar, April/Apr, May, June/Jun, July/Jul, August/Aug, September/Sep, October/Oct, November/Nov, December/Dec* ## 12. Date Range Patterns - "Compare our performance **between January and March 2024**" - "Show me all activities from **Jan to Mar 2025**" - "What trends emerged **from February to May 2023**?" - "Analyze data **from January to March**" - "Show me all transactions **2024-01-01 to 2024-12-31**" ## 13. Year Patterns - "What were our major accomplishments in **2024**?" - "Show me all financial reports from **2023**" - "What are the strategic plans for **2025**?" - "How did we perform compared to **2022**?" ## 14. Business Period Patterns - "What were our key metrics for **H1 2024**?" - "Show me the performance summary for **H2 2023**" - "What's the budget allocation for **FY2024**?" - "How did we close **fiscal year 2023**?" - "What are the projections for **FY 2025**?" ## 15. Natural Language Fallback - "What meetings are scheduled for **next Friday**?" - "Show me all tasks completed **two weeks ago**" - "What deliverables are due **January 15th**?" - "List all events from **March 3rd 2024**" - "What's planned **in 3 days**?" - "Show me notes from **last Monday**" Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [AI Chat](/help/ai-chat/) · [Attachments](/help/ai-chat/attachments/) # Models > Pick which model powers a conversation from the AI Chat toolbar, and what each available model is best suited to. Source: https://docs.speakai.co/help/ai-chat/models/ · Markdown: https://docs.speakai.co/help/ai-chat/models/index.md ## Selecting a model for a conversation The chat input toolbar includes a model picker (the sparkle icon with the model name) that lets you choose which AI model powers the current conversation. The available models as of this writing are: - **Claude Sonnet 4.6** (Anthropic), fast and balanced. The default for most workspaces. - **Claude Opus 4.8** (Anthropic), Anthropic's highest-capability model; includes extended thinking. Indicated by a sparkle icon in the picker. - **GPT-5.5** (OpenAI) - **GPT-5.4 mini** (OpenAI) - **Gemini 2.5 Flash** (Google) Models that support extended thinking are marked with a sparkle icon next to their name in the dropdown. The model is fixed for the life of a conversation; to switch models start a new chat. ## Choosing an assistant Next to the model picker is an assistant picker (the person icon). Assistants give the model a persona and set of instructions that shape how it responds. The built-in assistants are: - **General**, default, all-purpose responses - **Researcher**, structured analysis and synthesis - **Marketer**, copy and content-oriented responses - **Sales**, deal and prospect-focused responses - **Recruiter**, hiring and candidate-oriented responses You can also create custom assistants with your own instructions. Click **Create new assistant** at the top of the assistant picker dropdown, or manage your assistants at **Profile** under the **AI Assistant** section. Custom assistants appear under **Your Assistants** in the picker. ## Setting a workspace default model To avoid picking a model every time, set a default at **Profile > AI Assistant**. Under the **Default AI model** section, choose the model you want from the dropdown and the setting saves immediately. Individual chats can still override the default using the model picker in the input toolbar. ## Related articles - [How to create custom AI Chat prompts](https://intercom.help/speak-ai/en/articles/6875284) - [AI Chat FAQ](https://intercom.help/speak-ai/en/articles/6836930) The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [AI Chat](/help/ai-chat/) · [Attachments](/help/ai-chat/attachments/) # Prompts > Write and save your own AI Chat prompts, then reuse them across files and folders so analysis stays consistent across the team. Source: https://docs.speakai.co/help/ai-chat/prompts/ · Markdown: https://docs.speakai.co/help/ai-chat/prompts/index.md We are enabling a feature to write your own custom AI Chat. ## Step 1: Select from the dropdown Select "Custom (Write your own prompt)" which opens up another input box to write your custom prompt. **Step 2:** Write your own prompt maximum of 100 characters. Click on Submit to generate the response for your prompt. **AI Chat Prompts Guide** *** ## 📄 Individual File Level These prompts work when you’re chatting with a single media file. ## Create Clips Cut specific portions of your recording as new clips. | **What you want** | **Example prompt** | | --- | --- | | Create a clip by time | “Create a clip from 0:30 to 1:45” | | Clip a specific range | “Cut the section between 2 minutes and 5 minutes” | | Quick clip | “Make a 30-second clip starting at 1:00” | ## Edit Speaker Names Update the who-said-what in your transcript. | **What you want** | **Example prompt** | | --- | --- | | Rename a speaker | “Change Speaker 1 to John Smith” | | Update multiple speakers | “Rename Speaker A to Sarah and Speaker B to Mike” | | Fix speaker names | “The interviewer is Jane Doe” | ## Edit Transcription Find and replace words or phrases in your transcript. | **What you want** | **Example prompt** | | --- | --- | | Replace a word | “Replace ‘gonna’ with ‘going to’” | | Fix a name | “Change ‘Jon’ to ‘John’ throughout” | | Remove filler words | “Remove all instances of ‘um’” | | Correct terminology | “Replace ‘product X’ with ‘ProductName Pro’” | ## Export Transcript Download your transcript as a document. | **What you want** | **Example prompt** | | --- | --- | | Export as PDF | “Export this transcript as PDF” | | Export as Word | “Download as a Word document” | | Export as text | “Export as TXT file” | | Custom options | “Export as PDF without timestamps” | ***Tip: The AI will ask if you want to include speaker names and timestamps before exporting.*** *** ## 📂 Folder Level These prompts work when you’re chatting at the folder level (with multiple files). ## Search Files Find files based on various criteria. | **What you want** | **Example prompt** | | --- | --- | | Count files | “How many files are in this folder?” | | Find by date | “Show files from last week” | | Find by date range | “Find files from November” | | Find by tags | “Show all files tagged ‘interview’” | | Find by custom field | “Find files where Gender is Male” | | Combined search | “Files from last month tagged ‘sales’” | ## Generate Charts Visualize your data with charts. | **What you want** | **Example prompt** | | --- | --- | | Pie chart | “Create a pie chart of gender distribution” | | Bar chart | “Show a bar chart of files by category” | | Doughnut chart | “Generate a doughnut chart of interview types” | ***Note: Charts work best when your files have custom fields set up (like Gender, Category, etc.)*** ## Export Multiple Files Export several transcripts at once as a single merged document. | **What you want** | **Example prompt** | | --- | --- | | Export folder | “Export all files as PDF” | | Export by date | “Export files from last week as Word” | | Export by tag | “Export files tagged ‘interview’ as PDF” | | Export search results | “Find sales calls and export them as DOCX” | *** ## Combine Actions You can chain multiple requests together: - “Show the gender breakdown and create a pie chart” - “Find all interviews from last month and export as PDF” ## Be Specific The more specific you are, the better results you’ll get: - ✅ “Create a clip from 1:30 to 2:45” - ❌ “Make a clip of the important part” ## Ask Follow-up Questions The AI remembers context, so you can have a conversation: 1. “How many files are tagged ‘interview’?” 1. “Export those as PDF” ## Analyze Meeting Insights By using AI prompts, you can transform raw meeting data into structured information that drives productivity and ensures nothing important is missed. ### How It Works You can use pre-built prompts from the **"Assistant Template"** library or create your own custom prompts to analyze your processed audio or video recordings. The AI will then process your request and provide structured results based on the meeting content. ### Getting Started To access this feature, go to [Profile > Account Preferences > Assistant Template](/help/ai-chat/prompts/) in your dashboard. Create your own template for better results as it will provide context to AI ### Use Cases Here are some effective strategies for using prompts to analyze your meetings: - **Summarization:** "Write a 3-sentence summary of this meeting." - **Action Items:** "List all action terms, who is responsible, and the deadline." - **Sentiment:** "What was the client's biggest concern based on their tone and words?" - **Decisions:** "List all final decisions made in this call." ### Pro Tips Chain prompts to get more detailed insights. For example, ask for a summary first, and then ask follow-up questions based on that summary for more effective analysis. ### Troubleshooting If the AI responds with "Answer not found," it means the specific topic might not have been discussed in the meeting. Try rephrasing your prompt to be broader or more general. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the Assistant Templates in Profile Account Preferences - **Try it out** with a simple test case using one of the suggested prompts. - **Explore the options** to see how you can tailor prompts to your specific needs. ## Create custom AI Chat prompts We are enabling a feature to write your own custom AI Chat. ## Step 1: Select from the dropdown Select "Custom (Write your own prompt)" which opens up another input box to write your custom prompt. **Step 2:** Write your own prompt maximum of 100 characters. Click on Submit to generate the response for your prompt. ## Watch the video tutorial here: ## AI Chat prompts guide **AI Chat Prompts Guide** *** ## 📄 Individual File Level These prompts work when you’re chatting with a single media file. ## Create Clips Cut specific portions of your recording as new clips. | **What you want** | **Example prompt** | | --- | --- | | Create a clip by time | “Create a clip from 0:30 to 1:45” | | Clip a specific range | “Cut the section between 2 minutes and 5 minutes” | | Quick clip | “Make a 30-second clip starting at 1:00” | ## Edit Speaker Names Update the who-said-what in your transcript. | **What you want** | **Example prompt** | | --- | --- | | Rename a speaker | “Change Speaker 1 to John Smith” | | Update multiple speakers | “Rename Speaker A to Sarah and Speaker B to Mike” | | Fix speaker names | “The interviewer is Jane Doe” | ## Edit Transcription Find and replace words or phrases in your transcript. | **What you want** | **Example prompt** | | --- | --- | | Replace a word | “Replace ‘gonna’ with ‘going to’” | | Fix a name | “Change ‘Jon’ to ‘John’ throughout” | | Remove filler words | “Remove all instances of ‘um’” | | Correct terminology | “Replace ‘product X’ with ‘ProductName Pro’” | ## Export Transcript Download your transcript as a document. | **What you want** | **Example prompt** | | --- | --- | | Export as PDF | “Export this transcript as PDF” | | Export as Word | “Download as a Word document” | | Export as text | “Export as TXT file” | | Custom options | “Export as PDF without timestamps” | ***Tip: The AI will ask if you want to include speaker names and timestamps before exporting.*** *** ## 📂 Folder Level These prompts work when you’re chatting at the folder level (with multiple files). ## Search Files Find files based on various criteria. | **What you want** | **Example prompt** | | --- | --- | | Count files | “How many files are in this folder?” | | Find by date | “Show files from last week” | | Find by date range | “Find files from November” | | Find by tags | “Show all files tagged ‘interview’” | | Find by custom field | “Find files where Gender is Male” | | Combined search | “Files from last month tagged ‘sales’” | ## Generate Charts Visualize your data with charts. | **What you want** | **Example prompt** | | --- | --- | | Pie chart | “Create a pie chart of gender distribution” | | Bar chart | “Show a bar chart of files by category” | | Doughnut chart | “Generate a doughnut chart of interview types” | ***Note: Charts work best when your files have custom fields set up (like Gender, Category, etc.)*** ## Export Multiple Files Export several transcripts at once as a single merged document. | **What you want** | **Example prompt** | | --- | --- | | Export folder | “Export all files as PDF” | | Export by date | “Export files from last week as Word” | | Export by tag | “Export files tagged ‘interview’ as PDF” | | Export search results | “Find sales calls and export them as DOCX” | *** ## 💡 Pro Tips ## Combine Actions You can chain multiple requests together: - “Show the gender breakdown and create a pie chart” - “Find all interviews from last month and export as PDF” ## Be Specific The more specific you are, the better results you’ll get: - ✅ “Create a clip from 1:30 to 2:45” - ❌ “Make a clip of the important part” ## Ask Follow-up Questions The AI remembers context, so you can have a conversation: 1. “How many files are tagged ‘interview’?” 1. “Export those as PDF” ## Using AI Chat to analyze meeting recordings ## Analyze Meeting Insights ### Overview Unlock the full potential of your meeting recordings by using specific prompts to extract valuable, actionable insights. This feature helps you quickly identify key takeaways, decisions, and next steps without having to re-watch entire recordings. By using AI prompts, you can transform raw meeting data into structured information that drives productivity and ensures nothing important is missed. ### How It Works You can use pre-built prompts from the **"Assistant Template"** library or create your own custom prompts to analyze your processed audio or video recordings. The AI will then process your request and provide structured results based on the meeting content. ### Getting Started To access this feature, go to [Profile > Account Preferences > Assistant Template](/help/ai-chat/prompts/) in your dashboard. Create your own template for better results as it will provide context to AI ### Use Cases Here are some effective strategies for using prompts to analyze your meetings: - **Summarization:** "Write a 3-sentence summary of this meeting." - **Action Items:** "List all action terms, who is responsible, and the deadline." - **Sentiment:** "What was the client's biggest concern based on their tone and words?" - **Decisions:** "List all final decisions made in this call." ### Pro Tips Chain prompts to get more detailed insights. For example, ask for a summary first, and then ask follow-up questions based on that summary for more effective analysis. ### Troubleshooting If the AI responds with "Answer not found," it means the specific topic might not have been discussed in the meeting. Try rephrasing your prompt to be broader or more general. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the Assistant Templates in Profile Account Preferences - **Try it out** with a simple test case using one of the suggested prompts. - **Explore the options** to see how you can tailor prompts to your specific needs. ## Analyzing book text and character development ## Analyze Book Text for Characters ### Overview Unlock deeper insights into your book's narrative by analyzing character development. This feature helps you understand how your characters evolve throughout the story, from their initial introduction to their final arc. By using advanced AI, you can automatically identify key characters, track their emotional journey, and even gain a clearer picture of their personality based on their dialogue. This allows for a more nuanced and data-driven approach to character analysis. ### How It Works You can upload your book text or individual chapters. The system then uses **Named Entity Recognition (NER)** to identify characters and **Sentiment Analysis** to gauge their emotional state across the narrative. ### Getting Started To access this feature, go to [Dashboard → Upload](https://app.speakai.co/upload) in your dashboard. ### Analysis Steps Follow these steps to analyze your book's characters: - **Entity Extraction:** Navigate to "Explore" → "People". Here you can see which characters appear most frequently, helping you distinguish between Main and Side characters. - **Sentiment Arc:** Filter the analysis by "Character Name" to view the sentiment of sentences that mention them. Observe if their sentiment shifts from Negative (indicating conflict) to Positive (indicating resolution). - **AI Chat:** Ask specific questions like: "Describe the personality traits of \[Character Name\] based on their dialogue." ### Related Prompts/Features - Named Entity Recognition - Sentiment Graphs ### Pro Tips - Use the "Word Cloud" feature for a specific character to quickly identify their most common vocabulary or recurring themes. ### Troubleshooting - **File Size:** If your book is 500+ pages, it's recommended to upload it in chapters to avoid potential token limits. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Explore → People - **Upload your book text** or chapters to begin analysis - **Explore the character insights** to understand their arcs and traits Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. ### Overview Unlock deeper insights into your book's narrative by analyzing character development. This feature helps you understand how your characters evolve throughout the story, from their initial introduction to their final arc. By using advanced AI, you can automatically identify key characters, track their emotional journey, and even gain a clearer picture of their personality based on their dialogue. This allows for a more nuanced and data-driven approach to character analysis. ### How It Works You can upload your book text or individual chapters. The system then uses **Named Entity Recognition (NER)** to identify characters and **Sentiment Analysis** to gauge their emotional state across the narrative. ### Getting Started To access this feature, go to [Dashboard → Upload](https://app.speakai.co/upload) in your dashboard. ### Analysis Steps Follow these steps to analyze your book's characters: - **Entity Extraction:** Navigate to "Explore" → "People". Here you can see which characters appear most frequently, helping you distinguish between Main and Side characters. - **Sentiment Arc:** Filter the analysis by "Character Name" to view the sentiment of sentences that mention them. Observe if their sentiment shifts from Negative (indicating conflict) to Positive (indicating resolution). - **AI Chat:** Ask specific questions like: "Describe the personality traits of \[Character Name\] based on their dialogue." ### Related Prompts/Features - Named Entity Recognition - Sentiment Graphs ### Pro Tips - Use the "Word Cloud" feature for a specific character to quickly identify their most common vocabulary or recurring themes. ### Troubleshooting - **File Size:** If your book is 500+ pages, it's recommended to upload it in chapters to avoid potential token limits. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Explore → People - **Upload your book text** or chapters to begin analysis - **Explore the character insights** to understand their arcs and traits Need help? Contact our support team or check out our other guides. ### Overview Unlock key financial insights from your company's earnings calls and reports with ease. This tool helps you quickly extract crucial data and understand performance trends without manual review. Save time and gain a deeper understanding of your financial health by automating the extraction of metrics like revenue, EBITDA, and future guidance. Identify potential risks and gauge investor sentiment with just a few clicks. ### How It Works Upload your earnings call recordings or PDF reports. Then, use our intelligent prompts to pinpoint and extract specific financial data points and analyze sentiment from Q&A sessions. ### Getting Started To access this feature, go to [Dashboard → Analyze Data](https://app.speakai.co/explore) in your dashboard. ### Workflow Follow these simple steps to analyze your financial documents: - **Upload:** Begin by uploading your quarterly presentation or relevant financial reports. - **Prompts:** Use prompts like "Create a table of all financial figures mentioned, including Revenue, Net Income, and YoY growth" to extract specific data. - **Sentiment:** Analyze the Q&A session segment to gauge investor confidence, categorizing it as Positive or Nervous. - **Search:** Filter for keywords such as "Headwinds" or "Inflation" to quickly identify potential risks discussed. ### Related Prompts/Features - AI Chat - Named Entity Recognition ### Pro Tips - Compare sentiment across different periods (e.g., Q1, Q2, and Q3 folders) to visualize confidence trends throughout the fiscal year. ### Troubleshooting **"Hallucination":** Always verify the extracted numbers against the official SEC filing. AI can sometimes misinterpret spoken numbers (e.g., mistaking "15" for "50"). ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Analytics → Financial Insights - **Try it out** with a simple test case using an earnings call transcript - **Explore the options** to see how this feature fits your financial analysis workflow Need help? Contact our support team or check out our other guides. ### Overview Save your most frequently used AI Chat prompts as templates to save time and ensure consistency. This feature allows you to quickly access and apply pre-defined prompts, streamlining your workflow and making it easier to generate consistent outputs. By creating templates, you eliminate the need to retype complex instructions or remember specific variable formats. This is especially useful for recurring tasks like generating meeting summaries, conducting SWOT analyzes, or drafting specific types of reports. ### How it works You can create "Assistant Templates" within the AI Chat menu. These templates can include dynamic variables such as `#####{{transcript}}` or `#####{{date}}`, which will be automatically populated when the template is used. ### Getting started To access this feature, go to **Account Preferences > Assistant Templates** in your profile. ### Step-by-step guide 1. **Navigate:** Go to **Account Preferences > Assistant Templates**. 1. **Create new:** Click **New Template**. 1. **Define:** Give your template a name (e.g., "SWOT Analysis") and enter your system prompt instructions. 1. **Save:** Click the save button to store your template. 1. **Apply:** The next time you run a prompt on a file, you can select your saved template from the list instead of typing it from scratch. ### Related features - AI Chat - Meeting Assistant - Automations ### Pro tips - Share your custom templates with your team to ensure everyone uses the same standardized format for tasks like meeting summaries. ### Troubleshooting **Template missing:** If you cannot find a template you created, check if it was saved in a different workspace (e.g., Personal vs. Team). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [AI Chat](/help/ai-chat/) · [Attachments](/help/ai-chat/attachments/) # Automations > Chain a trigger, conditions and actions on a visual canvas so work runs on every new recording without anyone starting it. Source: https://docs.speakai.co/help/automations/ · Markdown: https://docs.speakai.co/help/automations/index.md An automation does work you'd otherwise repeat by hand, like scoring a call, extracting fields, or sending a notification, **on its own**: either the instant new media arrives or on a schedule across your library. ![The Automations list: instant AI-prompt automations scoped to a folder](/help/media/automations/automations-index.jpg) Every automation is three decisions: - **[Trigger](/help/automations/triggers/)**: when it runs: each new file in a folder, a schedule, or an [inbound webhook](/help/automations/inbound-webhooks/) from another tool - **[Filter](/help/automations/filters/)**: which media qualifies, so a sales-call scorer never touches your research interviews - **[Action](/help/automations/actions/)**: what happens: run an AI prompt, write fields, send the result somewhere ## Create an automation 1. Open **Automations** in the sidebar and select **New automation**. 2. Choose the trigger. *Instant (run on each new media)* covers most workflows. 3. Scope it with filters: folder, tags, or media properties. 4. Add the action. An AI prompt with [variables](/help/automations/variables/) fills in each file's own transcript and fields. 5. Turn it on. The list shows every automation's run count and status; toggle any of them off without deleting. ## What teams automate first - **Score every sales call** against the same rubric, the moment it lands - **Extract the same 10 fields** from every customer interview - **Route recorder submissions**: transcribe, summarize, and file them by answer Want a second pair of eyes on your first workflow? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll build it with you on your own data. --- Related: [Triggers](/help/automations/triggers/) · [Filters](/help/automations/filters/) · [Actions](/help/automations/actions/) · [Variables](/help/automations/variables/) · [Inbound webhooks](/help/automations/inbound-webhooks/) # Actions > The Speak Upload automation action ingests a file and transcribes it with no manual upload. Pair it with an inbound webhook trigger. Source: https://docs.speakai.co/help/automations/actions/ · Markdown: https://docs.speakai.co/help/automations/actions/index.md The **Speak Upload** action ingests a file into Speak AI and transcribes it automatically inside an automation, with no manual upload. Pair it with the **Catch inbound webhook** trigger to send a file URL from an outside tool and have Speak AI transcribe it hands-free. For how to build and trigger automations, see [How to use automations in Speak AI](/help/automations/). ## When you can add Speak Upload The **Speak Upload** action appears in the step list once a trigger earlier in the automation passes data downstream, such as the **Catch inbound webhook** trigger. Add the webhook trigger first, then add **Speak Upload** as a later step. ## Configure the Speak Upload step Open the step to set these fields: - **Name**: an optional name for the uploaded media. You can use a token here, for example a value from the webhook payload. - **Folder**: the destination folder for the media. This is required. - **Source**: choose **From URL** or **Uploaded file**. To ingest a file URL from the webhook, choose **From URL**. - **File URL**: the link to the file to upload. Use the captured value picker to insert a value from the webhook payload, for example a token like `#{{trigger.payload.}}`. - **Processing language**: the language used to transcribe the file. Pick from the language list. ## Map custom fields Below the main form, the **Map custom fields** section lets you write captured webhook values into your custom fields on the media. The empty state reads **Map a captured webhook value into one of your custom fields**. Use this to carry metadata, such as a contact name or record ID, straight from the request onto the transcribed media. ## How the flow runs end to end 1. An external tool POSTs a request, including a file URL, to your inbound webhook URL. 1. The **Speak Upload** step reads the **File URL** from the payload, uploads the file into the chosen **Folder**, and transcribes it in the selected **Processing language**. 1. Any values set in **Map custom fields** are written onto the new media. You can watch each run land under the trigger’s **Recent deliveries** list, where a successful run shows the **Ran** status. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Automations](/help/automations/) · [Filters](/help/automations/filters/) # Filters > Filters in Speak AI. Source: https://docs.speakai.co/help/automations/filters/ · Markdown: https://docs.speakai.co/help/automations/filters/index.md A filter decides **which media qualifies** before the action runs, so a sales-call scorer never touches your research interviews. ## What you can filter on - **Folder**: the most common scope. The automation only sees media in the folders you pick. - **Tags**: run only on media carrying, or missing, a tag. - **Media properties**: type, language, duration, and other attributes of the file. Filters combine, so "in Sales Calls, tagged `inbound`, longer than 5 minutes" is one filter set. ## Why filters matter more as you grow Without filters, every automation sees everything, and the second team to adopt Speak AI breaks the first team's workflow. Scoped automations are what let one workspace run many workflows side by side. Set the folder filter on day one, even when the workspace is small. Want a hand scoping yours? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Automations](/help/automations/) · [Triggers](/help/automations/triggers/) · [Actions](/help/automations/actions/) # Inbound webhooks > Give any external tool a URL that starts a Speak AI automation. Works with Zapier, Make, GoHighLevel or your own script. Source: https://docs.speakai.co/help/automations/inbound-webhooks/ · Markdown: https://docs.speakai.co/help/automations/inbound-webhooks/index.md An inbound webhook lets any external tool start a Speak AI automation by sending it an HTTP request. Tools like Zapier, GoHighLevel, Make, or your own script can POST data to a unique URL, and your automation runs with that data available to every later step. For the basics of building automations, see [How to use automations in Speak AI](/help/automations/). ## Add the inbound webhook trigger 1. Open the automation canvas and add a trigger step. 1. Choose **Catch inbound webhook** from the trigger list. 1. Save the automation. The **Inbound URL** field generates a unique URL for this automation. Until you save, the field shows **Save this automation to generate the URL**. ## Copy the Inbound URL After saving, the **Inbound URL** field shows a copyable link with a Copy button. It looks like this: `https://api.speakai.co/v1/webhook/in/` - The URL is unique to this one automation. Keep it private. Anyone with the URL can trigger the automation. - Send the data as an HTTP **POST** request to this URL. ## Send a sample request so Speak AI learns the payload Open the test step in the canvas. Under **Send a request to this URL**, the helper text reads **Send a sample request to this URL so Speak AI can learn the payload shape**. Send one real request from your external tool. Speak AI captures the fields from that request so you can reference them in later steps. ## Use payload data in later steps Once a field is captured, reference it with a token in any later step. The token format is: `#{{trigger.payload.}}` For example, if your request sends a contact object with an email, you can use `#{{trigger.payload.contact.email}}` in a later step. Nested fields use a dot path. ## View recent deliveries The trigger shows a **Recent deliveries** list of incoming requests, newest first. Each delivery shows a status badge: - **Captured**: the request was received and its payload was captured as a sample. - **Ran**: the request was accepted and the automation ran. - **Rejected**: the request was refused, for example a failed signature check. - **Error**: another error occurred, shown with its code. If **No deliveries yet** shows, no request has reached the URL. Deliveries are kept for 90 days. ## Limits and optional signature checking - **Rate limit**: up to 60 requests per minute per URL and sending IP address. Extra requests get an HTTP `429` response with the message **Too many requests. Please retry shortly.** - **Optional signature verification**: if a signing secret is set on the webhook, each request must include an `x-speak-timestamp` header and an `x-speak-signature` header in the form `sha256=`. The signature is HMAC-SHA256 over the timestamp and the raw request body, and the timestamp must be within 5 minutes. Failed checks return an HTTP `401`. If no signing secret is set, the unguessable URL is the only control. Next, chain a **Speak Upload** step after this trigger to transcribe a file URL from the payload automatically. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Automations](/help/automations/) · [Actions](/help/automations/actions/) # Triggers > Triggers in Speak AI. Source: https://docs.speakai.co/help/automations/triggers/ · Markdown: https://docs.speakai.co/help/automations/triggers/index.md A trigger decides **when** an automation runs. Pick one per automation. ![The automation builder: choosing a trigger app](/help/media/automations/automations-triggers.jpg) ## The triggers - **Instant**: runs on each new media file as it finishes processing. The default for score-every-call and extract-on-arrival workflows. - **Scheduled**: runs on a cadence across a folder or your library, for digests and batch jobs. - **[Inbound webhook](/help/automations/inbound-webhooks/)**: an external tool starts the run by sending an HTTP request, so Zapier, Make, or your own script can hand work to Speak AI. ## Choosing If the work belongs to one file, use Instant. If it summarizes many files, schedule it. If another system knows when to run, use the webhook. Scope any of them with [filters](/help/automations/filters/) so the automation only touches the media it should. Want a hand designing the first one? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Automations](/help/automations/) · [Filters](/help/automations/filters/) · [Actions](/help/automations/actions/) # Variables > Insert {{token}} placeholders into a chat or automation prompt and Speak AI substitutes real values before the model runs. Source: https://docs.speakai.co/help/automations/variables/ · Markdown: https://docs.speakai.co/help/automations/variables/index.md ## What variables are Variables are `#{{token}}` placeholders you can insert into a chat prompt or an automation prompt. Before the prompt reaches the AI model, Speak AI replaces each token with a real value from the current context, so you can write reusable prompts without hardcoding file names, dates, or user details. ## Available variables - `#{{media_name}}`, the name of the media file(s) the chat is about. For multi-file chats, up to three names are listed and the rest are summarized. - `#{{folder_name}}`, the name of the folder the chat or automation is scoped to. - `#{{created_date}}`, the date the media file was created. For a date range, shows the earliest and latest date. - `#{{current_date}}`, today's date (server time, ISO format). - `#{{media_count}}`, the number of media files in the current chat. - `#{{user_name}}`, the full name of the person running the chat. - `#{{company_name}}`, the name of your workspace. Not all tokens are available in every context. `#{{media_name}}` and `#{{created_date}}` are available in media and automation scopes. `#{{folder_name}}` is available in folder and automation scopes. `#{{current_date}}`, `#{{media_count}}`, `#{{user_name}}`, and `#{{company_name}}` are available everywhere. ## Insert a variable There are two ways to add a variable to your prompt: - **Variable picker button**, click the **+** icon in the chat toolbar to open a menu listing the tokens available for your current scope. Click any token to insert it at your cursor. - **Type `#{{`** directly in the input box. An autocomplete menu appears showing matching tokens. Use the arrow keys to navigate and press **Enter** to insert, or press **Escape** to dismiss. ## Example prompt using variables `Summarize #{{media_name}} recorded on #{{created_date}}. Write the summary in the voice of #{{user_name}} at #{{company_name}}.` ## Related articles - [How to create custom AI Chat prompts](https://intercom.help/speak-ai/en/articles/6875284) - [AI Chat prompts guide](https://intercom.help/speak-ai/en/articles/13122095) The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Automations](/help/automations/) · [Actions](/help/automations/actions/) # Dashboards > Build an analytics surface from widgets, charts, KPI cards, tables and notes on a resizable grid scoped to chosen folders. Source: https://docs.speakai.co/help/dashboards/ · Markdown: https://docs.speakai.co/help/dashboards/index.md Dashboards are build-your-own analytics surfaces over your folders: KPI cards, charts, tables, and notes arranged on a resizable grid. Scope one to a project folder and it stays live as new recordings arrive; [share it](/help/dashboards/sharing/) as a link or embed it where your stakeholders already look. The [widget reference](/help/dashboards/widgets/) covers every block you can place. - **[Dashboard sharing](/help/dashboards/sharing/)** - **[Widgets](/help/dashboards/widgets/)** Want a dashboard built on your own data? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). ## Creating and using Dashboards ## What is a Dashboard? A Dashboard in Speak AI is a build-your-own analytics surface where you compose widgets, charts, KPI cards, tables, and notes, on a resizable grid scoped to your chosen folders. Every widget reads from the same data scope and date range, which you control from a single **Filters** panel. Dashboards are saved and sharable, and they update live as new media is uploaded. **Dashboards are available on Speak AI Enterprise plans.** If you do not see **Dashboards** in your sidebar, contact us to turn it on. Dashboards are separate from the [Explore insights](/help/insights/explore/) feature. Explore lets you run ad-hoc queries across recordings; Dashboards let you save and share a persistent view you configure once and return to repeatedly. ## Creating a dashboard Open **Dashboards** in the sidebar. Click **Create dashboard**. A two-step wizard opens. **Step 1, Start from** - **Blank dashboard**, opens an empty grid seeded with a **Usage overview**, **Uploads over time**, and **Recent media** widget to give you something to work with. - **New from template**, choose one of the curated templates: **Conversation Overview**, **Voice of the Customer**, **Team Productivity**, or **Content Performance**. Each template pre-populates a matched set of widgets. **Step 2, Scope and sharing** - Enter a **Dashboard title**. - Pick one or more **Folders**. At least one folder is required, it defines which media the dashboard shows. The "Shared with" field auto-populates with the groups that already have access to those folders (shown as locked chips). You can optionally add more groups. - Click **Create dashboard**. If you have an onboarding goal set, the empty state may show a **recommended dashboard** pre-scoped to your goal's folder (for example, "Sales Call Insights" or "Voice of the Customer"). Clicking it opens the same wizard at step 2 with the recommended layout already chosen. ## Edit mode and view mode A dashboard opens in **view mode** after you navigate to it from the list. Click **Edit** to enter edit mode. In edit mode you can: - Drag widgets to rearrange them on the grid. - Resize widgets by dragging their bottom-right corner. - Click **Add widget** to open the widget picker dialog and add a new widget. - Click the gear icon on a widget to open **Widget settings** in a side panel. - Remove a widget using its remove button. - Edit the dashboard title in-line. Click **Done** to exit edit mode and return to view mode. Layout changes are saved automatically. Only the dashboard owner and team members with company-wide folder access can edit, share, or delete a dashboard. Other members with access can view it in view mode. ## Adding and arranging widgets In edit mode, click **Add widget**. The **Add a widget** dialog groups every widget type by purpose: - **Overview**, Usage overview, Total files (KPI trend) - **Metrics**, Field metric, Metrics group - **Breakdowns**, Field breakdown, Themes, Sentiment, People breakdown - **Trends**, Uploads over time, Period comparison, Sentiment over time - **Content & team**, Recent media, Team activity You can also type in the search box to filter by name or description. Click a widget card to add it to the dashboard. To configure a widget after adding it, click the gear icon in its top-right corner while in edit mode. The **Widget settings** side panel opens. Every widget lets you change its title and accent color. Depending on the widget type you can also choose a field, a measure, an aggregation method, or a chart type. You can also turn on **Override dashboard filters** to give a single widget its own date range and folder scope. ## Applying filters Click the **Filters** button in the dashboard toolbar to open the Filters panel. Changes stay local until you click **Apply filters**. The panel lets you set: - **Date range**, choose a preset (for example, "Last 30 days"). Toggle **Compare to previous period** to add period-over-period context to every widget that supports it. - **Folder**, narrow the scope to one specific folder within the dashboard's allowed folders. - **Filter files by field**, add one or more custom-field filters. Only files where the chosen field has one of the selected values will appear. Files without the field set are excluded. Click **Add filters** to add a row; remove a row with the trash icon. The active filter count is shown next to the **Filters** button. These settings apply to every widget on the dashboard, including the public share view. ## Exporting widget data to CSV Widgets that display tabular data include an **Export CSV** action in their header menu. The following widget types support CSV export: **Recent media**, **People breakdown**, **Team activity**, **Field breakdown**, **Uploads over time**, and **Period comparison**. Widgets that show only charts or summary numbers (Sentiment, Themes, KPI trend, Note, Usage overview) do not include a CSV export. ## Other dashboard actions From the dashboard list or the three-dot menu on an open dashboard you can **Duplicate** a dashboard to use it as a starting point for a new one. Open **Settings** from the three-dot menu to rename a dashboard, change its icon, or update which groups have access. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). # Dashboard sharing > Publish a dashboard to a public link or embed it in your own site. The dashboard must be scoped to at least one folder first. Source: https://docs.speakai.co/help/dashboards/sharing/ · Markdown: https://docs.speakai.co/help/dashboards/sharing/index.md ## Sharing a dashboard publicly Any dashboard owner (or a team member with company-wide folder access) can generate a public link for a dashboard. The dashboard must be scoped to at least one folder before sharing is allowed. To share a dashboard, open it and click the three-dot menu, then click **Share**. Speak AI creates a shareable link and opens the **Share** dialog. ## The Share dialog The dialog has tabs: **Customization**, **Statistics**, and **Views**. **Customization tab** At the top you will see a type selector and a link field. The type selector defaults to **Branding** (a Speak AI-branded share page). Switch to **iFrame** to get an embed code you can paste into a website. Copy the link or code with the clipboard button, or open the preview in a new tab with the external-link button. Below the link field, the **Require viewers to enter their email** toggle enables a lead-capture gate (see below). Click **Save Changes** to apply any customization edits. ## Lead capture (email gate) Toggle **Require viewers to enter their email** to on. Viewers who open your public link will be asked to enter their email address before the dashboard loads. The toggle saves immediately; you do not need to click **Save Changes** to activate it. Optionally fill in the **Consent text (optional)** field with a short statement viewers must agree to (for example, "I agree to be contacted about this dashboard."). This field also saves on blur. To disable the gate, toggle the switch off. ## Viewing who has seen your shared dashboard Open the **Views** tab in the Share dialog. The tab is available whenever lead capture is in use. It shows the count of people who have viewed the dashboard and lists each viewer with: - Name (if collected) and email address - Location - Last seen time - Total view count If no one has viewed the shared link yet, the panel shows "No viewers yet." Viewers only appear here once they enter their email through the gate. ## Public viewer experience Someone who opens the public link sees the dashboard in view mode, the same data and filters as the saved dashboard, scoped to the folders and date range the owner last applied. They cannot edit the dashboard, change the filters, or see any settings. If lead capture is on, they must enter their email before the dashboard loads. ## Disabling sharing Deleting a shared dashboard disables its public link and removes viewer access. If you want to stop sharing without deleting the dashboard, contact us. ## Sharing within your team Internal sharing is managed through the dashboard's groups, not the public link. During creation (or via **Settings** in the three-dot menu) you assign the dashboard to one or more groups. Members of those groups can open the dashboard from their Dashboards list in view mode. The owner and members with company-wide folder access can also edit it. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Dashboards](/help/dashboards/) · [Widgets](/help/dashboards/widgets/) # Widgets > Every dashboard widget, what it plots, which data it draws on, and the settings each one exposes when you configure it. Source: https://docs.speakai.co/help/dashboards/widgets/ · Markdown: https://docs.speakai.co/help/dashboards/widgets/index.md ## Overview group **Usage overview** A row of summary cards showing key totals across your media: files, words, speakers, and duration. You can choose which cards appear and reorder them in **Widget settings** under **Metrics**. Supports CSV export. **Total files** (KPI trend card) A compact card that shows a single metric (for example, total files, total words, or total duration) with a trend line. In **Widget settings** choose one or more metrics under **Metrics**; the widget shows one tile per metric. When "Compare to previous period" is on in the Filters panel, a delta arrow appears. You can also override the dashboard date range and folder for this widget individually. ## Metrics group **Field metric** A KPI card that aggregates one custom field across all in-scope media. In **Widget settings** choose a **Field** and an **Aggregation**: **Sum**, **Average**, **Minimum**, **Maximum**, or **Count**. Sum, Average, Min, and Max apply to numeric fields; Count works for any field (how many files have it set). A period delta is shown when "Compare to previous period" is on. **Metrics group** Several field metric tiles displayed together as compact scorecards in one widget. In **Widget settings** click **Add metric** to add tiles; each tile needs a **Field** and an **Aggregation**. Useful for placing multiple KPIs side-by-side without taking up a separate widget slot per metric. ## Breakdowns group **Field breakdown** Shows how media files split across the values of a chosen custom field. In **Widget settings** pick the **Field** and a **Measure**, what each bar's value represents: **Media files** (count), **Total words**, **Total duration**, or, for numeric fields, **Average of <field>** or **Sum of <field>**. Supports CSV export. **Themes** Displays the most frequent themes extracted from media in scope. In **Widget settings** choose a **Chart type**: **Word cloud** or **Bar**. **Sentiment** A pie chart of the overall positive, neutral, and negative sentiment split across in-scope media. No configuration required beyond title and accent color. **People breakdown** Groups media by identified person (speaker or contact). Supports CSV export. ## Trends group **Uploads over time** A line chart of upload volume across the selected date range. Useful for spotting spikes or drops in recording activity. Supports CSV export. **Period comparison** Compares key metrics between the current date range and the previous period of the same length. In **Widget settings** choose which metrics to compare under **Metrics** (for example, total files, total words, sentiment). Supports CSV export. **Sentiment over time** A line chart showing how sentiment shifts over the selected date range. No configuration required beyond title and accent color. ## Content and team group **Recent media** A sortable table of recent files in scope. Clicking a row opens that file. Supports CSV export. **Team activity** Shows activity broken down by team member. Supports CSV export. ## Note widget A static text widget with no data connection. Use it to add context, section labels, or instructions to the dashboard. In **Widget settings** fill in an optional **Heading** and the **Text** body. Note widgets do not have a CSV export or a scope override. ## Per-widget settings available on all widgets - **Title**, rename any widget. - **Accent color**, enter a hex value or use the color picker. Leave empty to use the company brand color. Click **Reset to brand** to clear a custom color. - **Override dashboard filters**, give this widget its own **Date range** and **Folder**, independent of the dashboard-level Filters panel. Available on all widgets except the Note widget. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Dashboards](/help/dashboards/) · [Dashboard sharing](/help/dashboards/sharing/) # Exports > Download transcripts as PDF, DOCX, TXT, CSV, SRT, VTT, JSON or HTML, with options to redact names, emails, locations, brands and dates. Source: https://docs.speakai.co/help/exports/ · Markdown: https://docs.speakai.co/help/exports/index.md Everything Speak AI produces can leave: transcripts as PDF, Word, TXT, CSV, SRT, VTT, JSON, or HTML, [insight data](/help/exports/insights/) for your analysis tools, and [word clouds](/help/exports/word-clouds/) for decks. Exports carry speaker labels and timestamps when you want them, and can redact names, emails, locations, brands, and dates on the way out, which is what makes them safe to circulate. - **[Insight data](/help/exports/insights/)** - **[Transcripts](/help/exports/transcripts/)** - **[Word clouds](/help/exports/word-clouds/)** ## Export formats: download transcripts as PDF, Word, SRT, and more ## Available export formats ### Documents - **PDF** - Formatted document, great for sharing and printing - **DOCX (Word)** - Editable document for Microsoft Word or Google Docs - **TXT** - Plain text, universal compatibility - **HTML** - Web-ready format for embedding on websites ### Subtitles and captions - **SRT** - SubRip subtitle format, widely supported by video players and YouTube - **VTT (WebVTT)** - Web Video Text Tracks, used for HTML5 video captions ### Data formats - **JSON** - Structured data for developers and integrations - **CSV** - Spreadsheet-compatible for data analysis ### Video editing - **Premiere Pro XML** - Import transcript as markers in Adobe Premiere Pro ## Export 1. Open your transcribed media file 1. Click the **Export** button (or use AI Chat: "Export this transcript as PDF") 1. Choose your format 1. Select options (speaker names, timestamps, etc.) 1. Download the file ## Export options When exporting, you can customize: - **Include speaker names:** Show who said what - **Include timestamps:** Add time markers throughout - **Include insights:** Embed keyword and sentiment visualizations ## PII redaction For sensitive content, you can redact personally identifiable information before exporting: - **People names** - Replace with \[PERSON\] - **Locations** - Replace with \[LOCATION\] - **Email addresses** - Replace with \[EMAIL\] - **Brand/company names** - Replace with \[ORGANIZATION\] - **Dates** - Replace with \[DATE\] This is especially useful for research ethics compliance, legal discovery, and data privacy requirements. ## Bulk export You can export multiple files at once: 1. Go to a folder and select the files you want to export 1. Click **Export** in the top bar 1. Choose your format 1. Files will be merged into a single document or downloaded as a batch You can also export via AI Chat: "Export files from last week as PDF" or "Find all interviews and export as DOCX". Some export formats are available as premium features. Check your plan details at [speakai.co/pricing](https://speakai.co/pricing/). ## Convert WebVTT to Plain Text We created a tool for you to convert your Transcript in WebVTT format to Plain Text to analyze text data on Speak. The format required to convert into Plain Text successfully is below: ```text WEBVTT 1 00:01:14.510 --> 00:01:17.380 Zoom 2 Curion: Hello, This is a sample Zoom file response. 2 00:01:17.510 --> 00:01:19.759 Zoom 2 Curion: Please ensure you follow the Zoom export 3 00:01:20.010 --> 00:01:21.140 Zoom 2 Curion: WebVTT format to generate the only text output. ``` Please ensure the format follows the same otherwise, it will break the output. The output will look like as below: ```text Hello, This is a sample Zoom file response. Please ensure you follow the Zoom export WebVTT format to generate the only text output. ``` Need a compliance-ready export workflow? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). # Insight data > Move insight data into Tableau, Salesforce or a spreadsheet on demand, or on a schedule through a Speak AI automation. Source: https://docs.speakai.co/help/exports/insights/ · Markdown: https://docs.speakai.co/help/exports/insights/index.md ## Exporting Your Data ### Overview Easily move your valuable insights from Speak AI to your favorite tools. Whether you need to analyze data in Tableau, update your Salesforce records, or crunch numbers in Excel, we've got you covered. This feature allows you to use your Speak AI data in a way that best suits your workflow, enabling deeper analysis and integration with your existing business processes. ### How It Works You have two primary methods for getting your data out of Speak AI: - **Manual Export:** Perfect for quick, one-off data dumps. - **Automated Integration:** For real-time data transfer and smooth workflow automation. ### Getting Started To access this feature, go to **Dashboard Settings → Export Data** in your dashboard. ### Methods Choose the method that best fits your needs: - **Manual Export:** Navigate to **Dashboard Settings → "Export Data"**. This will retrieve all your transcripts, sentiment scores, and entities in a ZIP or CSV format. - **Zapier:** Connect Speak AI to hundreds of other apps. Use "New Analysis" as a trigger and actions like "Create Row in Google Sheets" or "Update HubSpot Contact" as your action. - **API:** For developers, you can programmatically pull JSON data by polling the `GET /media/{id}/insight` endpoint. ### Related Prompts/Features - Integrations - API Access ### Pro Tips The API offers the most detailed data, including word-level timestamps. CSV exports may aggregate this information. ### Troubleshooting **Zapier Error:** If you encounter a Zapier error, check if your Speak AI API Key has been regenerated, as this can break the connection. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to **Dashboard Settings → Export Data**. - **Try a manual export** to see your data in CSV format. - **Explore Zapier or the API** for automated data transfer. ## Exporting insights data and automating transfers ## Exporting Your Data ### Overview Easily move your valuable insights from Speak AI to your favorite tools. Whether you need to analyze data in Tableau, update your Salesforce records, or crunch numbers in Excel, we've got you covered. This feature allows you to use your Speak AI data in a way that best suits your workflow, enabling deeper analysis and integration with your existing business processes. ### How It Works You have two primary methods for getting your data out of Speak AI: - **Manual Export:** Perfect for quick, one-off data dumps. - **Automated Integration:** For real-time data transfer and smooth workflow automation. ### Getting Started To access this feature, go to **Dashboard Settings → Export Data** in your dashboard. ### Methods Choose the method that best fits your needs: - **Manual Export:** Navigate to **Dashboard Settings → "Export Data"**. This will retrieve all your transcripts, sentiment scores, and entities in a ZIP or CSV format. - **Zapier:** Connect Speak AI to hundreds of other apps. Use "New Analysis" as a trigger and actions like "Create Row in Google Sheets" or "Update HubSpot Contact" as your action. - **API:** For developers, you can programmatically pull JSON data by polling the `GET /media/{id}/insight` endpoint. ### Related Prompts/Features - Integrations - API Access ### Pro Tips The API offers the most detailed data, including word-level timestamps. CSV exports may aggregate this information. ### Troubleshooting **Zapier Error:** If you encounter a Zapier error, check if your Speak AI API Key has been regenerated, as this can break the connection. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to **Dashboard Settings → Export Data**. - **Try a manual export** to see your data in CSV format. - **Explore Zapier or the API** for automated data transfer. Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. ## Overview When you export your media data, you can automatically include valuable insights like sentiments, brands, and keywords. This helps you quickly analyze your media content without extra steps. By having this information directly in your CSV export, you can easily review and process your media data for reporting, analysis, or further action. ## How It Works To include insight categories in your CSV export, ensure your media files have been analyzed and insights have been generated. Once analysis is complete, simply click the **Export** button and select **CSV**. The resulting CSV file will automatically include columns such as `Insight Category` and `Insight`. For each detected insight, a new row will be created, showing its corresponding category (e.g., "Brands", "Locations", or your custom category names). There's no need to select a manual checkbox; the insights are included by default if they exist. ## Getting Started To access this feature, go to **Export** in your Folder or Media View Page. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the Export section. - Ensure your media files have been analyzed to generate insights. - **Export your data to CSV** to see the included insight categories. Need help? Contact our support team or check out our other guides. ## Overview Exporting your media details allows you to gain deeper insights into the keywords associated with your content. This helps you understand what topics are being discussed and how they are represented in your media files. By accessing this data, you can refine your content strategy, improve SEO, and better analyze the performance of your media assets. ## How It Works There are two main ways to export keyword data, depending on the level of detail you require. ## Getting Started To access this feature, go to Media Settings → Export Options in your dashboard. ## Comprehensive Export For a full breakdown of every keyword occurrence: 1. Choose **CSV Export** instead of a simple summary. 1. Ensure your media has been processed for insights. The resulting CSV will have rows for each keyword detected, with columns for `Insight Type` (Keyword) and the specific `Insight` (the keyword itself). ## Standard Export When you select **Export Media Details**, the system generates a summary. Basic keywords are often aggregated. ## Additional Keyword Options If you need a list of just the keywords without timestamps, you can use the **Word Cloud** export or copy the list from the Insights tab. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Media Settings → Export Options. - **Choose your desired export type** (CSV for comprehensive, or standard export for a summary). - **Analyze the exported data** to understand your media's keyword performance. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Exports](/help/exports/) · [Transcripts](/help/exports/transcripts/) # Transcripts > Export one recording or a whole selection, choosing format, whether to include insights, and how speakers and timestamps appear. Source: https://docs.speakai.co/help/exports/transcripts/ · Markdown: https://docs.speakai.co/help/exports/transcripts/index.md When viewing an individual file, you are able to export your media into multiple file types. Select "Export" in the tab right of the "Sentiment" tab. A modal will pop up that enables you to customize your export. You can choose to export your transcripts and/or reports as: **Free File Types** - TXT - SRT - Original File **Premium File Types (Enabled With Premium Export Addon)** - Word Doc - PDF - TXT - SRT - VTT - CSV - JSON **Customization Options** Additionally, you can select if you want to include: - Speaker Names - Timestamps - Insight Visualizations - Redacted Personally-Identifiable Information (PII) Once you are happy with your selection, hit "Export". It may take a moment to render all the final exports. Wait until the circle stops spinning and you will see a successful notification. The file should start downloading through your browser immediately. You now have your exported file. **Download Source File** If you are looking to export your audio or video file, you can select "Source File". If you have any problems along the way please always feel encouraged to send us a message. **Bulk Export** If you are paying for access to the "Bulk Edit" functionality within Speak, you are able to download all your files at once. Please refer to the [step-by-step guide](/help/exports/transcripts/). Visit the folder where the media files that you want to export are. You can see all your folders by visiting this page: [https://app.speakai.co/folder](https://app.speakai.co/folder) Once you are in the folder, select the media files that you want to export. You can select the files individually: Additionally, choose to use the top square checkbox on the first left column to select all files within the page view. Pro-tip: at the bottom of the page, you can increase the "Items per page" to 100. Once you've selected all the files you want to export, you can hit "Export" in the top right corner. A modal will pop up that enables you to customize your export. You can choose to export your transcripts and/or reports as: - Word Doc - PDF - TXT - SRT - VTT - CSV - JSON Additionally, you can select if you want to include: - Speaker Names - Timestamps - Insight Visualizations - Redacted Personally-Identifiable Information (PII) Once you are happy with your selection, hit "Export All". Depending on how many files you have selected, it may take a moment to render all the final exports. Wait until the circle stops spinning and you will see a successful notification. The files should start downloading through your browser immediately. You now have your exported files. If you have any problems along the way please always feel encouraged to send us a message. ## Export transcripts and reports When viewing an individual file, you are able to export your media into multiple file types. Select "Export" in the tab right of the "Sentiment" tab. A modal will pop up that enables you to customize your export. You can choose to export your transcripts and/or reports as: **Free File Types** - TXT - SRT - Original File **Premium File Types (Enabled With Premium Export Addon)** - Word Doc - PDF - TXT - SRT - VTT - CSV - JSON **Customization Options** Additionally, you can select if you want to include: - Speaker Names - Timestamps - Insight Visualizations - Redacted Personally-Identifiable Information (PII) Once you are happy with your selection, hit "Export". It may take a moment to render all the final exports. Wait until the circle stops spinning and you will see a successful notification. The file should start downloading through your browser immediately. You now have your exported file. **Download Source File** If you are looking to export your audio or video file, you can select "Source File". If you have any problems along the way please always feel encouraged to send us a message. **Bulk Export** If you are paying for access to the "Bulk Edit" functionality within Speak, you are able to download all your files at once. Please refer to the [step-by-step guide](/help/exports/transcripts/). ## Bulk export transcripts and reports Visit the folder where the media files that you want to export are. You can see all your folders by visiting this page: [https://app.speakai.co/folder](https://app.speakai.co/folder) Once you are in the folder, select the media files that you want to export. You can select the files individually: Additionally, choose to use the top square checkbox on the first left column to select all files within the page view. Pro-tip: at the bottom of the page, you can increase the "Items per page" to 100. Once you've selected all the files you want to export, you can hit "Export" in the top right corner. A modal will pop up that enables you to customize your export. You can choose to export your transcripts and/or reports as: - Word Doc - PDF - TXT - SRT - VTT - CSV - JSON Additionally, you can select if you want to include: - Speaker Names - Timestamps - Insight Visualizations - Redacted Personally-Identifiable Information (PII) Once you are happy with your selection, hit "Export All". Depending on how many files you have selected, it may take a moment to render all the final exports. Wait until the circle stops spinning and you will see a successful notification. The files should start downloading through your browser immediately. You now have your exported files. If you have any problems along the way please always feel encouraged to send us a message. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Exports](/help/exports/) · [Insight data](/help/exports/insights/) # Word clouds > Build a word cloud from any recording or folder, then download it as an image for reports, decks and client presentations. Source: https://docs.speakai.co/help/exports/word-clouds/ · Markdown: https://docs.speakai.co/help/exports/word-clouds/index.md Yes, you can.

We're big fans of visualizing all the language data we produce. Speak lets you generate word clouds: \1) Based on individual files and recordings. \2) Based on multiple files in your account. Go to the Explore Insights page from the left-side navigation menu. These word clouds are also interactive, allowing you to navigate to any topics of interest across your entire media library. Please select the number of words you want to display on the wordcloud. You can download all the original data we use to generate the Wordcloud as a CSV file or the image as a PNG file. ## Can I generate and download word clouds from my voice recordings Yes, you can.

We're big fans of visualizing all the language data we produce. Speak lets you generate word clouds: \1) Based on individual files and recordings. \2) Based on multiple files in your account. Go to the Explore Insights page from the left-side navigation menu. These word clouds are also interactive, allowing you to navigate to any topics of interest across your entire media library. Please select the number of words you want to display on the wordcloud. You can download all the original data we use to generate the Wordcloud as a CSV file or the image as a PNG file. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Exports](/help/exports/) · [Insight data](/help/exports/insights/) # Insights > What Speak AI extracts from every recording, what each insight type means, and how to read them without opening the transcript. Source: https://docs.speakai.co/help/insights/ · Markdown: https://docs.speakai.co/help/insights/index.md Every recording is analyzed the moment it's transcribed: keywords, sentiment, entities, and topics extracted automatically, no prompt required. Read one file's insights on its page, tune the [categories](/help/insights/categories/) to your domain, set [keyword alerts](/help/insights/keywords/) for the phrases that matter, define [AI fields](/help/insights/fields/) for structured extraction, and use [Explore](/help/insights/explore/) to compare it all across your library, where [themes](/help/insights/themes/) show what recurs and what's changing. - **[AI fields](/help/insights/fields/)** - **[Categories](/help/insights/categories/)** - **[Explore](/help/insights/explore/)** - **[Keywords](/help/insights/keywords/)** - **[Sentiment scores](/help/insights/sentiment/)** - **[Themes](/help/insights/themes/)** ## Understanding AI insights: keywords, sentiment, and more ## What are insights? Every time Speak AI transcribes and analyzes your media, it automatically extracts a rich set of insights. These help you understand your content without reading the entire transcript. ## Insight types ### Keywords and topics The most frequently mentioned terms and topics in your recording. These help you quickly understand what the conversation was about. ### Sentiment analysis Speak analyzes the emotional tone of your content at both the document level and individual sentence level: - **Positive:** Optimistic, supportive, or enthusiastic language - **Negative:** Critical, frustrated, or concerning language - **Neutral:** Factual, informational statements - **Compound score:** An overall sentiment score from -1 (most negative) to +1 (most positive) ### Named entities Speak identifies and categorizes specific entities mentioned in your content: - **People:** Names of individuals mentioned - **Organizations:** Companies, institutions, brands - **Locations:** Cities, countries, addresses - **Products:** Product and brand names - **Dates and times:** Specific dates, deadlines, time references - **Money:** Dollar amounts, pricing, financial figures ### Speaker analytics For recordings with multiple speakers, Speak tracks: - **Speaking time:** How long each person spoke - **Word count:** Total words per speaker - **Words per minute:** Speaking pace for each person - **Speaking percentage:** Share of the conversation ### Categories Speak automatically categorizes your content into relevant topics. You can also create custom categories to match your specific needs (e.g., "Product Feedback", "Action Items", "Customer Complaints"). ## Viewing insights Insights appear in multiple places: - **Media detail page:** Full insight breakdown for each file - **Folder statistics:** Aggregate insights across all files in a folder - **Explore page:** Cross-media analytics and trend analysis - **AI Chat:** Ask questions about insights ("What were the most negative moments?") ## Custom categories Create your own insight categories: 1. Go to your [account settings](https://app.speakai.co/profile/usage) 1. Find **Custom Categories** 1. Add your categories and define what they mean 1. New media will be analyzed against your custom categories You can also generate category suggestions using AI based on your existing content. For advanced filtering across insights, check out our [Advanced Data Filtering guide](/help/insights/explore/). ## AI features for analyzing qualitative data ## AI Insights Suite ### Overview Speak AI provides powerful Natural Language Processing (NLP) tools designed to transform your vast amounts of unstructured data into clear, actionable insights. Stop drowning in raw text and start understanding what truly matters. These features help you quickly identify key information, understand customer sentiment, and discover emerging trends without manual analysis. Unlock the hidden value within your datasets to make better, data-driven decisions. ### How It Works The AI Insights Suite offers a range of tools to analyze your data: - **Named Entity Recognition (NER):** Automatically finds and labels important entities like company names, people, locations, and products within your text. - **Sentiment Analysis:** Assigns a sentiment score (from Positive to Negative) to each sentence, allowing you to track customer feelings and satisfaction trends across thousands of interactions. - **AI Chat:** This advanced generative AI tool lets you ask specific questions about your data, such as "What are the top 3 feature requests?". The AI will read through all your transcripts to provide a consolidated, summarized answer. - **Word Clouds:** Visually represents the most frequently used keywords, making it easy to spot and understand emerging themes at a glance. ### Getting Started To access these features, go to **Speak AI Tools** in your dashboard. ### Use Cases You can chain these features together for deeper analysis. For example, use NER to filter your data for mentions of a specific competitor, and then apply Sentiment Analysis to understand how customers feel about them. ### Related Prompts/Features - AI Chat - Folder Analytics ### Next Steps Ready to unlock the power of your data? Here's what to do next: - **Login to your account** and navigate to the **Speak AI Tools** section. - **Upload your data** if you haven't already. - **Experiment with the features** like NER and Sentiment Analysis to see what insights you can uncover. - **Try a AI Chat** to get quick answers to your most pressing questions. Need help? Contact our support team or check out our other guides. Analyzing a real dataset? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). # Categories > Every analysis extracts keywords, topics, sentiment, entities, brands and emotions by default, with no configuration required. Source: https://docs.speakai.co/help/insights/categories/ · Markdown: https://docs.speakai.co/help/insights/categories/index.md ## Overview Every time Speak AI analyzes your media, it automatically extracts insights across these default categories. These work out of the box with no configuration needed. ## Default categories 1. **Keywords** - The most important terms and phrases 1. **Topics** - Main subject areas discussed (audio/video only) 1. **People** - Names of individuals mentioned 1. **Organizations** - Companies, institutions, and brands 1. **Products** - Product and brand names referenced 1. **Geopolitical Entities** - Countries, cities, regions 1. **Locations** - Physical places and addresses 1. **Events** - Named events, conferences, meetings 1. **Time Indicators** - Time references and scheduling mentions 1. **Dates** - Specific dates mentioned 1. **Money** - Dollar amounts, prices, financial figures 1. **Percentages** - Percentage values mentioned 1. **Ordinals** - Ordered items (first, second, etc.) 1. **Artifacts** - Objects, tools, and specific items 1. **Natural Phenomena** - Weather, environmental references ## Customizing categories You can add your own keywords to any default category to ensure specific terms are always captured: 1. Go to **Default Categories** in the sidebar (under Insights Customizations) 1. Click **Edit** 1. Add keywords to the "Include" field for any category 1. Press Enter after each keyword 1. Click **Save** ## Custom categories Beyond the defaults, you can create entirely new categories tailored to your needs. For example: "Product Feedback", "Action Items", "Customer Complaints", or any topic relevant to your work. See our [AI Insights guide](/help/insights/) for details. ## Where to see your insights - **Media detail page:** Insights for each individual file - **Explore page:** Aggregate insights across all your files - **Folder statistics:** Insights for all files in a specific folder - **Export:** Include insights in CSV, PDF, and other export formats In order to add your own unique keywords to the default categories, first navigate to the "Default categories" page on the left-hand side bar under the "Insights Customizations" subheading. To begin editing, click on the edit button in the top right-hand corner. You can then add which keyword you would like included within future analysis to any of the available categories by typing into the "Include" section of the available categories. Hit your "Enter" button in order to complete your entry. Once you have finished inputting your desired keywords, click on the "Save" button in the top right-hand corner to save all of your work. ## Default Insight Categories in Speak AI ## Overview Every time Speak AI analyzes your media, it automatically extracts insights across these default categories. These work out of the box with no configuration needed. ## Default categories 1. **Keywords** - The most important terms and phrases 1. **Topics** - Main subject areas discussed (audio/video only) 1. **People** - Names of individuals mentioned 1. **Organizations** - Companies, institutions, and brands 1. **Products** - Product and brand names referenced 1. **Geopolitical Entities** - Countries, cities, regions 1. **Locations** - Physical places and addresses 1. **Events** - Named events, conferences, meetings 1. **Time Indicators** - Time references and scheduling mentions 1. **Dates** - Specific dates mentioned 1. **Money** - Dollar amounts, prices, financial figures 1. **Percentages** - Percentage values mentioned 1. **Ordinals** - Ordered items (first, second, etc.) 1. **Artifacts** - Objects, tools, and specific items 1. **Natural Phenomena** - Weather, environmental references ## Customizing categories You can add your own keywords to any default category to ensure specific terms are always captured: 1. Go to **Default Categories** in the sidebar (under Insights Customizations) 1. Click **Edit** 1. Add keywords to the "Include" field for any category 1. Press Enter after each keyword 1. Click **Save** ## Custom categories Beyond the defaults, you can create entirely new categories tailored to your needs. For example: "Product Feedback", "Action Items", "Customer Complaints", or any topic relevant to your work. See our [AI Insights guide](/help/insights/) for details. ## Where to see your insights - **Media detail page:** Insights for each individual file - **Explore page:** Aggregate insights across all your files - **Folder statistics:** Insights for all files in a specific folder - **Export:** Include insights in CSV, PDF, and other export formats Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Insights](/help/insights/) · [Explore](/help/insights/explore/) # Explore > The Explore page compares insights across your whole library instead of one file, surfacing patterns, trends and shifts over time. Source: https://docs.speakai.co/help/insights/explore/ · Markdown: https://docs.speakai.co/help/insights/explore/index.md ## What is the Explore page? The [Explore](https://app.speakai.co/explore) page lets you analyze insights across all your recordings in one place. Instead of looking at individual files, you can see patterns, trends, and comparisons across your entire library or specific folders. ## What you can analyze - **Keywords:** Which terms appear most frequently across recordings - **Sentiment:** How sentiment changes over time or across different groups - **Topics:** Common themes emerging from your content - **Speakers:** Compare speaking patterns across multiple recordings - **Entities:** People, organizations, locations mentioned across files ## Filtering your data Use advanced filters to focus your analysis: - **Folders:** Analyze specific project folders - **Date range:** Look at trends over time - **Speakers:** Focus on specific speakers - **Sentiment:** Filter by positive, negative, or neutral - **Tags:** Group by custom tags - **Categories:** Filter by insight categories You can create AND/OR conditions across multiple filters and save your filter configurations for reuse. ## Visualizations The Explore page displays your data as charts and tables. You can also generate custom visualizations through AI Chat: - "Create a pie chart of sentiment distribution" - "Show a bar chart of top keywords this month" - "Generate a doughnut chart of speaker distribution" ## Use cases - **Research:** Identify themes across 50+ interview transcripts - **Customer success:** Track sentiment trends across support calls - **Sales:** Find the most common objections across all sales calls - **Content:** Discover which topics come up most in your podcast episodes For more on filtering, see our [Advanced Data Filtering guide](/help/insights/explore/). Advanced data filtering allows you to create your condition to visualize your data on the Explore Insights page. You can create filters with multiple AND / OR conditions on all attributes to include and exclude data for highly relevant insights. . These filters currently include the following: - Speakers - Sentiment - Tags - Categories Insights - Folders - Time Once created, you can easily save your filters from revealing what matters most to you repeatedly. ### Overview Ever wondered if your support calls tend to increase on Mondays, or if customer sentiment is generally better on Fridays? This feature allows you to uncover these kinds of recurring patterns in your data. By analyzing trends based on the day of the week, you can gain valuable insights into your customer interactions and operational patterns. This helps you to better understand your workload, identify potential issues, and optimize your resources. ### How It Works You can use the Date Range picker in the Dashboard or Explore view to analyze data for specific days. While you can't directly select "Every Monday," you can select individual dates. For more advanced analysis of day-of-week trends, you can export your data as a CSV file and use spreadsheet software like Excel. ### Getting Started To access this feature, go to **Dashboard** or **Analyze Data** in your Intercom account. ### Step-by-Step Guide \1. **Select Date:** Click the calendar icon in the top right of your Dashboard or Explore view. Select a specific single day (e.g., "Oct 13 to Oct 13"). \2. **Observe:** The dashboard charts will update to show only that day's volume, sentiment, and keywords. \3. **Advanced Analysis:** For recurring trends (e.g., "All Mondays"), go to **Explore**, select all files, and click **Export CSV**. Open the CSV in Excel and use a formula like `=WEEKDAY(Date)` to group your data by day of the week. ### Related Prompts/Features - Data Export - Date Filtering ### Pro Tips Creating a "Monday" tag and auto-tagging files based on their creation date (via Zapier) is a powerful automation workaround for identifying specific days. ### Troubleshooting **Timezone Issues:** Ensure your account timezone matches your local time. This way, when you select "Monday," it accurately reflects your local Monday. ### Next Steps Ready to uncover your day-of-week trends? Here's what to do next: - **Login to your account** and navigate to the **Dashboard** or **Explore** view. - **Try it out** by selecting a specific date to see how the data changes. - **Export your data** to Excel and use the `WEEKDAY` formula for more in-depth analysis of recurring trends. Need help? Contact our support team or check out our other guides. ### Overview Speak AI helps you unlock valuable insights from your audio, video, and text data. Instead of sifting through individual files, you can analyze your entire library at once to discover trends and patterns you might otherwise miss. This feature is perfect for understanding common themes, sentiment, and key entities across a large collection of qualitative data, saving you significant time and effort. ### How It Works You can upload your data, organize it into folders, and then use the Folder Analysis or Explore views to see aggregated insights. This includes word clouds of frequently used terms, sentiment trends, and extracted entities like brands and people. Additionally, you can use AI Chat to ask specific questions about your entire dataset and get structured answers for each file. ### Getting Started To access this feature, go to **Data Upload** or **Folder Management** in your dashboard. ### Prerequisites - Data files (MP3, MP4, CSV, TXT) - Sufficient transcription hours balance ### Step-By-Step Guide 1. **Bulk Upload:** Upload all your files or import a CSV of text responses. 1. **Organize:** Move these files into a single Folder. 1. **Aggregate Insights:** Open the Folder and click the **Insights** tab (or 'View Analytics'). 1. **Explore:** * **Word Cloud:** See frequently used terms. * **Sentiment:** View positive/negative balance across the dataset. * **Entities:** See top mentions of Brands, People, and Locations. 1. **AI Chat:** Select all files and run a specific AI Chat (e.g., "What is the main pain point?") to get a structured answer for every single file. ### Troubleshooting **Slow Loading:** Large folder analytics may take a moment to generate. Please be patient. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the data upload or folder management section. - **Upload your data** and organize it into a folder. - **Explore the insights** to uncover trends and patterns in your qualitative data. - **Try out AI Chat** to get specific answers across your entire dataset. Need help? Contact our support team or check out our other guides. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Insights](/help/insights/) · [Categories](/help/insights/categories/) # AI fields > The four properties that control how AI extracts and formats data from media in Fields and Automations, and when to use each. Source: https://docs.speakai.co/help/insights/fields/ · Markdown: https://docs.speakai.co/help/insights/fields/index.md This documentation explains the recently added field properties that control how AI extracts and processes data from media content in Fields and Automations. ## Overview This article details four key field properties that enhance AI data extraction from media content within Intercom's Fields and Automations. These properties, Prompt, Allowed Values, Other Values, and Not Applicable Values, work together to provide granular control over how the AI identifies, extracts, and standardizes information. ## PROMPT The Prompt field provides custom instructions to the AI assistant for extracting specific information from media content. It serves as the primary directive that guides the AI on what data to identify and extract from audio, video, or text content. ## How It Works When you create a field, you can define a prompt that describes what information should be extracted. This prompt is then used in automations when the field is selected for mapping. The prompt auto-populates from the field definition when you select a field in an automation, ensuring consistency across your workflows. ## Important Notes - Changes to the prompt in a field definition will NOT automatically update existing automations that use that field - The prompt works in conjunction with other field properties (allowedValues, otherValues, notApplicableValues) to provide comprehensive extraction rules - Prompts should be clear, specific, and describe the exact type of information you want extracted ## Use Cases - Extract specific entities: "Identify all company names mentioned in the conversation" - Classify content: "Determine the sentiment of the speaker (positive, negative, neutral)" - Extract structured data: "Find all dates and times mentioned in the transcript" - Identify topics: "List all product names or services discussed" ## Best Practices - Be specific about what you want extracted rather than using vague descriptions - Include context about the format or type of data expected - Reference related field properties in your prompt when applicable - Test prompts with sample content to ensure they produce desired results ## ALLOWED VALUES Allowed Values defines a list of primary or preferred values that the AI should extract from content. This field helps standardize extracted data by constraining the AI to specific predefined options. ## How It Works Allowed Values is an array of strings that represents the expected or preferred values for a field. When configured, the AI will attempt to match content against these values. The behavior depends on two key settings: ## 1. Selection Mode (Single vs Multiple) - Single Mode: The AI must select only ONE value that best matches the content - Multiple Mode: The AI can select one or more values that apply to the content ## 2. Other Values Setting - When Other Values is disabled: The AI MUST ONLY use values from the allowedValues list (strict mode) - When Other Values is enabled: The allowedValues become "preferred values" and the AI MAY include other values if they're more accurate ## Output Format - Single Mode: Returns a single value (e.g., "value1") - Multiple Mode: Returns comma-separated values (e.g., "value1, value2, value3") ## Use Cases - Standardized categories: \["Sales", "Support", "Marketing", "Product"\] for department classification - Status values: \["Active", "Pending", "Completed", "Cancelled"\] for workflow status - Priority levels: \["Low", "Medium", "High", "Urgent"\] for task prioritization - Product types: \["Software", "Hardware", "Service", "Consulting"\] for product categorization ## Best Practices - Use clear, distinct values that are unlikely to overlap in meaning - Order values by priority or frequency if applicable - Keep the list manageable (typically 5-15 values work best) - Use consistent naming conventions across similar fields - Consider how values will be used in filtering, reporting, or analytics ## Relationship to Other Fields - Works with allowedValuesMode to control single vs multiple selection - Interacts with otherValues to determine strictness of value matching - Uses notApplicableValues as fallback when no matches are found ## OTHER VALUES The Other Values setting is a boolean flag that controls whether the AI can accept values outside the allowedValues list when extracting data from content. ## How It Works When Other Values is enabled (true): - The allowedValues list becomes a "preferred values" list - The AI can identify and include values not in the allowedValues list if they are more accurate or relevant - This provides flexibility for handling unexpected or alternative terminology - Example: If allowedValues is \["Sales", "Support"\], the AI might also extract "Customer Success" if it appears in content When Other Values is disabled (false): - The allowedValues list becomes strict and mandatory - The AI MUST ONLY respond with values from the allowedValues list - No values outside the list will be accepted - This ensures complete data standardization ## Use Cases - Enable when you want to discover new categories or values that might appear in content - Enable when dealing with content that may use synonyms or alternative terminology - Disable when you need strict data standardization for compliance or reporting - Disable when working with predefined categories that must not be expanded ## Best Practices - Enable Other Values during initial data collection to discover common values - Disable Other Values once you've identified all common values and added them to allowedValues - Consider your data quality requirements: strict standardization vs flexible discovery - Review extracted "other" values periodically to identify candidates for the allowedValues list ## Relationship to Other Fields - Only meaningful when allowedValues is configured - Works in conjunction with allowedValuesMode (applies to both single and multiple modes) - When disabled, ensures strict adherence to allowedValues list ## NOT APPLICABLE VALUES The Not Applicable Values field specifies what the AI should return when no relevant values are found in the content being analyzed. This provides a consistent fallback response for cases where extraction cannot identify matching data. ## How It Works When the AI analyzes content and cannot find any values that match the allowedValues (or any relevant values if allowedValues is not set), it will return the value specified in notApplicableValues. ## Default Behavior - If notApplicableValues is not specified or empty, the system defaults to "N/A" - The AI is instructed to return ONLY this value and nothing else when no match is found - This ensures consistent handling of missing or non-applicable data ## Use Cases - Boolean fields: Use "false" or "No" when the condition is not met - Text fields: Use "Unknown", "Not Specified", or "N/A" when information is missing - Categorical fields: Use "Uncategorized" or "Other" when no category matches - Date fields: Use "Not Available" when dates cannot be extracted ## Common Values by Field Type | Field Type | Common Values | | --- | --- | | Boolean fields | "false", "No", "N/A" | | Text fields | "Unknown", "Not Specified", "N/A", "-" | | Categorical fields | "Uncategorized", "Other", "None" | | Status fields | "Not Applicable", "Pending", "Unknown" | ## Best Practices - Choose a value that clearly indicates the absence of data - Use consistent notApplicableValues across similar fields in your system - Consider how these values will appear in reports, filters, and analytics - Use values that are distinct from your allowedValues to avoid confusion - Keep values concise and clear for end users ## Relationship to Other Fields - Used as fallback when allowedValues matching fails - Works independently but complements the allowedValues system - Important for maintaining data completeness in extraction workflows ## FIELD INTERACTIONS AND WORKFLOW These four fields work in harmony to create a comprehensive data extraction system: 1. The Prompt provides the initial instruction on what to extract 1. Allowed Values defines the preferred or required values to look for 1. Other Values determines flexibility in accepting values outside the list 1. Not Applicable Values provides a fallback when nothing matches ## Example Workflow Consider a field for "Call Type" classification: - Prompt: "Identify the primary purpose or type of this call from the conversation" - Allowed Values: \["Sales Call", "Support Request", "Product Demo", "Follow-up"\] - Allowed Values Mode: Multiple (to allow calls with multiple purposes) - Other Values: Enabled (to catch new call types like "Training" or "Onboarding") - Not Applicable Values: "Uncategorized" In this scenario: - The AI will look for the four listed call types in the content - It can also identify and extract other call types if they appear - If multiple purposes are discussed, it will return a comma-separated list - If no call type can be determined, it will return "Uncategorized" ## CONFIGURATION IN AUTOMATIONS When creating or editing automations with AI Chat actions: 1. Field Selection: When you select a field that has these properties configured, they auto-populate in the automation 1. Override Capability: You can override field-level settings at the automation level for specific use cases 1. Field Mapping: The extracted values are automatically mapped to the selected field in your media library 1. Consistency: Using field-level prompts ensures consistency, but automation-level overrides allow flexibility ## TROUBLESHOOTING Common Issues and Solutions ## Issue: AI returns values not in allowedValues list Solution: Disable "Other Values" to enforce strict mode, or add the returned values to your allowedValues list ## Issue: AI returns "N/A" too frequently Solution: Review your prompt for clarity, check if allowedValues are too restrictive, or verify content actually contains relevant information ## Issue: Multiple values returned when single mode is expected Solution: Verify allowedValuesMode is set to "single" and that your prompt clearly indicates single value extraction ## Issue: Prompt changes not reflected in existing automations Solution: This is expected behavior - update automations manually or create new ones to use updated field prompts ## SUMMARY These four field properties provide powerful control over AI data extraction: - Prompt: Guides what to extract - Allowed Values: Defines preferred/required values with single or multiple selection - Other Values: Controls flexibility in accepting values outside the list - Not Applicable Values: Provides consistent fallback for missing data Together, they enable precise, standardized, and flexible data extraction from your media content while maintaining data quality and consistency across your organization. Stop manually sifting through audio, video, or text. With these settings, you can guide the AI to pinpoint specific details, classify content accurately, and ensure consistent data capture, saving you time and improving the quality of your insights. ## How It Works These four field properties work together to define how AI extracts data: - **Prompt:** Your custom instructions to the AI, telling it exactly what information to look for. - **Allowed Values:** A predefined list of primary or preferred values the AI should extract. - **Other Values:** A setting that determines if the AI can extract values not on your predefined list. - **Not Applicable Values:** A fallback response when no relevant data is found. ## Getting Started To access these features, go to [Settings → Fields](https://app.speakai.co/profile/fields) in your dashboard. ## Prompt The **Prompt** field is your direct instruction to the AI. It tells the AI precisely what data to extract from your media content. When you create or edit a field, you can define a prompt. This prompt automatically populates when you use the field in an automation, ensuring consistency. **Important Notes:** - Changing a prompt in a field definition will NOT update existing automations that use that field. - Prompts work with other field properties (like **Allowed Values**) for comprehensive extraction rules. - Prompts should be clear, specific, and describe the exact information you want. **Use Cases:** - Extract specific entities: "Identify all company names mentioned." - Classify content: "Determine the sentiment of the speaker (positive, negative, neutral)." - Extract structured data: "Find all dates and times mentioned." - Identify topics: "List all product names or services discussed." **Best Practices:** - Be specific rather than vague. - Include context about the expected format or type of data. - Reference related field properties in your prompt. - Test prompts with sample content. ## Allowed Values **Allowed Values** defines a list of primary or preferred values that the AI should extract. This helps standardize your extracted data by limiting the AI to specific options. This is an array of strings. The AI will try to match content against these values. Its behavior depends on two settings: **1. Selection Mode:** - **Single Mode:** The AI selects only ONE best-matching value. - **Multiple Mode:** The AI can select one or more applicable values. **2. Other Values Setting:** - When **Other Values** is disabled: The AI MUST ONLY use values from the **Allowed Values** list (strict mode). - When **Other Values** is enabled: The **Allowed Values** become "preferred values," and the AI MAY include other values if they are more accurate. **Output Format:** - Single Mode: Returns a single value (e.g., "value1"). - Multiple Mode: Returns comma-separated values (e.g., "value1, value2, value3"). **Use Cases:** - Standardized categories: \["Sales", "Support", "Marketing"\] - Status values: \["Active", "Pending", "Completed"\] - Priority levels: \["Low", "Medium", "High"\] **Best Practices:** - Use clear, distinct values. - Order values by priority if applicable. - Keep the list manageable (5-15 values is often ideal). - Use consistent naming conventions. ## Other Values The **Other Values** setting is a toggle that controls whether the AI can accept values outside your **Allowed Values** list. **When Other Values is enabled (true):** - **Allowed Values** becomes a "preferred values" list. - The AI can extract values not on the list if they are more accurate or relevant. - This offers flexibility for synonyms or alternative terminology. **When Other Values is disabled (false):** - **Allowed Values** becomes strict and mandatory. - The AI MUST ONLY respond with values from the list. - This ensures complete data standardization. **Use Cases:** - Enable to discover new categories or values. - Enable when dealing with synonyms or alternative terms. - Disable for strict data standardization (compliance, reporting). - Disable when working with predefined categories that must not be expanded. **Best Practices:** - Enable during initial data collection to discover common values. - Disable once you've identified all common values and added them to **Allowed Values**. - Consider your data quality requirements: strict standardization vs. flexible discovery. - Review extracted "other" values periodically. ## Not Applicable Values The **Not Applicable Values** field specifies what the AI should return when no relevant values are found in the content. This provides a consistent fallback response. When the AI analyzes content and cannot find any matching values (from **Allowed Values** or relevant data), it will return the value specified here. **Default Behavior:** - If **Not Applicable Values** is not specified or empty, the system defaults to "N/A". - The AI is instructed to return ONLY this value when no match is found. **Use Cases:** - Boolean fields: Use "false" or "No" when a condition is not met. - Text fields: Use "Unknown", "Not Specified", or "N/A" when information is missing. - Categorical fields: Use "Uncategorized" or "Other" when no category matches. **Common Values by Field Type:** | Field Type | Common Values | | --- | --- | | Boolean | "false", "No", "N/A" | | Text | "Unknown", "Not Specified", "N/A", "-" | | Categorical | "Uncategorized", "Other", "None" | | Status | "Not Applicable", "Pending", "Unknown" | **Best Practices:** - Choose a value that clearly indicates the absence of data. - Use consistent **Not Applicable Values** across similar fields. - Consider how these values will appear in reports and filters. - Use values distinct from your **Allowed Values**. ## Field Interactions and Workflow These four fields work together to create a comprehensive data extraction system: 1. The **Prompt** provides the initial instruction on what to extract. 1. **Allowed Values** defines the preferred or required values to look for. 1. **Other Values** determines flexibility in accepting values outside the list. 1. **Not Applicable Values** provides a fallback when nothing matches. **Example Workflow: Call Type Classification** - **Prompt:** "Identify the primary purpose or type of this call from the conversation." - **Allowed Values:** \["Sales Call", "Support Request", "Product Demo", "Follow-up"\] - **Allowed Values Mode:** Multiple (to allow calls with multiple purposes) - **Other Values:** Enabled (to catch new call types like "Training" or "Onboarding") - **Not Applicable Values:** "Uncategorized" In this scenario: - The AI will look for the four listed call types. - It can also identify and extract other call types if they appear. - If multiple purposes are discussed, it will return a comma-separated list. - If no call type can be determined, it will return "Uncategorized". ## Configuration in Automations When creating or editing automations with AI Chat actions: - **Field Selection:** When you select a field with these properties configured, they auto-populate in the automation. - **Override Capability:** You can override field-level settings at the automation level for specific use cases. - **Field Mapping:** The extracted values are automatically mapped to the selected field in your media library. - **Consistency:** Using field-level prompts ensures consistency, but automation-level overrides allow flexibility. ## Troubleshooting **Common Issues and Solutions:** - **Issue:** AI returns values not in the **Allowed Values** list. * **Solution:** Disable "Other Values" to enforce strict mode, or add the returned values to your **Allowed Values** list. - **Issue:** AI returns "N/A" too frequently. * **Solution:** Review your prompt for clarity, check if **Allowed Values** are too restrictive, or verify content actually contains relevant information. - **Issue:** Multiple values returned when single mode is expected. * **Solution:** Verify **Allowed Values Mode** is set to "single" and that your prompt clearly indicates single value extraction. - **Issue:** Prompt changes not reflected in existing automations. * **Solution:** This is expected behavior. Update automations manually or create new ones to use updated field prompts. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to [Settings → Fields](https://app.speakai.co/profile/fields). - **Create a new field** or edit an existing one to configure these AI properties. - **Experiment with prompts** and allowed values to see how they impact data extraction. - **Integrate these fields into your automations** for smooth data processing. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Insights](/help/insights/) · [Categories](/help/insights/categories/) # Keywords > Get notified when a chosen word or phrase appears in any new transcript, so escalations and competitor mentions surface immediately. Source: https://docs.speakai.co/help/insights/keywords/ · Markdown: https://docs.speakai.co/help/insights/keywords/index.md By receiving immediate notifications, you can proactively address issues, track trends, or respond to urgent matters as they arise. ## How It Works You can configure alerts to notify administrators when certain keywords are detected within a transcript. This can be achieved through two primary methods: using Zapier for advanced automation or using Speak AI's native Insights features. ## Getting Started To access and configure keyword alerts, navigate to **Settings → Keywords** in your Speak AI dashboard. ## Configuration There are two recommended ways to set up keyword alerts: ## Using Zapier (Recommended) This method connects cleanly with your existing tools. 1. **Trigger**: Set up a trigger in Zapier for Speak AI's **New Media Processed** event. 1. **Filter**: Add a Zapier filter step to ensure the automation continues ONLY IF the `Keywords` field (from Speak AI data) contains your desired keyword (e.g., "YourKeyword"). 1. **Action**: Configure an action to send an email via Gmail or a channel message via Slack to the relevant admin. ## Using Speak AI Insights Some Speak AI plans offer native email alerts for keyword sets. 1. Go to the **Insights** or **Keywords** settings within your Speak AI account. 1. Configure a **Keyword Set** that includes the terms you want to monitor. 1. If available on your plan, enable **Email Notifications** for this specific keyword set. ## Next Steps Ready to ensure you never miss critical topics? Here's what to do next: - **Login to your account** and navigate to **Settings → Keywords**. - **Choose your preferred method** (Zapier or native Insights) to set up your first keyword alert. - **Test your alert** with a relevant keyword to confirm it's working as expected. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Insights](/help/insights/) · [Categories](/help/insights/categories/) # Sentiment scores > Sentiment runs from -1 to 1, split into seven bands from very negative to very positive. What each band means in practice. Source: https://docs.speakai.co/help/insights/sentiment/ · Markdown: https://docs.speakai.co/help/insights/sentiment/index.md Sentiment scores range from -1 to 1 and can have multiple decimals. We break it down into segments. | Sentiment | Score | | --- | --- | | Very Positive | 0.75 to 1 | | Positive | 0.26 to 0.74 | | Slightly Positive | 0.01 to 0.25 | | Neutral | 0 | | Slightly Negative | -0.01 to -0.25 | | Negative | -0.26 to -0.74 | | Very Negative | -0.75 to -1 | ## What do the sentiment scores mean Sentiment scores range from -1 to 1 and can have multiple decimals. We break it down into segments. | Sentiment | Score | | --- | --- | | Very Positive | 0.75 to 1 | | Positive | 0.26 to 0.74 | | Slightly Positive | 0.01 to 0.25 | | Neutral | 0 | | Slightly Negative | -0.01 to -0.25 | | Negative | -0.26 to -0.74 | | Very Negative | -0.75 to -1 | Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Insights](/help/insights/) · [Categories](/help/insights/categories/) # Themes > Find recurring themes across recordings, classify each mention, and count how often each theme appears and who raised it. Source: https://docs.speakai.co/help/insights/themes/ · Markdown: https://docs.speakai.co/help/insights/themes/index.md Researchers have struggled for years to identify, classify and quantify themes in their data. That is why we are excited to share that you can now accomplish this in just seconds in Speak. This is a game-changing solution that is only available on our platform. Want to identify, classify and quantify your first themes? See exactly how to do it: ## Video Tutorial In this video tutorial, we walk through the entire process of analyzing a synthetic Spotify cancellation survey response and then identify, classify, and quantify themes from it automatically using Speak's AI: [Watch Video Tutorial](https://embed.speakai.co/how-to-identify-classify-quantify-themes-in-speak-9d5ec1b88d6f) ### Upload Your Data To begin your theme analysis process, you need to upload the data you want to analyze. With Speak, you can upload and analyze audio, video and text data. You can do that through the software, Zapier integration, CSVs and APIs. You can easily upload from [your dashboard](https://app.speakai.co/dashboard) or anywhere in the app by selecting the "Quick Actions" dropdown (the image above is a good reference). We have documentation on all of these options so please review in our help center. ### Organize Your Data We recommend putting all the data you want to analyze together in one folder. You can easily do this on upload or edit files after upload to send them to your desired folder. ### Create Your Fields Once your data is uploaded and organized in your desired folder, you now want to create the fields you want to map the AI analysis responses to. You can easily create as many custom fields as you want in Speak on [this page](https://app.speakai.co/profile/fields). #### Exploratory Theme Fields If you don't have any pre-determined themes, a great option is to create a text field called "Exploratory Themes". In this process, we are working through "Theme Identification". After identifying themes, we can easily standardize the themes for consistency across the data and quantification using the same process we are detailing. #### Standardized Theme Fields If you already know your themes, then you may want to name the Fields "Themes" or "Standardized Themes". In this case, in the AI analysis step we are showing you next, you will be providing the AI with some context and the list of themes and forcing the AI to pick one or several of the most relevant themes. This enables standardization and easy quantification across your data set. This is known as "Theme Classification". #### Put Your Fields In View Now that you have created your fields, you want to be able to view the results from the folder level. This is easy to do. Just visit the folder, select "Columns" on the top right and move the columns you have created into view by dragging them from the right side to the left. Speak will store these preferences in the session and they will remain as long as you don't reset your cache. If they do disappear, you can easily re-add them into the view again. ### It's Time To Analyze. Visit the folder where you have organized the data you want to analyze. You can see the folders you have created on the left side of Speak. #### Select The Files You Want To Analyze If you don't select any files, Speak will analyze all the data in your folder. Alternatively, you can select an individual file or a few files using the checkboxes on the left side. If you do this, Speak will only analyze those selected files. #### Select "Prompt/Chat" On The Top Right With your desired files selected, select either "Prompt" or "Chat" and a pop-up will appear. #### Choose "Map Response To Field" Once the pop-up appears, select "Map Response to Field" and you will be asked to select the Field you want to map the response to. That means when you run your analysis, the answer will be added to the field. In this example, we chose "Exploratory Classification" for the mapped response field. #### Write Your Prompt For The Analysis It is now time to write your prompt to help the AI run its analysis. Below, we have provided prompt structure ideas for you based on whether you are identifying themes or classifying themes: ##### Identify New Themes Prompt *Please review this \______\_ data and provide the main theme for why \_______. Please be concise and only provide the Theme Name in the output.* ##### Classify Themes From List Prompt P*lease review this \______\_ data and give me only one theme from this list:* 1. *Theme 1* 1. *Theme 2* 1. *Theme 3* 1. *Theme 4* 1. *Theme 5* *Respond with nothing but the selected theme from the list above. Do not include the number. For example, you should only return: "EXAMPLE THEME". Consistency is crucial as we have standardized themes we need to quantify.* ### Run The Analysis. Once you are happy with the prompt you can run the analysis. The data length and volume will determine how quickly the response comes back. You will see the analysis results start to populate in your select columns. Want to re-run your analysis with updated prompts or themes? No problem. You can easily follow the same steps above and update the fields with a new run. If you have identified new themes and want to standardize them for better quantification, you also have a great sample prompt and process above. ### Download The Data For Easy Analysis Want to download the data for analysis? This is easy to do. If you are on the 7-day trial or have the Premium Export Add-On in your subscription, just select the files you want to download, select "More", "Export", and "Media Details (.csv") and hit "Export All". Speak will automatically generate a high-quality, nicely structured CSV with all your data combined including the columns with the themes. Once downloaded, you can easily use Microsoft Excel, Google Sheets or other platforms to analyze: 1. The number of themes per data set 1. The percentage of themes per data set 1. The most popular themes 1. The most unpopular themes 1. Much more. #### Want To Automate This All? You can automate theme identification, classification and quantification at the file level using our [Prompt Automation system](https://app.speakai.co/automations). ### Need Help With Identifying, Classifying & Quantifying Themes? Book a paid customer success session with one of our experts today and we will make sure you are getting the insights you need to make better decisions: 1. [30-Minute Session](https://calendly.com/speak-ai/30-minute-customer-support?utm_source=docs&utm_campaign=consult) 1. [45-Minute Session](https://calendly.com/speak-ai/45-minute-paid-customer-support?utm_source=docs&utm_campaign=consult) 1. [60-Minute Session](https://calendly.com/speak-ai/60-minute-paid-customer-support?utm_source=docs&utm_campaign=consult) Thank you so much. Have a wonderful day. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Insights](/help/insights/) · [Categories](/help/insights/categories/) # Integrations > Speak AI integrates with Google Drive, Slack, Zoom, Zapier, Vimeo and more, so recordings flow in and results flow out automatically. Source: https://docs.speakai.co/help/integrations/ · Markdown: https://docs.speakai.co/help/integrations/index.md Connect the tools your recordings come from and the tools your results go to. [Zoom](/help/integrations/zoom/) and [Vimeo](/help/integrations/vimeo/) bring media in, [Google Calendar](/help/meeting-assistant/google-calendar/) and [Microsoft Calendar](/help/meeting-assistant/microsoft-calendar/) drive the Meeting Assistant, the [Chrome extension](/help/integrations/chrome-extension/) captures the web, and [Zapier](/help/integrations/zapier/) connects everything else: 5,000+ apps sending files in and results out automatically. Developers get the [API](/api/) and [webhooks](/api/webhooks/) directly. ![The Integrations catalog: MCP, ChatGPT, Claude and app connectors](/help/media/integrations/integrations-index.jpg) - **[Chrome extension](/help/integrations/chrome-extension/)** - **[Vimeo](/help/integrations/vimeo/)** - **[Zapier](/help/integrations/zapier/)** - **[Zoom](/help/integrations/zoom/)** ## Integrations: connect Speak AI with your favorite tools ## Overview Speak AI connects with your existing tools so recordings flow in automatically and results flow out to where you need them. Go to [Integrations](https://app.speakai.co/integrations) in the sidebar to set up connections. ## Finding integrations The Integrations page has a search box and a category filter to help you find what you need quickly. Apps are grouped by category in the default view. Use the search box to find any app by name, or use the category filter dropdown to browse a specific section such as CRM, Communication, or Storage. Apps you have already connected display a green **Connected** badge. For apps that use an API key instead of OAuth: - Click **Connect** to open a key-entry dialog where you can paste your API key - Once connected, an **Update key** button appears on the row so you can rotate the key without disconnecting first ## Native integrations ### Google Drive Monitor a Google Drive folder and automatically import new audio/video files to Speak AI. Great for teams that already save recordings to Drive. ### Google Calendar Connect your calendar so the Meeting Assistant knows about your upcoming meetings and can auto-join. See our [Google Calendar guide](/help/meeting-assistant/google-calendar/). ### Microsoft Outlook Calendar Same as Google Calendar but for Outlook/Office 365 users. See our [Microsoft Calendar guide](/help/meeting-assistant/microsoft-calendar/). ### Slack Send transcription results, notifications, and media to Slack channels. Also receive Speak AI notifications directly in Slack. ### Vimeo Import your Vimeo video library into Speak AI for automatic transcription and analysis. ### Chrome Extension One-click import of web content, YouTube videos, and audio from any browser tab. ## Phone call transcription Speak AI does not directly connect to or tap into your phone line. The Chrome extension and mobile app do not record phone calls. However, there are several ways to get your phone call recordings into Speak AI for transcription, summarization, and analysis: - **Upload recordings directly** - If your phone system (VoIP, call center software, etc.) lets you export or download call recordings as audio files (MP3, WAV, M4A, etc.), you can [upload them to Speak AI](/help/uploads/) for transcription and analysis - **Twilio integration** - If you use Twilio for your phone system, you can connect it to Speak AI through Zapier to automatically send call recordings for transcription - **Zapier** - Connect virtually any phone or call recording system (RingCentral, Aircall, Dialpad, etc.) to Speak AI through [Zapier](/help/integrations/zapier/) - **API** - Build a custom integration using the [Speak AI API](https://docs.speakai.co) to programmatically upload call recordings from any system Once your call recordings are in Speak AI, you get full transcription, speaker identification, AI summaries, sentiment analysis, and the ability to ask questions about your calls using AI Chat. ## Zapier (5,000+ apps) Through Zapier, you can connect Speak AI to virtually any tool. Popular connections include: - **Zoom** - Auto-import meeting recordings - **YouTube** - Transcribe uploaded videos - **Dropbox / OneDrive / Box** - Import from cloud storage - **Airtable** - Send transcription data to structured databases - **Google Sheets** - Export insights to spreadsheets - **Gmail** - Process email audio attachments - **Twilio** - Transcribe phone call recordings - **HubSpot / Salesforce** - Push insights to your CRM ## Webhooks (for developers) Set up custom webhooks to receive real-time notifications when media is transcribed, analyzed, or deleted. See our [Webhooks guide](/help/integrations/). ## API access Build custom integrations using the Speak AI API. Manage your API keys from [Developers > API Keys](https://app.speakai.co/developers/apikeys). Full API documentation is available at [docs.speakai.co](https://docs.speakai.co). ## MCP Server (AI assistant integration) Connect Speak AI to AI assistants like Claude, ChatGPT, Cursor, and VS Code through the Model Context Protocol. This lets AI assistants access your transcriptions and analysis directly. Learn more at [speakai.co/developers](https://speakai.co/developers/). Wiring Speak AI into a team workflow? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). # Chrome extension > Import text from any web page into Speak AI in one click, then run sentiment analysis and named-entity recognition on what you captured. Source: https://docs.speakai.co/help/integrations/chrome-extension/ · Markdown: https://docs.speakai.co/help/integrations/chrome-extension/index.md With a single click, import text from any web page onto your Speak account to analyze insights and sentiment instantly. [Download Google Chrome Extension](https://chrome.google.com/webstore/detail/speak-ai-import-analyze-t/ocojnbhkbjgnlknabhicoodhmlapfodp?hl=en) This extension provides an easy way to find and import any text from a page or entire page to analyze notes on Speak AI application. ## Use: Authenticate with your Speak credentials. Once you are logged in to Speak, there are multiple ways to analyze text on web pages with the Chrome Extension. ### Option 1: Fetch Page You can fetch and analyze an entire page or article by selecting the "Fetch the Page" button. ### Option 2: Highlight You can also highlight, right-click and select "Speak AI -- Import - Analyze Selected Text". You can now instantly analyze and receive insights from: - Emails - Social media posts - Competitors - People and organization profiles - Blog posts - Press releases - News articles - Any text-based content ### Some examples of useful insights: - Default Speak categories like people, brands, locations, numbers, events and more - Custom Speak categories you create to find meaningful words and phrases - The sentiment (identify and sort by most positive/negative moments) - All insights will also populate into the dashboard that analyzes multiple files for you. **Here are some potential use cases of the Speak extension:** - Save time understanding content - Find key information on web pages - Analyze and find patterns across web pages - Prepare for meetings - Gain a better understanding of competitors - Learn about people and organizations - Export text and insights into PDF and Word Doc reports Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Integrations](/help/integrations/) · [Vimeo](/help/integrations/vimeo/) # Vimeo > Link a Vimeo account to Speak AI to import videos for transcription and analysis without downloading them first. Source: https://docs.speakai.co/help/integrations/vimeo/ · Markdown: https://docs.speakai.co/help/integrations/vimeo/index.md ## Connect my Vimeo account to Speak? 1. [Go to Integrations](https://app.speakai.co/integrations/zoom) in your Speak account 1. Click on "Manage" under the Vimeo integration. \3. Use the "Connect" button to redirect to Vimeo and authorize access to your account. \4. Log in to your Vimeo account and grant Speak access to your account. - Speak needs the following permissions to pull your videos into Speak. * Access your video files * Access your private videos, Showcases, Groups, Channels, and Portfolios. * Access your public videos, Showcases, Groups, Channels, and Portfolios. \5. You should see your Vimeo account name at the top of the screen and the option to choose between "All Videos" or "All Folders" or "All Showcases" from the dropdown if authorization is successful. If not, try reconnecting your account again or reach out to Speak support via the in-app chat. ## Disconnect my Vimeo account from Speak? If you wish to disconnect your account, click on the "Disconnect" button to remove your information from the Speak database. You will have to go through the authorization process if you decide to reconnect to Vimeo in the future. ## Functionality and features with Speak AI <> Vimeo: **Let Speak take the grunt work out of analyzing your videos.** All your videos will be automatically databased, transcribed, and analyzed to let you find essential moments quickly. ### With the Speak + Vimeo integration, you can: 1. **Get automatic and professional transcription -** All your recordings are automatically transcribed and stored as a highly accurate, interactive and editable transcript. For meetings where 99% accuracy is required, you can easily order a professional cleanup of your transcript with a single click. 1. **Create a searchable media library -** The searchable audio, video, and text library let you find the exact moments you are looking for across your files. You can filter through your files using various filters and synced keyword, topic, and sentiment analytics. 1. **Use tags to organize your files by the project** - You can use our tagging system to efficiently organize your files based on their project or use case. 1. **Easily export and share with your team** - Quickly find, edit and share the most relevant moments from your recordings with your team. Use a fully [shareable media library](https://speakai.co/shareable-media-library/?utm_source=docs&utm_medium=referral&utm_campaign=help) or export files in any file format you want to make the most of your Vimeo videos Speak is a growing platform and ecosystem used by qualitative researchers, marketers, and makers to integrate transcription and language analysis into their workflows. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Integrations](/help/integrations/) · [Chrome extension](/help/integrations/chrome-extension/) # Zapier > Zapier links Speak AI to 5,000+ apps. Which triggers and actions to use for transcription, AI Chat analysis and media workflows. Source: https://docs.speakai.co/help/integrations/zapier/ · Markdown: https://docs.speakai.co/help/integrations/zapier/index.md ## Overview Zapier connects Speak AI with 5,000+ apps. When something happens in Speak (like a transcription completing), Zapier can automatically send the results to Google Sheets, Slack, Airtable, your CRM, or any other connected tool. ## Available triggers Speak AI offers two Zapier triggers. Choosing the right one is important: ### New media processed (basic) Fires when a new media file finishes transcription. Returns the transcript text, media ID, and basic metadata. Use this when you just need the raw transcript. ### New AI Chat response (recommended) Fires when an AI Chat prompt completes on a file. Returns the prompt response, structured data, and all extracted fields. **Use this for most workflows** because it includes both the transcript and the AI analysis results. If you need structured data (like contact names, action items, or custom fields), always use the AI Chat response trigger paired with an automation in Speak AI. ## Setting up a Zap 1. Go to [Zapier](https://zapier.com) and click **Create Zap** 1. Search for **Speak AI** as your trigger app 1. Choose your trigger (New Media Processed or New AI Chat Response) 1. Connect your Speak AI account using your API key 1. Choose your action app (Google Sheets, Slack, Airtable, etc.) 1. Map the fields from Speak AI to your destination 1. Test and turn on your Zap ## Common workflows - **Meeting notes to Slack:** AI Chat trigger -> Send to Slack channel - **Transcripts to Google Sheets:** Media processed trigger -> Create row in Sheets - **Customer feedback to CRM:** AI Chat trigger (with fields) -> Create/update CRM record - **Zoom recordings to Speak:** Zoom trigger -> Upload to Speak AI ## Tips - **Pair with automations:** Set up an automation in Speak AI first (to run an AI Chat prompt on each new file), then use the AI Chat response trigger in Zapier to get the structured output. - **Test with a real file:** Zapier needs a sample to map fields. Upload a test file to Speak AI before setting up the Zap. - **Check your API key:** If a Zap stops working, verify your API key has not been regenerated. For more integrations, see our [integrations overview](/help/integrations/). A step-by-step guide to connect Google Drive <> Speak AI integration via Zapier. ## 4. Let's connect Speak AI action: - File/URL - Please select file from the dropdown menu - Video or Audio - Based on the file format **5. Create a test and review the object as shown below** ## 6. You will see the success response from the API response. If you see any errors - one of the configurations is missing and send us a message via Live chat. ## Zoom to Speak AI via Zapier Save time and gain immediate insights from your meeting content without manual uploads. Speak AI will transcribe and analyze your recordings, making them searchable and actionable. ### How It Works This integration uses Zapier to connect Zoom and Speak AI. When a new audio recording is completed in Zoom, Zapier automatically triggers an action to upload that recording to Speak AI. ### Getting Started To set up this integration, you'll need accounts for Zapier, Speak AI, and Zoom. Ensure your Zoom account has cloud recording enabled. Follow these steps to create the automated workflow: 1. **Create a Zap:** In Zapier, select **Zoom** as the Trigger App and choose either **New Audio Recording** or **New Recording** as the trigger event. 1. **Connect Account:** Authenticate your Zoom account within Zapier. 1. **Add Action:** Select **Speak AI** as the Action App. 1. **Choose Event:** Select **Upload Media** as the action event. 1. **Map Fields:** * **Name:** Map this to your Zoom Topic or Start Time. * **Media URL:** Map this to the `download_url` provided by Zoom. * **Folder:** (Optional) Choose a specific destination folder within Speak AI. 1. **Test & Publish:** Run a test to confirm the file uploads correctly to Speak AI, then turn on your Zap. ### Configuration When mapping fields in Zapier, consider the following: | Speak AI Field | Zoom Field Mapping | Notes | | --- | --- | --- | | Name | Zoom Topic or Start Time | Helps identify your recordings in Speak AI. | | Media URL | `download_url` | This is the direct link to your Zoom cloud recording. | | Folder | (Optional) | Organize your recordings into specific folders within Speak AI. | ### Troubleshooting If your files are not uploading, check the following: - Ensure that password protection is disabled for your Zoom sharing links. - Verify that the link provided to Zapier is publicly accessible. ### Next Steps Ready to automate your Zoom recordings? Here's what to do next: - **Login to your Zapier account** and create a new Zap. - **Connect your Zoom and Speak AI accounts** following the steps above. - **Test your Zap** to ensure smooth uploads. ## Upload files from Google Drive using Zapier integration A step-by-step guide to connect Google Drive <> Speak AI integration via Zapier. ## 1. Select Google drive as a Trigger ## 2. Select the folder from where you would like to trigger the action ## 3. You will see the sample response and ensure it contains the "File" in your response. ## 4. Let's connect Speak AI action: - File/URL - Please select file from the dropdown menu - Video or Audio - Based on the file format **5. Create a test and review the object as shown below** ## 6. You will see the success response from the API response. If you see any errors - one of the configurations is missing and send us a message via Live chat. ## 7. Review your file on Speak AI ## Upload Zoom recordings via Zapier ## Zoom to Speak AI via Zapier ### Overview Effortlessly integrate your Zoom meetings with Speak AI to automate your transcription and analysis workflow. This connection ensures that as soon as your Zoom cloud recordings are ready, they are automatically sent to Speak AI for processing. Save time and gain immediate insights from your meeting content without manual uploads. Speak AI will transcribe and analyze your recordings, making them searchable and actionable. ### How It Works This integration uses Zapier to connect Zoom and Speak AI. When a new audio recording is completed in Zoom, Zapier automatically triggers an action to upload that recording to Speak AI. ### Getting Started To set up this integration, you'll need accounts for Zapier, Speak AI, and Zoom. Ensure your Zoom account has cloud recording enabled. Follow these steps to create the automated workflow: 1. **Create a Zap:** In Zapier, select **Zoom** as the Trigger App and choose either **New Audio Recording** or **New Recording** as the trigger event. 1. **Connect Account:** Authenticate your Zoom account within Zapier. 1. **Add Action:** Select **Speak AI** as the Action App. 1. **Choose Event:** Select **Upload Media** as the action event. 1. **Map Fields:** * **Name:** Map this to your Zoom Topic or Start Time. * **Media URL:** Map this to the `download_url` provided by Zoom. * **Folder:** (Optional) Choose a specific destination folder within Speak AI. 1. **Test & Publish:** Run a test to confirm the file uploads correctly to Speak AI, then turn on your Zap. ### Configuration When mapping fields in Zapier, consider the following: | Speak AI Field | Zoom Field Mapping | Notes | | --- | --- | --- | | Name | Zoom Topic or Start Time | Helps identify your recordings in Speak AI. | | Media URL | `download_url` | This is the direct link to your Zoom cloud recording. | | Folder | (Optional) | Organize your recordings into specific folders within Speak AI. | ### Troubleshooting If your files are not uploading, check the following: - Ensure that password protection is disabled for your Zoom sharing links. - Verify that the link provided to Zapier is publicly accessible. ### Next Steps Ready to automate your Zoom recordings? Here's what to do next: - **Login to your Zapier account** and create a new Zap. - **Connect your Zoom and Speak AI accounts** following the steps above. - **Test your Zap** to ensure smooth uploads. ## Zapier Integration **What is Zapier?** Zapier is an online automation tool that connects your favourite apps, such as Gmail, Slack, Mailchimp, and more. You can connect two or more apps to automate repetitive tasks without coding or relying on developers to build the integration. It’s easy enough that anyone can build their own app workflows with just a few clicks. For example, maybe you get many email attachments in your Gmail account, and you want to save them to Dropbox. Every time you get an attachment, you could open up the email, click the attachment, and save it to Dropbox. Or you can have Zapier automate this for you, saving you time and effort. You can use Speak AI within your workflow by using our Zapier integrations: [Speak AI Zapier Integrations](https://zapier.com/apps/speak-ai/integrations) We continue adding supported apps, so be sure to stay up to date with any new integrations. Need help? Contact our support team or explore our other integration guides. Need help? Contact our support team or explore our other integration guides. ## Overview Effortlessly send audio files from your favorite tools, like Slack, directly to Speak AI. This automation saves you time and ensures your audio content is processed without manual intervention. By connecting your tools, you can streamline your workflow and focus on analyzing your audio, rather than managing file transfers. ## How It Works You can automate the flow of audio files from Slack or other sources to Speak AI using Zapier. This involves setting up a "Zap" that connects your source application to Speak AI. ## Getting Started To access this feature, go to Settings → Integrations in your dashboard. ## Configuration Here's how to set up the automation: **Slack to Speak AI Workflow** - **Trigger**: Select Slack and choose the "New File Shared" or "New Saved File" trigger. - **Action**: Select Speak AI and choose the "Upload Media" action. - * Map the **File URL** (Download URL) from Slack to the **File URL** field in Speak AI. * **Note**: Ensure the file is public or Zapier has permission to access the download link. Private Slack file links might require additional authentication steps. **Alternative: Google Drive Middleware** To avoid potential authentication issues with direct file links, you can use Google Drive as an intermediary: 1. Set up a Zap to upload files from Slack to Google Drive. 1. Set up another Zap where the trigger is a "New File" in Google Drive, and the action is "Upload Media" to Speak AI. This method is often more reliable for managing file permissions. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Settings → Integrations. - **Set up a Zap** to connect Slack (or your preferred source) to Speak AI. - **Test your workflow** with a sample audio file. Need help? Contact our support team or check out our other guides. ## Overview Save time and streamline your workflow by automatically sending your Speak AI transcripts to your favorite document platforms. This integration ensures your meeting notes, interviews, or any analyzed media are instantly available where you need them, without manual copy-pasting. Focus on what matters most, knowing that your transcripts are being organized and stored efficiently in platforms like Google Docs or Word. ## How It Works This feature uses Zapier, a powerful automation tool, to connect Speak AI with your chosen document application. When Speak AI finishes processing a file, Zapier automatically triggers an action to create a new document containing the transcript. ## Getting Started To set up this automation, you'll need a Zapier account and a Speak AI account. Follow the steps below to create your Zap. ## Workflow Steps Here's how to set up the Zapier integration: - **Trigger in Zapier**: Select **Speak AI** as the app and choose the **New Media Processed** (or **Transcript Ready**) event. - **Action in Zapier**: Select your desired document app, such as **Google Docs**, and choose the **Create Document from Text** action. - **Map Fields**: * For the Document Content, select the **Transcript** field from the Speak AI trigger data. * You can also map **Speaker Names** and **Timestamps** if they are available in the text format. - **Test & Activate**: Run a test to confirm the document is created correctly with the transcript content. Once verified, turn on the Zap. This workflow will run automatically for every new file you analyze with Speak AI. ## Next Steps Ready to automate your transcript delivery? Here's what to do next: - **Login to your Zapier account** and create a new Zap. - **Connect Speak AI and your chosen document app** by following the steps above. - **Test your Zap** to ensure it's working as expected. Need help? Contact our support team or check out our other guides. ## Overview Connect your Speak AI audio recordings directly to Airtable to organize and analyze your data in a structured way. This integration allows you to automatically populate your Airtable bases with valuable information from your audio submissions, saving you time and effort. By using Zapier, you can ensure that every new recording captured through your embedded Speak AI recorder is smoothly transferred to your Airtable, making it easier to manage, track, and gain insights from your audio content. ## How It Works Speak AI integrates with Airtable through Zapier, a powerful automation tool. When a new audio recording is submitted via your embedded recorder, Zapier detects this event and triggers an action to create a new record in your specified Airtable base. You can map key details from the recording, such as the media URL, transcript, and insights, to your Airtable columns. ## Getting Started To send recordings from your embedded audio recorder to Airtable, you'll need to set up an integration using Zapier. This process involves creating your recorder in Speak AI and then configuring a Zap in Zapier to connect Speak AI to Airtable. To access your Speak AI recorders, go to **Recorder** in the sidebar. ## Prerequisites - A Speak AI account - An Airtable account - A Zapier account ## Step 1: Create Your Recorder 1. Go to **Recorder** in the sidebar. 1. Click **New Recorder** or edit an existing one. 1. Customize your settings and questions as needed. 1. Save and copy the **Embed Code** or **Shareable Link**. ## Step 2: Set Up Zapier 1. Log in to Zapier and click **Create Zap**. 1. **Trigger**: Select the **Speak AI** app and choose the **New Media** trigger. 1. Connect your Speak AI account using your API Key. 1. **Action**: Select the **Airtable** app and choose **Create Record**. 1. Map the fields from Speak AI (e.g., Media URL, Transcript, Insight, Name) to your Airtable columns. 1. Test the Zap and turn it on. Now, whenever someone submits a recording via your embedded recorder, the data will automatically appear in your Airtable base. ## Next Steps Ready to organize your audio recordings in Airtable? Here's what to do next: - **Login to your accounts** (Speak AI, Airtable, and Zapier) and follow the steps above. - **Create a new recorder** in Speak AI or select an existing one to embed. - **Set up your Zap** in Zapier to connect Speak AI to your Airtable base. - **Test your integration** to ensure recordings are flowing correctly. Need help? Contact our support team or check out our other guides. **What is Zapier?** Zapier is an online automation tool that connects your favourite apps, such as Gmail, Slack, Mailchimp, and more. You can connect two or more apps to automate repetitive tasks without coding or relying on developers to build the integration. It’s easy enough that anyone can build their own app workflows with just a few clicks. For example, maybe you get many email attachments in your Gmail account, and you want to save them to Dropbox. Every time you get an attachment, you could open up the email, click the attachment, and save it to Dropbox. Or you can have Zapier automate this for you, saving you time and effort. You can use Speak AI within your workflow by using our Zapier integrations: [Speak AI Zapier Integrations](https://zapier.com/apps/speak-ai/integrations) We continue adding supported apps, so be sure to stay up to date with any new integrations. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Integrations](/help/integrations/) · [Chrome extension](/help/integrations/chrome-extension/) # Zoom > Link your Zoom account so cloud recordings import into Speak AI for transcription, speaker separation and analysis. Source: https://docs.speakai.co/help/integrations/zoom/ · Markdown: https://docs.speakai.co/help/integrations/zoom/index.md ## Connect my Zoom account to Speak? 1. #### Go to Meeting Assistant Preferences in your Speak account. 1. #### Use the "Connect" button to redirect to Zoom and authorize access to your account #### 3. Log in to your Zoom account and grant Speak access to your account. \4. You will see an email address associated with your Zoom Account. ## Disconnect my Zoom account from Speak? If you wish to disconnect your account, click the "Disconnect" button to remove your information from the Speak database. You must go through the authorization process if you decide to reconnect Zoom. ## Functionality and features with Speak AI <> Zoom: **Let Speak take the grunt work out of analyzing your meetings and recordings.** All your meetings, recordings, or webinars will be automatically databased, transcribed, and analyzed to let you find essential moments quickly. ### With the Speak + Zoom integration, you can: 1. **Get automatic and professional transcription -** All your recordings are automatically transcribed and stored as a highly accurate, interactive and editable transcript. For meetings where 99% accuracy is required, you can easily order a professional cleanup of your transcript with a single click. 1. **Create a searchable media library -** The audio, video, and text library lets you find the exact moments you want across all your files. You can filter through your files using various filters and synced keyword, topic, and sentiment analytics. 1. **Use tags to organize your files by the project** - You can use our tagging system to efficiently manage your files based on their project or use case. 1. **Easily export and share with your team** - Quickly find, edit and share the most relevant moments from your recordings with your team. Use a fully [shareable media library](https://speakai.co/shareable-media-library/?utm_source=docs&utm_medium=referral&utm_campaign=help) or export files in any format you want to make the most of your Zoom recordings. Speak is a growing platform and ecosystem used by qualitative researchers, marketers, and makers to integrate transcription and language analysis into their workflows. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Integrations](/help/integrations/) · [Chrome extension](/help/integrations/chrome-extension/) # Library > Library in Speak AI. Source: https://docs.speakai.co/help/library/ · Markdown: https://docs.speakai.co/help/library/index.md Every recording, transcript, and note lives in your library. [Folders](/help/library/folders/) organize by project or client, [tags](/help/library/tags/) cut across folders, [saved views](/help/library/saved-views/) remember the columns each folder should show, and [Spotlight search](/help/library/search/) finds anything, full transcript text included, from anywhere in the app with Cmd+K. - **[Folders](/help/library/folders/)** - **[Saved views](/help/library/saved-views/)** - **[Spotlight search](/help/library/search/)** - **[Tags](/help/library/tags/)** Migrating an existing library in? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). # Folders > Create and rename folders, move recordings between them, and tag files so they can be filtered across the whole library. Source: https://docs.speakai.co/help/library/folders/ · Markdown: https://docs.speakai.co/help/library/folders/index.md ## Creating folders 1. Click **Folders** in the sidebar 1. Click **New Folder** 1. Name your folder and click **Save** ## Renaming a folder 1. Go to your folder list 1. Click the **three-dot menu** next to the folder name 1. Select **Edit folder** 1. Change the name and click **Save** ## Adding tags to files Tags help you categorize and filter files across folders. ### Tag individual files 1. Open a media file 1. Click **More** in the top right 1. Select **Edit** 1. Type your tag name and press **Enter** 1. Click **Update** ### Tag multiple files at once 1. Go to a folder and select multiple files using the checkboxes 1. Click **More** then **Edit** 1. Add your tags and click **Update All** ## Removing tags To remove a tag, open the file edit menu, click the X next to the tag, and save. For bulk removal, select multiple files, edit, and remove the tag from all at once. ## Organization tips - **Use folders for projects:** One folder per research project, client, or meeting series - **Use tags for cross-cutting themes:** Tags like "urgent", "follow-up", or "reviewed" work across all folders - **Combine with automations:** Set up AI Chat automations per folder so every new file gets analyzed automatically - **Assign folders to team groups:** Control who can see which folders by assigning them to team groups In order to add a new folder, first select the "Folders" subheading on the left-hand sidebar. On the Folders page, click on the "New folder" button in the top right-hand corner. A new window will be opened allowing you to enter the name of your new folder, as well as assign the contents of the folder to anyone on your team. Once you have added at least a name for your folder, click on the "Save" button in the top right-hand corner of the window. ## Organize files with folders and tags ## Creating folders 1. Click **Folders** in the sidebar 1. Click **New Folder** 1. Name your folder and click **Save** ## Renaming a folder 1. Go to your folder list 1. Click the **three-dot menu** next to the folder name 1. Select **Edit folder** 1. Change the name and click **Save** ## Adding tags to files Tags help you categorize and filter files across folders. ### Tag individual files 1. Open a media file 1. Click **More** in the top right 1. Select **Edit** 1. Type your tag name and press **Enter** 1. Click **Update** ### Tag multiple files at once 1. Go to a folder and select multiple files using the checkboxes 1. Click **More** then **Edit** 1. Add your tags and click **Update All** ## Removing tags To remove a tag, open the file edit menu, click the X next to the tag, and save. For bulk removal, select multiple files, edit, and remove the tag from all at once. ## Organization tips - **Use folders for projects:** One folder per research project, client, or meeting series - **Use tags for cross-cutting themes:** Tags like "urgent", "follow-up", or "reviewed" work across all folders - **Combine with automations:** Set up AI Chat automations per folder so every new file gets analyzed automatically - **Assign folders to team groups:** Control who can see which folders by assigning them to team groups Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Library](/help/library/) · [Saved views](/help/library/saved-views/) # Saved views > Define a named set of columns for a folder's file list, then switch between saved views in one click instead of retoggling. Source: https://docs.speakai.co/help/library/saved-views/ · Markdown: https://docs.speakai.co/help/library/saved-views/index.md ## What are saved column views? A saved column view lets you define a named set of columns for a folder's file list and switch between views with one click. Instead of toggling columns on and off every time you open a folder, you create a view once, for example, "Sentiment + Tags" or "Full details", and apply it whenever you need it. Views are stored per folder, so each folder can have its own collection. ## Opening the column panel 1. Open any folder in the table layout. 1. In the folder toolbar, click **Manage columns**. A side panel opens showing two sections: **Views** at the top, and the column list below it. ## Creating a new view 1. In the Manage columns panel, click **New View** in the Views section, or click **Save as View** at the bottom of the panel to save your current column selection. 1. Give the view a name. 1. Check **Set as default view** if you want this view to load automatically every time you open this folder. 1. Add or remove columns using the available column list, and drag them to reorder. 1. Click **Create view** to save. ## Switching between views The Views section at the top of the Manage columns panel lists all saved views for the folder alongside a **Default** option (which restores the standard column set). Click any view name to apply it immediately. A checkmark shows the active view. You can also switch views from the view selector dropdown in the folder toolbar without opening the full panel. ## Editing or deleting a view Hover over a view name in the panel and click the columns icon that appears. The view editor opens where you can rename it, change which columns are included, reorder them, or toggle the default setting. To remove the view entirely, click **Delete view** at the bottom of the editor. ## Why use views? - Quickly switch between a compact view for everyday browsing and a detailed view for analysis. - Include custom fields in a view so your team always sees the data that matters for a specific project. - Set a default view so the folder always opens exactly how your workflow requires. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Library](/help/library/) · [Folders](/help/library/folders/) # Spotlight search > Press Cmd+K or Ctrl+K anywhere in Speak AI to search full transcript text, file names, folders, insights and speaker names at once. Source: https://docs.speakai.co/help/library/search/ · Markdown: https://docs.speakai.co/help/library/search/index.md ## Spotlight Search Press **Cmd+K** (Mac) or **Ctrl+K** (Windows) anywhere in Speak AI to open Spotlight Search. This lets you instantly search across: - All your transcripts (full text search) - Media file names and descriptions - Folder names - Insights and keywords - Speaker names ## Search 1. Press **Cmd+K** or **Ctrl+K** (or click the search icon in the top bar) 1. Type your search term 1. Results appear instantly as you type 1. Click a result to jump directly to that file, transcript section, or folder ## Searching within a transcript When viewing a specific media file, you can search within that transcript: - Use the search bar above the transcript - Results highlight matching text in the transcript - Click on a match to jump to that section and start playback from there ## Filtering and advanced search From your media library or folder view, you can filter by: - **Media type:** Audio, video, or text - **Date range:** Find files from a specific period - **Speaker:** Find all files where a specific person spoke - **Sentiment:** Find files with positive or negative sentiment - **Tags:** Filter by custom tags you've applied - **Folders:** Search within specific folders ## Searching with AI Chat For more complex searches, use the AI Chat at the folder level: - "How many files are in this folder?" - "Show files from last week" - "Find all files tagged 'interview'" - "Find files where Gender is Male" (using custom fields) The AI Chat can combine searches with actions: "Find all sales calls from last month and export them as PDF." ## Search across all your transcripts and media ## Spotlight Search Press **Cmd+K** (Mac) or **Ctrl+K** (Windows) anywhere in Speak AI to open Spotlight Search. This lets you instantly search across: - All your transcripts (full text search) - Media file names and descriptions - Folder names - Insights and keywords - Speaker names ## Search 1. Press **Cmd+K** or **Ctrl+K** (or click the search icon in the top bar) 1. Type your search term 1. Results appear instantly as you type 1. Click a result to jump directly to that file, transcript section, or folder ## Searching within a transcript When viewing a specific media file, you can search within that transcript: - Use the search bar above the transcript - Results highlight matching text in the transcript - Click on a match to jump to that section and start playback from there ## Filtering and advanced search From your media library or folder view, you can filter by: - **Media type:** Audio, video, or text - **Date range:** Find files from a specific period - **Speaker:** Find all files where a specific person spoke - **Sentiment:** Find files with positive or negative sentiment - **Tags:** Filter by custom tags you've applied - **Folders:** Search within specific folders ## Searching with AI Chat For more complex searches, use the AI Chat at the folder level: - "How many files are in this folder?" - "Show files from last week" - "Find all files tagged 'interview'" - "Find files where Gender is Male" (using custom fields) The AI Chat can combine searches with actions: "Find all sales calls from last month and export them as PDF." Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Library](/help/library/) · [Folders](/help/library/folders/) # Tags > Add tags to recordings so you can filter and group them across folders, then apply or remove tags in bulk as things change. Source: https://docs.speakai.co/help/library/tags/ · Markdown: https://docs.speakai.co/help/library/tags/index.md You can add tags to files either individually or in bulk in Speak: ## Individually Visit your file and select "More" in the top right. Then, select "Edit" and a pop-up will appear. You can create new tags or select from a list of tags in the account. If you write the tag, hit "Enter" on your keyboard after to finalize it. Once done adding tags, you can hit "Update" and the tag will be saved. You can then see the Tag below your file name. ## Bulk Tag Adding You can follow the same process but instead of viewing an individual media file visit your folder and select "More" and "Edit" for the same pop-up and function. When you hit "Update", that will be saved across all files. ### Overview Keep your media library organized and efficient by easily removing outdated or incorrect tags from multiple files at once. This feature saves you time and effort, ensuring your media is accurately categorized. By cleaning up your tags in bulk, you can improve searchability and streamline your workflow, making it easier to find the media you need when you need it. ### How It Works You can select multiple files in your Media List View and use the bulk action menu to edit or remove tags. This allows for quick and efficient management of your media's metadata. ### Getting Started To access this feature, go to the **'Explore'** or **'Folder'** view where your files are listed in your dashboard. ### Step-By-Step Guide 1. **Navigate to Media:** Go to the 'Explore' or 'Folder' view where your files are listed. 1. **Select Files:** Click the checkboxes next to the files you want to update. To select all, click the top-left checkbox. 1. **Open Bulk Actions:** A menu will appear at the top of the list. Click **More** (three dots) or **Tags**. 1. **Select 'Remove Tags':** Choose the option to remove tags. 1. **Choose Tags to Remove:** A dialog will show common tags among selected files. Select the specific tags to delete or choose 'Remove All'. 1. **Confirm:** Click 'Update' or 'Remove' to finalize. ### Pro Tips - Use filters to find all files with a specific tag first, then select all to remove it in one go. ### Troubleshooting **Tags Reappear:** Refresh the page to ensure the cache is updated. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the 'Explore' or 'Folder' view. - **Select files** and use the bulk action menu to **remove tags**. - **Explore the options** to see how it fits your workflow. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Library](/help/library/) · [Folders](/help/library/folders/) # Meeting Assistant > The Meeting Assistant joins Zoom, Google Meet, Microsoft Teams and Webex calls to record, transcribe and summarize them. Source: https://docs.speakai.co/help/meeting-assistant/ · Markdown: https://docs.speakai.co/help/meeting-assistant/index.md The Meeting Assistant joins your Zoom, Google Meet, Microsoft Teams, and Webex calls, records them, and delivers speaker-labeled transcripts and summaries to your library. Connect a calendar once and it handles every meeting you tell it to. - **[Auto-join](/help/meeting-assistant/auto-join/)** - **[Customization](/help/meeting-assistant/customization/)** - **[Exclusions](/help/meeting-assistant/exclusions/)** - **[Folder routing](/help/meeting-assistant/folder-routing/)** - **[Google Calendar](/help/meeting-assistant/google-calendar/)** - **[Microsoft Calendar](/help/meeting-assistant/microsoft-calendar/)** - **[Recording controls](/help/meeting-assistant/recording-controls/)** - **[Summaries](/help/meeting-assistant/summaries/)** ## Meeting Assistant: complete setup and usage guide ## Supported platforms The Meeting Assistant works with: - **Zoom** - **Google Meet** - **Microsoft Teams** - **Webex** ## Setting up auto-join Connect your calendar so the Meeting Assistant automatically joins your calls: 1. Go to [Meeting Assistant](https://app.speakai.co/meeting-assistant) 1. Connect your **Google Calendar** or **Microsoft Outlook Calendar** 1. Configure auto-join settings for each platform ### Auto-join options (per platform) - **All Calendar Events** - Join every meeting with that platform's link - **Host Only** - Only join meetings you host - **Invited Assistant** - Only join when assistant@speakai.co is explicitly invited to the event - **No Meetings** - Don't auto-join for this platform ### Filtering meetings Create filters to skip certain meetings: - Filter by **event title** (contains or equals a keyword) - Filter by **attendee email** For example, skip all events titled "Lunch" or "Personal". ## Upcoming meetings The **Upcoming** tab lists all events from your connected calendar for the next 7 days. This includes every calendar event, not only ones the Meeting Assistant has been confirmed for. Past events and events beyond the 7-day window are hidden automatically. Each event row has a **Record** toggle that controls whether the assistant will join that specific meeting. The toggle is disabled for events that have no meeting link, the assistant can only join a call when a supported meeting URL is present in the calendar event. ## Instant join (no calendar) You can also have the assistant join any meeting on demand: 1. Click **Join Meeting** from the dashboard or Meeting Assistant page 1. Paste the meeting URL 1. The assistant joins within seconds ## Customizing your assistant From [Meeting Assistant Preferences](https://app.speakai.co/meeting-assistant): - **Name:** Change from "Speak AI Assistant" to your preferred name - **Image:** Upload a custom avatar - **Language:** Set the transcription language - **Folder:** Choose where recordings are saved (with routing rules by event title) - **Email summaries:** Send to yourself, all attendees, or nobody - **Media sharing:** Control who can view recordings (all attendees, team only, or private) ## During the meeting - The assistant joins and begins recording automatically - You can **pause** and **resume** recording at any time - Live transcription is available during the call - The assistant sends a chat message when joining ## After the meeting Once the meeting ends, the assistant automatically: 1. Uploads the recording to your specified folder 1. Transcribes the audio 1. Runs AI analysis (keywords, sentiment, speakers) 1. Sends email notifications based on your settings ## When the assistant leaves The assistant leaves automatically when: - All participants leave the meeting - It's stuck in the waiting room for more than 5 minutes - No participants join within 10 minutes - Silence is detected for more than 15 minutes - The recording reaches the maximum duration ## Troubleshooting - **Assistant didn't join:** Make sure the meeting URL is in the calendar event's Location or Description field. Check your auto-join settings for that platform. - **Stuck in waiting room:** The host needs to admit the assistant. It will wait up to 5 minutes before leaving. - **Recording permission denied:** On Zoom, the host must grant recording permission. The assistant will leave after 30 seconds if denied. - **Meeting requires registration:** The assistant cannot join meetings that require pre-registration or sign-in. - **Only bots detected:** If only bots are in the meeting for 10+ minutes, the assistant will leave to save resources. The Meeting Assistant is included free with all plans. Custom assistant name and image is available as a premium add-on. ## Can Zoom's scheduling features be used as an alternative to Calendly ## Speak AI vs. Booking Tools ### Overview Speak AI's Meeting Assistant is designed to automate the recording of your meetings. However, it's important to understand that it does not replace the functionality of a dedicated booking tool like Calendly. Think of it this way: Speak AI joins meetings that are already scheduled. You still need a separate system to allow people to book those meeting slots with you in the first place. ### How It Works Speak AI scans your integrated calendar (like Google Calendar or Outlook) for scheduled meetings. When it finds a meeting with a recognized link (e.g., a Zoom link), it automatically joins that meeting to record it. ### Getting Started To access this feature, go to [Integrations → Calendar](https://app.speakai.co/integrations/calendar/google) from side navigation. Connect to your calendar which has meeting events ### Clarification Here's how booking and recording work together: - **Booking:** A client uses a tool like Calendly to book a time slot. This booked event then appears on your personal calendar (e.g., Google Calendar or Outlook). - **Recording:** Speak AI monitors your calendar. When it detects a meeting with a joinable link, it automatically joins to record the session. - **Result:** These two functions are complementary. Your booking tool handles scheduling, and Speak AI handles recording. They are not interchangeable. ### Pro Tips To ensure Speak AI can find and join your meetings, make sure that the meeting link (e.g., Zoom link) is included in either the **"Location"** or **"Description"** field of your calendar event. ### Troubleshooting If the bot did not join a meeting, check the following: - **"Bot didn't join":** Verify if the meeting title matches any entries in your **"Keywords to Ignore"** list within the Meeting Assistant settings. ### Related Prompts/Features - Calendar Integration - Meeting Assistant ### Next Steps Ready to ensure your meetings are automatically recorded? - **Login to your account** and navigate to the Meeting Assistant settings. - **Integrate your calendar** to allow Speak AI to detect your scheduled meetings. - **Configure your event details** to include meeting links in the appropriate fields. Need help? Contact our support team or check out our other guides. Rolling this out to a team? [Book a demo](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo) and we'll set it up on your own calls. # Auto-join > Connect a calendar and the assistant joins matching calls on its own. What it joins, when it joins and how to stop it. Source: https://docs.speakai.co/help/meeting-assistant/auto-join/ · Markdown: https://docs.speakai.co/help/meeting-assistant/auto-join/index.md One of the most requested functionalities, our team is so excited to share that the Speak AI Meeting Assistant is now live. The Speak AI Meeting Assistant is available to you **free of cost.** ## What is the Speak AI Meeting Assistant? The Speak AI Meeting Assistant automatically joins your meetings and records, transcribes, and analyzes them. The image below shows the Speak AI Meeting Assistant in a team Zoom call (featuring our wonderful dog leader Teja 🐶). ## What Meeting Platforms Does It Work On? - Zoom - Microsoft Teams - Google Meet - Webex by Cisco ## What Are The Benefits Of The Meeting Assistant? - Save time and money transcribing and analyzing calls - No more waiting for recordings to be ready to upload to Speak - Never miss another meeting across major meeting platforms - Automatically build a library of valuable media to analyze - Improve your calls with confidence everything is documented ## How Can I Add the Meeting Assistant To My Meetings? All you have to do is give your meeting link to Speak in the app, and the Speak AI Meeting Assistant will join in seconds. **Step 1** You can do that from the dashboard in Speak by selecting "Join Meeting" from the Quick Actions panel: You can also visit the [dedicated Speak AI Meeting Assistant page](https://app.speakai.co/meeting-assistant). **Step 2** Once you click on "Join Meeting," the pop-up below will appear: You can add your Meeting title and URL from either Google Meet, Zoom, Microsoft Teams, or Webex. Within seconds, the Speak AI Meeting Assistant will join your meeting and immediately begin recording, transcribing and analyzing. [Get Your Meeting Assistant](https://app.speakai.co/meeting-assistant) ## Customize Your Speak AI Meeting Assistant 🎨 We have even allowed you to customize your Meeting Assistant's name and image to achieve a new level of personal and professional branding when capturing calls. Customizing your Meeting Assistant is available as a paid Premium Add-On. You can add this ability to your account by [visiting the in-app pricing page](https://app.speakai.co/pricing) and updating your subscription. *** **The Speak AI Meeting Assistant will leave the meeting automatically.** The Speak AI Meeting Assistant will automatically exit the meeting under the following circumstances: 1. **Waiting Room:** If the meeting has yet to start and participants are in the waiting room, the Assistant will **wait 5 minutes** and leave the meeting if no further action is taken. 1. **No Attendees:** If no participants have joined the meeting, the Assistant will exit the meeting automatically after waiting **5 minutes**. This ensures efficient use of the Assistant's presence in your meetings, optimizing its availability when participants are actively engaged. ## Meeting Assistant Default Rules: This describes when the meeting assistant joins and leaves your meeting. ### Notification & Maximum Recording Duration: 1. The maximum recording time starts from "**In Call Recording**" status. 1. Maximum Record time: **4 hours. (Up to 10 hours for subscribers)** 1. A notification message triggers from Speak to notify at **3 hours 55 minutes**. ### Automatic Leave: A meeting assistant bot leaves automatically after: | **Condition** | **Trigger Description** | **Timeout Duration** | **Activation Delay** | | --- | --- | --- | --- | | **Everyone Left the Meeting** | The system automatically leaves if all participants exit the meeting. | 1 second | Activates after **30 seconds** of everyone leaving. | | **Waiting Room Timeout** | If the meeting stays in the waiting room without starting. | 5 minutes | , | | **No One Joined the Meeting** | If no participants join after the meeting starts. | 10 minutes | , | | **Recording Permission Denied** | If the user or system denies recording permission. | 30 seconds | , | | **Silence Detection** | If silence is detected continuously during the meeting. | 15 minutes | Activates after **20 minutes** of meeting inactivity. | | **Bot Detection** | If the bot behavior is detected and no one is speaking on the call. | 10 minutes | Activates after **20 minutes** of meeting inactivity. | ## Meeting Assistant Rules ## Meeting Assistant Default Rules: This describes when the meeting assistant joins and leaves your meeting. ### Notification & Maximum Recording Duration: 1. The maximum recording time starts from "**In Call Recording**" status. 1. Maximum Record time: **4 hours. (Up to 10 hours for subscribers)** 1. A notification message triggers from Speak to notify at **3 hours 55 minutes**. ### Automatic Leave: A meeting assistant bot leaves automatically after: | **Condition** | **Trigger Description** | **Timeout Duration** | **Activation Delay** | | --- | --- | --- | --- | | **Everyone Left the Meeting** | The system automatically leaves if all participants exit the meeting. | 1 second | Activates after **30 seconds** of everyone leaving. | | **Waiting Room Timeout** | If the meeting stays in the waiting room without starting. | 5 minutes | , | | **No One Joined the Meeting** | If no participants join after the meeting starts. | 10 minutes | , | | **Recording Permission Denied** | If the user or system denies recording permission. | 30 seconds | , | | **Silence Detection** | If silence is detected continuously during the meeting. | 15 minutes | Activates after **20 minutes** of meeting inactivity. | | **Bot Detection** | If the bot behavior is detected and no one is speaking on the call. | 10 minutes | Activates after **20 minutes** of meeting inactivity. | Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Customization](/help/meeting-assistant/customization/) # Customization > Set the assistant's display name, avatar, join announcement and recording behavior before it appears in your calls. Source: https://docs.speakai.co/help/meeting-assistant/customization/ · Markdown: https://docs.speakai.co/help/meeting-assistant/customization/index.md Speak AI allows you to customize your Ai Meeting Assistant name and image if you have the "Meeting Assistant Customization" Premium Add-On in your subscription. If that is enabled, you can then visit this page: [https://app.speakai.co/profile/meeting-assistant-preferences](https://app.speakai.co/profile/meeting-assistant-preferences) Once there, select "Assistant Preferences" on the top right of the page. You can then update the name and upload an image to use as your assistant's image when joining calls. Once you hit saved, Speak will update your assistant. Here are **image size and quality instructions** for meeting assistant image in meeting platforms like Speak AI: *** ## Image Size and Quality Guidelines for Meeting Avatars - **Recommended Format:** JPEG - **Aspect Ratio:** 16:9 (landscape) - **Maximum Size:** 1280 x 720 pixels - **Maximum File Size:** 1.3 MB - **Quality:** High (JPEG quality ~85-95) - **Text:** Use bold text, minimum 50px font size for readability - **Design Tip:** Design at a larger resolution (e.g., 2560 x 1440 px) and then downscale for best sharpness and clarity *** ## Best Practices - Keep your branding clear and visible. - Avoid overly complex gradients or graphics that may lose detail. - Ensure images remain crisp when displayed at various resolutions. *** ## Safezone Guidelines Some meeting platforms (i.e. Google Meets) have adaptive participant video screen sizes. To ensure that your image is visible, we recommend the content be within the bounding box shown below: *The blue box is in the area which your content will be visible across all screen sizes* Further any questions or clarifications. Please contact support. ## Image Size and Quality Requirements for Meeting Assistants Here are **image size and quality instructions** for meeting assistant image in meeting platforms like Speak AI: *** ## Image Size and Quality Guidelines for Meeting Avatars - **Recommended Format:** JPEG - **Aspect Ratio:** 16:9 (landscape) - **Maximum Size:** 1280 x 720 pixels - **Maximum File Size:** 1.3 MB - **Quality:** High (JPEG quality ~85-95) - **Text:** Use bold text, minimum 50px font size for readability - **Design Tip:** Design at a larger resolution (e.g., 2560 x 1440 px) and then downscale for best sharpness and clarity *** ## Best Practices - Keep your branding clear and visible. - Avoid overly complex gradients or graphics that may lose detail. - Ensure images remain crisp when displayed at various resolutions. *** ## Safezone Guidelines Some meeting platforms (i.e. Google Meets) have adaptive participant video screen sizes. To ensure that your image is visible, we recommend the content be within the bounding box shown below: *The blue box is in the area which your content will be visible across all screen sizes* Further any questions or clarifications. Please contact support. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) # Exclusions > Exclude rules let an admin keep the Meeting Assistant out of named meetings, recurring events or whole calendars company-wide. Source: https://docs.speakai.co/help/meeting-assistant/exclusions/ · Markdown: https://docs.speakai.co/help/meeting-assistant/exclusions/index.md ## What exclude rules do Exclude rules let an admin stop the Speak AI Meeting Assistant from joining specific meetings across the whole company. This is useful when you never want the assistant to join a particular organization's calls, or any meeting a certain person schedules. ## Who can set them Exclude rules are a company-wide setting, so they are managed by team admins who have the Exclude Meetings permission. They live in the Meeting Assistant Global Settings, under **Exclude Meetings**. ## Add an exclude rule 1. Open the Meeting Assistant settings and go to **Global Settings**. 1. Find the **Exclude Meetings** section and click **Add rule**. 1. Choose what the rule matches on: an attendee email (for example scheduling@acme.com), an email domain (for example @acme.com), or a meeting link. 1. Enter the value to match. As you type, a live preview shows how many upcoming meetings the rule would exclude. 1. Each rule has its own toggle, so you can turn a rule on or off without deleting it. ## A note on Google Meet links Meeting-link rules work well for Zoom. Google Meet links do not identify an organization, so a Google Meet link would only match a single meeting. To exclude a whole company on Google Meet, use an attendee email or email domain rule instead. ## See what was excluded The **Excluded** tab lists the meetings the assistant skipped and the reason each one was excluded, so you can confirm your rules are doing what you expect. ## Need help? Message us on live chat in the app or email [success@speakai.co](mailto:success@speakai.co). Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) # Folder routing > Send recordings captured by the Meeting Assistant to a specific folder so meetings file themselves as soon as they finish. Source: https://docs.speakai.co/help/meeting-assistant/folder-routing/ · Markdown: https://docs.speakai.co/help/meeting-assistant/folder-routing/index.md You can choose this option by visiting Your Meeting Assistant Preferences Page: [https://app.speakai.co/meeting-assistant](https://app.speakai.co/meeting-assistant) From there, select "Assistant Preferences" and a pop-up will appear. You can then select the folder you want your files to go to by default. Create the additional routing for your folders to save the files. We will display your calendar events in the "Event Title" to help you select those events quickly. Select "Contains" or "Equal" to match your conditions. Moving forward, whenever your Meeting Assistant has a call, your file will be uploaded there. ## Choose Which Folder To Send Meeting Assistant Meetings To You can choose this option by visiting Your Meeting Assistant Preferences Page: [https://app.speakai.co/meeting-assistant](https://app.speakai.co/meeting-assistant) From there, select "Assistant Preferences" and a pop-up will appear. You can then select the folder you want your files to go to by default. Create the additional routing for your folders to save the files. We will display your calendar events in the "Event Title" to help you select those events quickly. Select "Contains" or "Equal" to match your conditions. Moving forward, whenever your Meeting Assistant has a call, your file will be uploaded there. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) # Google Calendar > Link Google Calendar so the Meeting Assistant sees your schedule and joins the calls you have chosen automatically. Source: https://docs.speakai.co/help/meeting-assistant/google-calendar/ · Markdown: https://docs.speakai.co/help/meeting-assistant/google-calendar/index.md Connect Google Calendar once and the Meeting Assistant sees your schedule and joins the calls you choose on Zoom, Google Meet, Microsoft Teams, or Webex. It records, transcribes, and summarizes each one into your library. - No bot invites to remember: auto-join handles it from your calendar - You decide which meetings it joins: everything, only ones you organize, or none by default - Recordings land in the folder you choose, transcribed with speakers labeled ## Connect your calendar 1. In Speak AI, open **Meeting Assistant** from the sidebar. 2. Select **Connect to Google** (or **Connect Calendar** in the banner). 3. Sign in with Google and allow calendar access. Speak AI reads event times and join links, nothing else. ![Meeting Assistant with Connect to Google and Connect to Outlook](/help/media/meeting-assistant/ma-calendar-connect.jpg) Your upcoming meetings appear once the calendar syncs. From here the assistant can join automatically or wait for you to send it per meeting. ## Choose which meetings it joins 1. Open **Assistant Preferences** (top right of the Meeting Assistant page), then **Auto-join settings for Google Calendar**. 2. Pick the rule that fits: join every meeting with a video link, only meetings you organize, or manual only. 3. To keep it out of specific meetings company-wide, an admin can add [exclusions](/help/meeting-assistant/exclusions/). ## Which meeting does a recording belong to? Each recording is matched to its calendar event, named after it, and filed by your [folder routing](/help/meeting-assistant/folder-routing/) rules, so a Tuesday of back-to-backs sorts itself. ## Why didn't the assistant join? The usual causes, in order: the meeting had no join link on the calendar event, auto-join rules excluded it, or the calendar disconnected (you'll see **Calendar unavailable** in Preferences; reconnect fixes it). Still stuck? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll get it joining your next call. --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) · [Microsoft Calendar](/help/meeting-assistant/microsoft-calendar/) · [Summaries](/help/meeting-assistant/summaries/) # Microsoft Calendar > Link Microsoft 365 or Outlook Calendar so the Meeting Assistant can join your scheduled Teams and Zoom calls automatically. Source: https://docs.speakai.co/help/meeting-assistant/microsoft-calendar/ · Markdown: https://docs.speakai.co/help/meeting-assistant/microsoft-calendar/index.md ## Step 1: Start the Connection - In your Speak application, click the “Connect” button next to Microsoft Calendar. ## Step 2: Grant the Required Permissions - When prompted, review and accept the following permissions to enable full calendar integration: * Calendars.Read: View your calendars and events. * offline_access: Maintain access even when you’re not actively using the app (so your events keep syncing). * (Optional, if your workflow needs email or user profile access): * User.Read: View your basic profile. * Mail.Read: View your email messages. - Note: If you do not provide all the required permissions, your calendar events will not sync fully. - If your an organization then ask your admin to approve the Speak AI Inc application ## Step 3: Fetching Your Events And Scheduling Meeting Assistants - Once permissions are granted, your events will be automatically fetched and displayed. - Meeting Assistants will be scheduled automatically ## Troubleshooting: If You Cannot Approve Permissions - If you see a message stating that you cannot grant the needed permissions: * Your organization’s admin may need to approve or whitelist the application (Speak AI Inc) within your Microsoft/Azure portal. * Please contact your IT administrator and provide them with the application details so they can enable access for your account. *** Tip: For admins/IT teams, ensure “Speak AI Inc” is allowed under Azure Active Directory > Enterprise Applications, and that the above permissions are approved for user consent.

Please contact support for any questions Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) # Recording controls > Control a live recording, pause it for a private moment, then analyze and share whatever the assistant captured afterwards. Source: https://docs.speakai.co/help/meeting-assistant/recording-controls/ · Markdown: https://docs.speakai.co/help/meeting-assistant/recording-controls/index.md ## Meeting Recording Workflow Never miss a crucial detail again. With Speak AI, you can control your recordings in real-time and share valuable information with just a few clicks. ### How It Works The meeting recording process is designed to be smooth. The assistant can join automatically or be initiated manually. You have the flexibility to pause and resume recordings to protect sensitive information. Once processed, recordings can be easily shared via a link or embed code. ### Getting Started To access this feature, go to **Meeting Assistant** in your dashboard. ### Steps Follow these steps to master your meeting recordings: 1. **Start:** The assistant joins automatically 1. **Pause/Resume:** In the dashboard's "Meeting Assistant" tab, locate the active call. Click **"Pause Recording"** to skip confidential information, and then **"Resume"** when it's safe to continue. 1. **End:** The bot will automatically leave the call when the Zoom meeting concludes. 1. **Share:** After processing, open the media file. Click **Share** and send the link to your attendees. ### Related Prompts/Features - Live Recording Control - Sharing ### Troubleshooting **"Bot kicked out":** If the host removes the bot from the meeting, the recording will stop immediately. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the **Meeting Assistant** tab. - **Try it out** by starting a new recording. - **Explore the sharing options** to distribute your insights. ## Recording, pausing, and sharing meetings ## Meeting Recording Workflow ### Overview Effortlessly manage your meeting recordings from start to finish. This guide will help you understand how to record, pause, analyze, and share your meeting insights, ensuring you capture all important discussions and can easily distribute them to your team. Never miss a crucial detail again. With Speak AI, you can control your recordings in real-time and share valuable information with just a few clicks. ### How It Works The meeting recording process is designed to be smooth. The assistant can join automatically or be initiated manually. You have the flexibility to pause and resume recordings to protect sensitive information. Once processed, recordings can be easily shared via a link or embed code. ### Getting Started To access this feature, go to **Meeting Assistant** in your dashboard. ### Steps Follow these steps to master your meeting recordings: 1. **Start:** The assistant joins automatically 1. **Pause/Resume:** In the dashboard's "Meeting Assistant" tab, locate the active call. Click **"Pause Recording"** to skip confidential information, and then **"Resume"** when it's safe to continue. 1. **End:** The bot will automatically leave the call when the Zoom meeting concludes. 1. **Share:** After processing, open the media file. Click **Share** and send the link to your attendees. ### Related Prompts/Features - Live Recording Control - Sharing ### Troubleshooting **"Bot kicked out":** If the host removes the bot from the meeting, the recording will stop immediately. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the **Meeting Assistant** tab. - **Try it out** by starting a new recording. - **Explore the sharing options** to distribute your insights. Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) # Summaries > Every recorded call returns a summary with decisions and action items, generated as soon as the transcript completes. Source: https://docs.speakai.co/help/meeting-assistant/summaries/ · Markdown: https://docs.speakai.co/help/meeting-assistant/summaries/index.md Getting automatic meeting summaries is easy. After selecting what folder your Meeting Assistant meetings go to (you can follow [this guide](/help/meeting-assistant/folder-routing/) to do that). Once done, you can visit Prompt Automation on this page: [https://app.speakai.co/automations](https://app.speakai.co/automations) You can then set up an automation to create a Meeting Summary every time a new file is added to the folder. **Here is how:** 1. Select "New automation" 1. Add a "Name" and "Description" 1. Select the Folder your Meeting Assistant recordings are going to 1. Select your "Assistant Type" (you can customize your own on this page) 1. Select or write your prompt. 1. Here is a default one for meeting summaries you can use: "Summarize the meeting with agenda, action items, and next steps. " 1. Select "Run type" and "Instant" so that it runs automatically every time a new recording is added to the folder. You can then hit "Update" and the Automation will be created. You will get a notification every time it runs. You can also view your AI Chat response on the History page here: [https://app.speakai.co/chat/history](https://app.speakai.co/chat/history) Here is a video guide for this process if you want a video tutorial: ### Overview Stop wasting time taking manual notes during meetings. Speak AI automates the process of recording, transcribing, and summarizing your team discussions. ### How It Works The workflow is simple: - **Record:** Use our Meeting Assistant to join your calls automatically or upload existing recordings. - **Analyze:** Speak AI transcribes your meeting and then uses "AI Chat" to extract key details like action items and summaries. - **Share:** Easily share the generated minutes with your team. ### Getting Started To access this feature, go to **Speak AI** in your dashboard. ### Step-By-Step Guide Follow these steps to generate your meeting minutes: 1. **Capture:** * Option A: Use the **Meeting Assistant** to join your call automatically. * Option B: Upload the recording manually. 1. **Analyze:** Once transcribed, run the "Meeting Minutes" predefined AI Chat. This extracts: * **Agenda Items** * **Key Decisions** * **Action Items** (Who needs to do what) 1. **Review & Edit:** Quickly verify the action items. 1. **Share:** Copy the AI Chat response and email it to the team, or share the link to the full transcript. ### Related Prompts/Features - Meeting Assistant - AI Chat ### Pro Tips Schedule the Meeting Assistant to auto-join all calendar events so you never miss a recording. ### Troubleshooting **Assistant Didn't Join:** Ensure the meeting URL was in the calendar invite 'Location' or 'Description' field. ### Next Steps Ready to streamline your meeting note-taking? Here's what to do next: - **Login to your account** and navigate to Speak AI. - **Try it out** by recording or uploading a meeting. - **Explore the AI Chat** to see how they can summarize your discussions. ## Get automatic meeting summaries Getting automatic meeting summaries is easy. After selecting what folder your Meeting Assistant meetings go to (you can follow [this guide](/help/meeting-assistant/folder-routing/) to do that). Once done, you can visit Prompt Automation on this page: [https://app.speakai.co/automations](https://app.speakai.co/automations) You can then set up an automation to create a Meeting Summary every time a new file is added to the folder. **Here is how:** 1. Select "New automation" 1. Add a "Name" and "Description" 1. Select the Folder your Meeting Assistant recordings are going to 1. Select your "Assistant Type" (you can customize your own on this page) 1. Select or write your prompt. 1. Here is a default one for meeting summaries you can use: "Summarize the meeting with agenda, action items, and next steps. " 1. Select "Run type" and "Instant" so that it runs automatically every time a new recording is added to the folder. You can then hit "Update" and the Automation will be created. You will get a notification every time it runs. You can also view your AI Chat response on the History page here: [https://app.speakai.co/chat/history](https://app.speakai.co/chat/history) Here is a video guide for this process if you want a video tutorial: ## Generate meeting minutes with Speak AI ## Generate Meeting Minutes ### Overview Stop wasting time taking manual notes during meetings. Speak AI automates the process of recording, transcribing, and summarizing your team discussions. This feature helps you capture all key information, identify action items, and ensure everyone is on the same page without the burden of manual note-taking. ### How It Works The workflow is simple: - **Record:** Use our Meeting Assistant to join your calls automatically or upload existing recordings. - **Analyze:** Speak AI transcribes your meeting and then uses "AI Chat" to extract key details like action items and summaries. - **Share:** Easily share the generated minutes with your team. ### Getting Started To access this feature, go to **Speak AI** in your dashboard. ### Step-By-Step Guide Follow these steps to generate your meeting minutes: 1. **Capture:** * Option A: Use the **Meeting Assistant** to join your call automatically. * Option B: Upload the recording manually. 1. **Analyze:** Once transcribed, run the "Meeting Minutes" predefined AI Chat. This extracts: * **Agenda Items** * **Key Decisions** * **Action Items** (Who needs to do what) 1. **Review & Edit:** Quickly verify the action items. 1. **Share:** Copy the AI Chat response and email it to the team, or share the link to the full transcript. ### Related Prompts/Features - Meeting Assistant - AI Chat ### Pro Tips Schedule the Meeting Assistant to auto-join all calendar events so you never miss a recording. ### Troubleshooting **Assistant Didn't Join:** Ensure the meeting URL was in the calendar invite 'Location' or 'Description' field. ### Next Steps Ready to streamline your meeting note-taking? Here's what to do next: - **Login to your account** and navigate to Speak AI. - **Try it out** by recording or uploading a meeting. - **Explore the AI Chat** to see how they can summarize your discussions. Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Meeting Assistant](/help/meeting-assistant/) · [Auto-join](/help/meeting-assistant/auto-join/) # Embeddable recorder > Collect audio and video from anyone through your website or a share link. Submissions upload and transcribe automatically. Source: https://docs.speakai.co/help/recorder/ · Markdown: https://docs.speakai.co/help/recorder/index.md The embeddable recorder collects audio and video from other people: customers, research participants, applicants. Put it on your site or share a link, ask questions alongside the recording, and every submission lands in your library transcribed and analyzed. ![The Recorder list with a demo recorder scoped to a folder](/help/media/recorder/recorder-index.jpg) - **[Browser support](/help/recorder/browser-support/)** - **[Custom CSS](/help/recorder/custom-css/)** - **[Custom domains](/help/recorder/custom-domain/)** - **[Downloads](/help/recorder/downloads/)** - **[Embedding](/help/recorder/embedding/)** - **[Field mapping](/help/recorder/field-mapping/)** - **[Limits](/help/recorder/limits/)** - **[Microphone and camera permissions](/help/recorder/permissions/)** - **[Pairing codes](/help/recorder/pairing-codes/)** - **[Questions](/help/recorder/questions/)** ## Create and use embeddable recorders ## What is the embeddable recorder? The embeddable recorder lets you collect audio and video recordings from anyone, directly on your website or through a shareable link. Recordings are automatically uploaded to your Speak AI library, transcribed, and analyzed. This is ideal for: - **Research interviews:** Let participants record responses at their own pace - **Customer feedback:** Collect voice-of-customer insights - **Surveys:** Add voice responses to your forms - **Testimonials:** Gather video testimonials from customers - **Education:** Collect student presentations or language assessments ## Creating a recorder 1. Go to [Recorder](https://app.speakai.co/recorder) in the sidebar 1. Click **New Recorder** 1. Configure your settings: * Recorder name and description * Audio only or audio + video * Custom questions and form fields * Password protection (optional) * Destination folder 1. Save your recorder ## Sharing your recorder You have two options: - **Shareable link:** Copy the direct URL and share it with anyone. They can record directly in their browser. - **Embed code:** Copy the iframe code and paste it into your website, landing page, or app. The recorder appears inline on your page. ## What happens when someone records 1. The user opens your recorder link or visits your embedded page 1. They fill out any form fields you configured 1. They record their audio or video 1. The recording is automatically uploaded to your Speak AI library 1. Speak transcribes and analyzes the recording 1. You receive a notification when it's ready ## Viewing submissions Recordings appear in the folder you specified during setup. Each submission includes the recording, transcript, insights, and any form field responses. ## Integration with webhooks and Zapier You can trigger webhooks when a new recording is submitted, allowing you to: - Send data to Airtable, Google Sheets, or your CRM - Notify your team on Slack - Trigger follow-up emails For browser compatibility details, check our [browser support article](/help/recorder/browser-support/). ## Create A Recorder In order to create a new shareable recorder, there are two options for navigating to the relevant page to get started.

Option 1: Click on the "New recorder" button under the Quick Actions section of the Dashboard. Option 2: On the left-hand side bar, **click on the "Recorder"** section under the "Share Embed" subheading. Then click on the "+ New recorder" button in the top right-hand corner. ## Step 1: Let's get Started On the "Let's get started" section of the new recorder, you have various customizable options. These include: - Adding a new name for the recorder - Adding a new description for the recorder - Selection of Recorder Options to to permit whether you want to collect audio recordings, video recording, local files or multiple uploads. - Selection of language to transcribe the submitted recordings**.** - A drop-down list to choose which folder you would like to assign the contents of your recorder too - A drop-down list to assign the recorder to a specific team member - Moreover, customize the minimum and maximum length of the recordings as per requirements. - A checkbox allowing Speak to automatically transcribe and analyze your submissions when you receive them - A checkbox to notify you when you've received a new recording Configure your recorder to your liking and press the "Save" button on the top to proceed. ## Step 2: Information To Collect On the "Information to collect" page, you have the option to add questions that will be prompted for whoever interacts with your recorder. "Name" and "Email" are default prompts that can be deselected by clicking on the checkboxes to the left of the question. You can add an all new question by pressing the "+ Add question" button. If you decide you no longer want to include your questions, click the "X" button to the right of the relevant text box. A modal of "Add Question" will pop up, where you can define the question and desired type of answer. Once you click on "Add" button, the question will be added below and you can edit or delete it anytime. *Add Question Modal* You can add multiple questions in the same way by clicking on "Add Question" button. When you are ready to proceed, click on the "Next" button on the right. ## Step 3: Customize Branding On the "Customize Branding" page, you are given options to change the Logo and Brand Color that will appear on your recorder. When you are ready to proceed, click on the "Next" button on the right. ## Step 4: Share Recorder On the final "Share" page, you are given two options for sharing your recorder with the world. The first is a link that will direct anyone it is shared with to your recorder. The second is an iframe that can be placed on your personal webpage, and applicants can apply their recordings directly from your page. Once you have copied and shared your provided links, you can either click the "Finish" button to save your recorder or the "Create a new recorder" button to save and start the process all over again. Collecting recordings at scale for research or hiring? [Book a demo](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo) and we'll build a recorder for your use case. # Browser support > Chrome, Edge, Firefox, Safari, Opera and Vivaldi on desktop, plus iOS and Android mobile browsers, with minimum versions. Source: https://docs.speakai.co/help/recorder/browser-support/ · Markdown: https://docs.speakai.co/help/recorder/browser-support/index.md The Speak embeddable audio and video recorder has been built to be compatible as listed below: 1. Desktop PC * Microsoft Edge 12+ * Google Chrome 28+ * Mozilla Firefox 22+ * Safari 11+ * Opera 18+ * Vivaldi 1.9+ * Brave 1. Android * Google Chrome 28+ (enabled by default since 29) * Mozilla Firefox 24+ * Opera Mobile 12+ 1. Chrome OS 1. Firefox OS 1. BlackBerry 10 1. iOS * MobileSafari/WebKit (iOS 11+) 1. Tizen 3.0 Besides those compatibility requirements, we see some edge cases on old devices and browsers; we do our absolute best. If you have any problems, send us a note, and we will identify ways to correct any errors for you. ## What browser does the embeddable recorder support The Speak embeddable audio and video recorder has been built to be compatible as listed below: 1. Desktop PC * Microsoft Edge 12+ * Google Chrome 28+ * Mozilla Firefox 22+ * Safari 11+ * Opera 18+ * Vivaldi 1.9+ * Brave 1. Android * Google Chrome 28+ (enabled by default since 29) * Mozilla Firefox 24+ * Opera Mobile 12+ 1. Chrome OS 1. Firefox OS 1. BlackBerry 10 1. iOS * MobileSafari/WebKit (iOS 11+) 1. Tizen 3.0 Besides those compatibility requirements, we see some edge cases on old devices and browsers; we do our absolute best. If you have any problems, send us a note, and we will identify ways to correct any errors for you. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Embeddable recorder](/help/recorder/) · [Custom CSS](/help/recorder/custom-css/) # Custom CSS > Restyle recorder buttons, cards, inputs, dropdowns, media players, waveforms and dialogs to match your own brand. Source: https://docs.speakai.co/help/recorder/custom-css/ · Markdown: https://docs.speakai.co/help/recorder/custom-css/index.md This guide shows how to customize the appearance of recorder components using simple CSS. You can customize buttons, cards, inputs, dropdowns, media players, waveforms, and dialogs. *** ## What you can customize You can restyle every recorder element using the following CSS classes: | **Component** | **CSS Class** | **Description** | | --- | --- | --- | | Primary Buttons | **`.sp-custom-primary-btn`** | Start, Stop, Submit, Upload, Record again, etc. | | Secondary Buttons | **`.sp-custom-secondary-btn`** | Cancel, Back actions | | Card Containers | **`.sp-custom-card`** | Wrappers for grouped content | | Input Fields | **`.sp-custom-input`** | Text or password inputs | | Dropdowns | **`.sp-custom-dropdown`** | Custom select inputs | | Waveform | **`.sp-custom-waveform`** | Audio waveform visualization | | Audio Player | **`.sp-custom-audio-player`** | Embedded audio playback controls | | Video Player | **`.sp-custom-video-player`** | Video playback controls | | Dialogs | **`.sp-custom-dialog`** | Confirmation or modal windows | | Titles | **`.sp-custom-`title-\* (1 to 6)** | Title headings (different sizes for h1-h6) | | Description | **`.sp-custom-`desc** | Recorder Description Text | *** ## How Custom CSS works The recorder automatically detects and applies your custom CSS rules if you define them using the class names listed above. - You can override **colors, typography, borders, padding, animation, and shadows**. - You **don’t need to use `.important`**; the recorder gives your custom classes higher priority. - Only appearance changes, core functionality remains the same. *** ```text /* ================================================================ SPEAK RECORDER – CUSTOM BUTTON STYLES This master block includes: • Primary & Secondary button styles • Hover, Focus, Active and Disabled states • Responsive sizing (for mobile / desktop) • spacing, and brand-style design • Optional shadows and gradient backgrounds ================================================================ */ /* Title - Simple Example */ /* This styles the main recorder title (h3 heading level) */ /* Available classes: sp-custom-title-1 through sp-custom-title-6 for different heading sizes */ .sp-custom-title-3 { color: #0F0F0F; font-family: 'Poppins', sans-serif; font-size: 1.75rem; font-weight: 600; margin-bottom: 16px; } /* This styles the recorder description text that appears below the title */ .sp-custom-desc { color: #666666; font-family: 'Poppins', sans-serif; font-size: 1rem; font-weight: 400; line-height: 1.6; margin-bottom: 20px; } /* Primary Button - Simple Example */ .sp-custom-primary-btn { background-color: #0F0F0F; color: white; border: none; border-radius: 8px; padding: 12px 24px; font-family: 'Poppins', sans-serif; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; } .sp-custom-primary-btn:hover { background-color: #545454; } /* Secondary Button - Simple Example */ .sp-custom-secondary-btn { background-color: transparent; color: #0F0F0F; border: 2px solid #0F0F0F; border-radius: 8px; padding: 10px 22px; font-family: 'Poppins', sans-serif; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; } .sp-custom-secondary-btn:hover { background-color: #FAFAFA; } /* Card - Simple Example */ .sp-custom-card { background-color: #FAFAFA; border: 1px solid #E0E0E0; border-radius: 8px; padding: 16px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } /* Input Field - Simple Example */ .sp-custom-input { border: 1px solid #E0E0E0; border-radius: 4px; padding: 8px 12px; background-color: white; font-family: 'Poppins', sans-serif; font-size: 14px; color: #0F0F0F; } .sp-custom-input:focus { border-color: #0F0F0F; outline: 2px solid rgba(15, 15, 15, 0.2); outline-offset: 2px; } /* Dropdown - Simple Example */ .sp-custom-dropdown { border: 1px solid #E0E0E0; border-radius: 4px; background-color: white; font-family: 'Poppins', sans-serif; } .sp-custom-dropdown:focus { border-color: #0F0F0F; outline: 2px solid rgba(15, 15, 15, 0.2); outline-offset: 2px; } /* Waveform - Simple Example */ .sp-custom-waveform { background-color: #FAFAFA; border: 1px solid #E0E0E0; border-radius: 4px; height: 80px; width: 100%; } /* Audio Player - Simple Example */ .sp-custom-audio-player { width: 100%; height: 40px; border-radius: 4px; } /* Video Player - Simple Example */ .sp-custom-video-player { width: 100%; height: auto; border-radius: 8px; background-color: #000000; } /* Dialog - Simple Example */ .sp-custom-dialog { background-color: white; border-radius: 8px; padding: 24px; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15); } ``` *** ## Best practices for writing your CSS Use these guidelines to avoid common issues when creating your own styles. - **Target the provided classes**: Use the specific custom classes (\`.sp-custom-primary-btn\`, \`.sp-custom-secondary-btn\`, etc.) instead of very broad selectors like \`button { … }\`, so you only affect recorder components. - **Test in light and dark themes**: Choose colors with enough contrast so text remains readable on both light and dark backgrounds. - **Always define hover and focus states**: This improves clarity and keyboard accessibility. - **Design clear disabled buttons**: Disabled buttons should look different and clearly non-clickable. - **Use transitions sparingly**: Small transitions (0.2 to 0.3s) are usually enough and keep the interface feeling fast. - **Avoid rules that break functionality**: Do not hide components or block interactions. Avoid rules that break functionality, like hiding buttons or blocking clicks: ```text /* Avoid this – it breaks the UI */ .sp-custom-primary-btn { display: none; pointer-events: none; } ``` *** ## Troubleshooting your custom CSS If your styles do not look right, try these checks: - **Make sure the selector name is spelled exactly**: \`.sp-custom-primary-btn\`, \`.sp-custom-secondary-btn\`, \`.sp-custom-card\`, \`.sp-custom-input\`, \`.sp-custom-dropdown\`, \`.sp-custom-waveform\`, \`.sp-custom-audio-player\`, \`.sp-custom-video-player\`, or \`.sp-custom-dialog\`. - Check for missing semicolons **`;`** or braces **`}`** in your CSS. - If some default styling still appears, try setting all related properties explicitly (background, border, padding, font, etc.) in your rule. - Refresh your page without cache (for example, Ctrl+Shift+R or Cmd+Shift+R) to be sure you see the latest changes. If problems continue, share your CSS and a screenshot with support so they can help you adjust the rules without changing your integration. ### Overview By default, text fields in the recorder might automatically capitalize the first letter of your input. This can be inconvenient for fields like notes or custom questions where you need precise control over capitalization. This guide shows you how to disable this automatic capitalization for specific input fields, giving you more flexibility when entering information. ### How It Works You can control the auto-capitalization behavior using Custom CSS. By adding a specific code snippet to your recorder settings, you instruct the browser not to force capitalization on text inputs. Keep in mind that while this CSS will prevent the browser from automatically capitalizing text, some mobile keyboards may still default to capitalizing the first letter. This behavior is typically controlled by the user's device settings. ### Getting Started To access this feature, go to [Recorder → Settings](/help/recorder/custom-css/) in your dashboard. ### Configuration Follow these steps to disable auto-capitalization: 1. Navigate to **Recorder** > **Settings**. 1. Scroll down to the **Custom CSS** section. 1. Add the following CSS code: ```css input, textarea { text-transform: none .important; } ``` 1. **Save** your settings. ### Next Steps Ready to get started? - **Login to your account** and navigate to the Recorder settings. - **Add the Custom CSS** provided in this guide. - **Save your changes** and test it out on your input fields. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Custom domains > Serve a Speak AI recorder from your own domain so the capture experience stays on your brand from link to submission. Source: https://docs.speakai.co/help/recorder/custom-domain/ · Markdown: https://docs.speakai.co/help/recorder/custom-domain/index.md Follow these steps to set up a custom domain for your Speak AI service (Recorder, Player, or Library). The process is the same for all service types. ### Step 1: Add Your Domain 1. Go to **Settings** → **Custom Domains** 1. Select your service type (**Recorder**, **Player**, or **Library**) 1. Enter your custom domain (e.g., **`recorder.yourdomain.com`**, **`player.yourdomain.com`**, or **`library.yourdomain.com`**) * Do not include **`http://`** or **`https://`** * Do not include trailing slashes ### Step 2: Add DNS Records After adding your domain, you’ll receive **2 CNAME records** that need to be added to your domain’s DNS settings. **How to add:** 1. Log in to your domain provider’s DNS management panel 1. Find the DNS records section 1. Add the first CNAME record with the name and value provided by Speak AI 1. Add the second CNAME record with the name and value provided by Speak AI 1. Save the changes **NOTE: Ensure the Proxy Status is set to DNS Only.** **Note:** Copy the exact values provided - they must match exactly. If the second CNAME record is not immediately available, check back in a few minutes. ### Step 3: Wait for Verification Once you’ve added both CNAME records: 1. **DNS Propagation:** DNS changes can take 5-15 minutes to propagate (sometimes up to 48 hours) 1. **Automatic Verification:** Speak AI automatically checks your DNS records every 2 minutes. You’ll see status updates in your dashboard: * **Pending:** DNS records not yet verified * **Verified:** DNS records verified, processing * **Active:** Domain is ready to use **Total time:** Typically 30-60 minutes from when DNS records are added, but can take up to 2 hours. *** ### Issue: DNS records not verifying **Possible causes:** 1. **DNS propagation delay:** Wait 15-30 minutes after adding records 1. **Incorrect values:** Double-check that you copied the CNAME values exactly (including trailing dots if present) 1. **Wrong record type:** Ensure you’re adding CNAME records, not A records 1. **Subdomain vs root domain:** If using a subdomain (e.g., **`recorder.domain.com`**), add the CNAME at the subdomain level **Solution:** - Verify records using DNS lookup tools (e.g., **`dig`** or online DNS checkers) - Ensure the CNAME value matches exactly what Speak AI provided - Try manually triggering verification from the dashboard ### Issue: SSL certificate is not issuing **Possible causes:** 1. SSL validation CNAME not added correctly 1. DNS propagation delay 1. Certificate validation taking longer than expected **Solution:** - Verify the SSL validation CNAME record is added correctly - Wait up to 30 minutes for certificate validation - Check that the SSL CNAME name and value match exactly ### Checking Your Domain Status You can check your domain status at any time: 1. Go to **Settings** → **Custom Domains** 1. Find your domain in the list 1. Check the status indicators: * **Domain CNAME:** Shows if verified (green checkmark) * **SSL Certificate:** Shows status (Pending, Issued, Failed) * **CloudFront Status:** Shows deployment status * **Overall Status:** Pending, Verified, or Active ### Remove a custom domain If you need to remove a custom domain: 1. Go to **Settings** → **Custom Domains** 1. Find the domain you want to remove 1. Click **Delete** or **Remove** 1. The system will automatically: * Remove the domain from CloudFront * Clean up the SSL certificate (if not in use elsewhere) * Remove the domain from your account *** ### Important Notes - **One domain per service:** You can only have one active custom domain per service type at a time - **DNS propagation:** DNS changes can take time to propagate globally - **Automatic processing:** The system automatically verifies and activates domains - no manual steps needed after adding DNS records - **HTTPS only:** Custom domains are configured for HTTPS only - **CloudFront deployment:** Each domain gets its own CloudFront distribution, which takes 15-30 minutes to deploy ### Need Help? If you encounter any issues: 1. Check the domain status in your dashboard 1. Verify your DNS records are correct using DNS lookup tools 1. Wait for DNS propagation (up to 48 hours in rare cases) 1. Contact Speak AI support with: * Your domain name * The DNS records you added * Screenshots of your DNS configuration * Any error messages you’re seeing Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Downloads > Download the raw audio or video a respondent submitted, individually or in bulk, from the recorder's submissions list. Source: https://docs.speakai.co/help/recorder/downloads/ · Markdown: https://docs.speakai.co/help/recorder/downloads/index.md You can visit your recorder on this page: [https://app.speakai.co/recorder](https://app.speakai.co/recorder) Then, click on the recorder that has received files and you will see a list of the recordings. You can hit the little download icon to download it. Alternatively, you can click on the arrow to listen to it directly in the app. Pro-tip: you can assign your recorder to a folder. If you do that, all the recordings will automatically add to that recorder and you will be able to download the files in bulk. To download the responses to your embeddable recorder, first navigate to the recorders page by clicking "Recorder" under the "Embed" subheading of the left-hand sidebar. \*Tip: You can see how many responses each recorder has in the "Responses" column. Now, you can select which recorder you want to download responses from. You will then be provided with a list of each separate recording. Click on the Download button of the specific reaction to download that recording to your local drive. ## Download Recorder Recordings You can visit your recorder on this page: [https://app.speakai.co/recorder](https://app.speakai.co/recorder) Then, click on the recorder that has received files and you will see a list of the recordings. You can hit the little download icon to download it. Alternatively, you can click on the arrow to listen to it directly in the app. Pro-tip: you can assign your recorder to a folder. If you do that, all the recordings will automatically add to that recorder and you will be able to download the files in bulk. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Embedding > Add the Speak AI recorder to any page. Includes the fix for Wix and Webflow, which strip microphone and camera permissions. Source: https://docs.speakai.co/help/recorder/embedding/ · Markdown: https://docs.speakai.co/help/recorder/embedding/index.md If the Embed recorder is not working on your site, such as Wix or Webflow, please follow the following steps. Usually, websites like Wix or Webflow remove the Microphone and Camera permission which creates an issue for a recorder on any browser. Please include the below script to include the permission in your iFrame dynamically. ```html ``` Please ensure to include the above script to **End of the Body** to include the permission to all the iFrames on the page. ## For Wix: Here're a few steps to follow for the Wix website.

Go to **Settings** and scroll to **Advanced**(the last section), and you can see Custom Code.

Include the **`script`** code under the **`body - END`** option.

That will ask you to apply on all the pages or specific pages. ## Iframe Controls - Quick Start Guide ## 5-Minute Quick Start, Speak AI Recorder Embed *** [Test Embed Iframe](https://recorder.speakai.co/assets/embed-tester.html) ### Step 1: Basic Iframe Embedding ```html ``` *** ### Step 2: Add Query Parameters ```html ``` *** ### Step 3: Add PostMessage Control ```js // Get iframe reference const iframe = document.querySelector('iframe'); // Start recording iframe.contentWindow.postMessage({ action: 'start' }, 'https://recorder.speakai.co'); // Stop recording iframe.contentWindow.postMessage({ action: 'stop' }, 'https://recorder.speakai.co'); // Listen for responses window.addEventListener('message', (event) => { if (event.origin !== 'https://recorder.speakai.co') return; const response = JSON.parse(event.data); console.log('Response:', response); }); ``` *** ### ⚙️ Query Parameters Reference | **Parameter** | **Type** | **Default** | **Description** | | --- | --- | --- | --- | | hideWaveform | boolean | false | Hide audio waveform visualization | | hideTitle | boolean | false | Hide title/header text | | submitLabel | string | "Upload" | Custom submit button text | | hideSubmit | boolean | false | Hide submit button | | preselect | string | "audio" \| "video" \| "upload" \| "screenshare" | Pre-select recording type | | name | string | "" | Pre-fill name field | | email | string | "" | Pre-fill email field | | folderId | string | "" | Pre-fill folder ID | | field1 - field10 | string | "" | Pre-fill custom question answers (up to 10) | ### Examples ```text Hide waveform: ?hideWaveform=true Hide title: ?hideTitle=true Custom button: ?submitLabel=Send%20Recording All combined: ?hideWaveform=true&hideTitle=true&submitLabel=Complete Pre-select recording type: ?preselect=video Pre-fill name: ?name=John%20Doe Pre-fill email: ?email=john.doe@example.com Pre-fill folder ID: ?folderId=123456 Pre-fill custom question answers: ?field1=Answer%201&field2=Answer%202&field3=Answer%203 ``` *** ### 🔄 PostMessage API Reference ### Commands (Parent → Iframe) ```js // Start recording { action: 'start', timestamp: Date.now() // optional } // Stop recording { action: 'stop', timestamp: Date.now() // optional } ``` ### Responses (Iframe → Parent) ```js // Success { source: 'speak-embed-recorder', status: 'success', message: 'Recording started', timestamp: '2025-10-09T10:30:00.000Z', data: { action: 'start' } } // Error { source: 'speak-embed-recorder', status: 'error', message: 'Recording already in progress', timestamp: '2025-10-09T10:30:00.000Z' } ``` *** ### 💡 Common Patterns ### Pattern 1: Minimal UI ```html ``` ### Pattern 2: Custom Branding ```html ``` ### Pattern 3: External Controls ```html
Ready
``` *** ### ⚙️ Troubleshooting ### Iframe Not Loading ```js const iframe = document.querySelector('iframe'); console.log('Iframe loaded:', iframe.contentWindow !== null); iframe.addEventListener('load', () => { console.log('Iframe loaded successfully'); }); ``` ### PostMessage Not Working ```js const iframe = document.querySelector('iframe'); console.log('Iframe found:', iframe !== null); console.log('ContentWindow:', iframe.contentWindow); function sendDebugMessage(action) { console.log('Sending:', action); iframe.contentWindow.postMessage({ action: action }, '*'); console.log('Message sent'); } sendDebugMessage('start'); ``` ### Parameters Not Applied ```js const iframe = document.querySelector('iframe'); console.log('Iframe src:', iframe.src); const url = new URL(iframe.src); console.log('hideWaveform:', url.searchParams.get('hideWaveform')); console.log('hideTitle:', url.searchParams.get('hideTitle')); console.log('submitLabel:', url.searchParams.get('submitLabel')); ``` *** ### ⚛️ Framework Examples ### React ```js import { useEffect, useRef } from 'react'; function RecorderEmbed({ token }) { const iframeRef = useRef(null); useEffect(() => { const handleMessage = (event) => { if (event.origin !== 'https://recorder.speakai.co') return; const response = JSON.parse(event.data); console.log('Recorder:', response); }; window.addEventListener('message', handleMessage); return () => window.removeEventListener('message', handleMessage); }, []); const startRecording = () => { iframeRef.current?.contentWindow.postMessage({ action: 'start' }, 'https://recorder.speakai.co'); }; const stopRecording = () => { iframeRef.current?.contentWindow.postMessage({ action: 'stop' }, 'https://recorder.speakai.co'); }; return (
` }) export class RecorderComponent implements OnInit, OnDestroy { @ViewChild('recorder') iframeElement: ElementRef; iframeUrl = 'https://recorder.speakai.co/iframe/TOKEN?hideWaveform=true'; ngOnInit() { window.addEventListener('message', this.handleMessage); } ngOnDestroy() { window.removeEventListener('message', this.handleMessage); } handleMessage = (event: MessageEvent) => { if (event.origin !== 'https://recorder.speakai.co') return; const response = JSON.parse(event.data); console.log('Recorder:', response); }; startRecording() { const iframe = this.iframeElement.nativeElement as HTMLIFrameElement; iframe.contentWindow.postMessage({ action: 'start' }, 'https://recorder.speakai.co'); } stopRecording() { const iframe = this.iframeElement.nativeElement as HTMLIFrameElement; iframe.contentWindow.postMessage({ action: 'stop' }, 'https://recorder.speakai.co'); } } ``` *** ### Support For issues or questions: 1. Check the troubleshooting section above 1. Review the full test plan document 1. Use the test embedder page to debug 1. Check the browser console for error messages 1. Contact us at **[success@speakai.co](mailto:success@speakai.co)** New to Speak AI? [Create a Speak AI account](https://speakai.co/?utm_source=docs&utm_medium=referral&utm_campaign=help&utm_content=help-article-embed-a-recorder-on-your-site) and work through Getting Started. ## Iframe controls ## 5-Minute Quick Start, Speak AI Recorder Embed *** [Test Embed Iframe](https://recorder.speakai.co/assets/embed-tester.html) ### Step 1: Basic Iframe Embedding ```html ``` *** ### Step 2: Add Query Parameters ```html ``` *** ### Step 3: Add PostMessage Control ```js // Get iframe reference const iframe = document.querySelector('iframe'); // Start recording iframe.contentWindow.postMessage({ action: 'start' }, 'https://recorder.speakai.co'); // Stop recording iframe.contentWindow.postMessage({ action: 'stop' }, 'https://recorder.speakai.co'); // Listen for responses window.addEventListener('message', (event) => { if (event.origin !== 'https://recorder.speakai.co') return; const response = JSON.parse(event.data); console.log('Response:', response); }); ``` *** ### ⚙️ Query Parameters Reference | **Parameter** | **Type** | **Default** | **Description** | | --- | --- | --- | --- | | hideWaveform | boolean | false | Hide audio waveform visualization | | hideTitle | boolean | false | Hide title/header text | | submitLabel | string | "Upload" | Custom submit button text | | hideSubmit | boolean | false | Hide submit button | | preselect | string | "audio" \| "video" \| "upload" \| "screenshare" | Pre-select recording type | | name | string | "" | Pre-fill name field | | email | string | "" | Pre-fill email field | | folderId | string | "" | Pre-fill folder ID | | field1 - field10 | string | "" | Pre-fill custom question answers (up to 10) | ### Examples ```text Hide waveform: ?hideWaveform=true Hide title: ?hideTitle=true Custom button: ?submitLabel=Send%20Recording All combined: ?hideWaveform=true&hideTitle=true&submitLabel=Complete Pre-select recording type: ?preselect=video Pre-fill name: ?name=John%20Doe Pre-fill email: ?email=john.doe@example.com Pre-fill folder ID: ?folderId=123456 Pre-fill custom question answers: ?field1=Answer%201&field2=Answer%202&field3=Answer%203 ``` *** ### 🔄 PostMessage API Reference ### Commands (Parent → Iframe) ```js // Start recording { action: 'start', timestamp: Date.now() // optional } // Stop recording { action: 'stop', timestamp: Date.now() // optional } ``` ### Responses (Iframe → Parent) ```js // Success { source: 'speak-embed-recorder', status: 'success', message: 'Recording started', timestamp: '2025-10-09T10:30:00.000Z', data: { action: 'start' } } // Error { source: 'speak-embed-recorder', status: 'error', message: 'Recording already in progress', timestamp: '2025-10-09T10:30:00.000Z' } ``` *** ### 💡 Common Patterns ### Pattern 1: Minimal UI ```html ``` ### Pattern 2: Custom Branding ```html ``` ### Pattern 3: External Controls ```html
Ready
``` *** ### ⚙️ Troubleshooting ### Iframe Not Loading ```js const iframe = document.querySelector('iframe'); console.log('Iframe loaded:', iframe.contentWindow !== null); iframe.addEventListener('load', () => { console.log('Iframe loaded successfully'); }); ``` ### PostMessage Not Working ```js const iframe = document.querySelector('iframe'); console.log('Iframe found:', iframe !== null); console.log('ContentWindow:', iframe.contentWindow); function sendDebugMessage(action) { console.log('Sending:', action); iframe.contentWindow.postMessage({ action: action }, '*'); console.log('Message sent'); } sendDebugMessage('start'); ``` ### Parameters Not Applied ```js const iframe = document.querySelector('iframe'); console.log('Iframe src:', iframe.src); const url = new URL(iframe.src); console.log('hideWaveform:', url.searchParams.get('hideWaveform')); console.log('hideTitle:', url.searchParams.get('hideTitle')); console.log('submitLabel:', url.searchParams.get('submitLabel')); ``` *** ### ⚛️ Framework Examples ### React ```js import { useEffect, useRef } from 'react'; function RecorderEmbed({ token }) { const iframeRef = useRef(null); useEffect(() => { const handleMessage = (event) => { if (event.origin !== 'https://recorder.speakai.co') return; const response = JSON.parse(event.data); console.log('Recorder:', response); }; window.addEventListener('message', handleMessage); return () => window.removeEventListener('message', handleMessage); }, []); const startRecording = () => { iframeRef.current?.contentWindow.postMessage({ action: 'start' }, 'https://recorder.speakai.co'); }; const stopRecording = () => { iframeRef.current?.contentWindow.postMessage({ action: 'stop' }, 'https://recorder.speakai.co'); }; return (
` }) export class RecorderComponent implements OnInit, OnDestroy { @ViewChild('recorder') iframeElement: ElementRef; iframeUrl = 'https://recorder.speakai.co/iframe/TOKEN?hideWaveform=true'; ngOnInit() { window.addEventListener('message', this.handleMessage); } ngOnDestroy() { window.removeEventListener('message', this.handleMessage); } handleMessage = (event: MessageEvent) => { if (event.origin !== 'https://recorder.speakai.co') return; const response = JSON.parse(event.data); console.log('Recorder:', response); }; startRecording() { const iframe = this.iframeElement.nativeElement as HTMLIFrameElement; iframe.contentWindow.postMessage({ action: 'start' }, 'https://recorder.speakai.co'); } stopRecording() { const iframe = this.iframeElement.nativeElement as HTMLIFrameElement; iframe.contentWindow.postMessage({ action: 'stop' }, 'https://recorder.speakai.co'); } } ``` *** ### Support For issues or questions: 1. Check the troubleshooting section above 1. Review the full test plan document 1. Use the test embedder page to debug 1. Check the browser console for error messages 1. Contact us at **[success@speakai.co](mailto:success@speakai.co)** New to Speak AI? [Create a Speak AI account](https://speakai.co/?utm_source=docs&utm_medium=referral&utm_campaign=help&utm_content=help-article-iframe-controls-quick-start-guide) and work through Getting Started. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Field mapping > Link each recorder question to a Speak AI field so every submission populates structured data you can filter and export. Source: https://docs.speakai.co/help/recorder/field-mapping/ · Markdown: https://docs.speakai.co/help/recorder/field-mapping/index.md Please follow the steps below to map your answers for each recording question to the individual fields for further analysis and review. ## Step 1: 1. Go to the recorder and the questions tab. 1. Create a new question or open the existing Question. 1. You will see a **Map Answer to Field (Optional)**input. ## Step 2: 1. You will see your existing fields 1. Create your new field (if it does not exist) ## Step 3: 1. Map your Question to be similar to the field. 1. Select the field to which you want to save your answer. **When you receive the recording - it will automatically link to the Media File.** Click on "Columns" and add your "Fields" to the display to review all the responses related to the recorder questions at a glance. ## Overview Speak AI helps you collect information more effectively by allowing you to connect the questions you ask in your recorder directly to specific fields. This ensures that the data you gather is organized and easy to use, making it simpler to manage and analyze your customer interactions. ## How It Works You can map custom questions from your recorder to various fields, such as Name, Email, or custom fields you've created. This process ensures that answers to specific questions are automatically saved into the corresponding fields. ## Getting Started To map fields, navigate to **Recorder** and select your recorder. Then, go to the **Questions** tab. ## Configuration Follow these steps to map your fields: 1. Add a new question or edit an existing one. 1. Locate the **Sync to Field** option. 1. Select the destination field from the dropdown menu (e.g., Name, Email, Custom Field). 1. Save your changes. ## Retroactive Syncing If you have existing data that wasn't mapped when it was collected, you can sync it retroactively: 1. Open the specific Question settings. 1. Click **Sync answers to field**. 1. Confirm the action to update all previous answers to the selected field. This ensures that both future and past data are correctly organized in your Speak AI dashboard. ## Next Steps Ready to organize your data more effectively? Here's what to do next: - **Login to your account** and navigate to your Recorder settings. - **Map your custom questions** to relevant fields. - **Sync past answers** if needed to ensure all your data is organized. ## Recorder Field Mapping ## Overview Ensure your recorder questions accurately capture and send data to the correct Speak AI fields. This helps you organize and analyze your feedback effectively. Proper mapping prevents data loss or misinterpretation, making your reporting more reliable and actionable. ## How It Works When you create questions in your recorder, you can map them to specific fields in Speak AI. This ensures that the answers users provide are stored in the intended places for easy retrieval and analysis. ## Troubleshooting If your recorder questions are not mapping correctly to Speak AI fields, check the following common issues: ## Data Type Mismatch Ensure the **Question Type** matches the **Field Type**. For example, mapping a "Text" question to a "Date" field may fail or result in empty values. ## Field Sync Not Activated Mapping is not retroactive by default. If you changed a mapping *after* responses were collected, you must manually trigger a sync: - Go to **Recorder** > **Questions**. - Click **Sync answers to field** for the specific question. ## Duplicate Field Names Check if you have multiple custom fields with the exact same name. The system might be mapping to the wrong one. Rename fields to be unique if necessary. ## Browser Cache Clear your browser cache and refresh the dashboard to ensure you are seeing the latest data and settings. ## Getting Started To access and manage your recorder questions and field mappings, go to [Survey→ Questions](https://app.speakai.co/recorder/create) in your Survey Creation. ## Next Steps Ready to ensure your data is mapping correctly? Here's what to do next: - **Login to your account** and navigate to the Recorder section. - **Review your existing question mappings** for any potential issues. - **Test a new question** to confirm it maps to the correct Speak AI field. ## Troubleshooting recorder field mapping ## Field Mapping Issues ### Overview Ensuring your custom recorder questions accurately map to your analysis fields is crucial for getting meaningful insights from your customer feedback. When these fields don't align, your data can become messy, making it difficult to analyze trends or identify areas for improvement. This guide helps you quickly identify and fix common mapping problems, so you can trust the data you see in your reports and make informed decisions with confidence. ### How It Works When you set up your custom recorder, you ask questions to gather specific information from your users. Each question needs to be linked to a corresponding field in your analysis system. If this link is broken or incorrect, the data from that question won't appear in the right place, or at all. ### Step-By-Step Fixes Follow these steps to resolve common field mapping issues: - **Check Field Types:** Make sure the type of data you're asking for matches the type of field it's being sent to. For example, a question asking for a date should be mapped to a 'Date' field, not a 'Text' field. - **Unique Names:** Avoid using the exact same name for multiple questions. This can confuse the system when trying to map responses. - **Field IDs:** Open your Recorder settings and carefully check the `fieldId` for each question. This ID must exactly match the corresponding field in your internal database or CRM. - **Hidden Fields:** If you're using hidden fields, ensure there aren't duplicates that might be overriding the visible fields you intend to use. ### Pro Tips To make mapping easier and ensure data consistency: - Use 'Radio Buttons' or 'Dropdowns' for questions instead of 'Text' inputs. This helps standardize the answers, making them easier to map correctly. ### Troubleshooting If you notice data is missing from your analysis: - **Data Missing:** Double-check if the user actually filled out the optional field in the recorder. ### Next Steps Ready to ensure your data is mapping correctly? - **Login to your account** and navigate to your Custom Recorder settings. - **Review your questions** and their corresponding field IDs, paying close attention to data types. - **Test your recorder** with a few submissions to confirm data is appearing as expected in your analysis. Need further assistance? Contact our support team or explore our other help articles. Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. ## Overview Ensure your recorder questions accurately capture and send data to the correct Speak AI fields. This helps you organize and analyze your feedback effectively. Proper mapping prevents data loss or misinterpretation, making your reporting more reliable and actionable. ## How It Works When you create questions in your recorder, you can map them to specific fields in Speak AI. This ensures that the answers users provide are stored in the intended places for easy retrieval and analysis. ## Troubleshooting If your recorder questions are not mapping correctly to Speak AI fields, check the following common issues: ## Data Type Mismatch Ensure the **Question Type** matches the **Field Type**. For example, mapping a "Text" question to a "Date" field may fail or result in empty values. ## Field Sync Not Activated Mapping is not retroactive by default. If you changed a mapping *after* responses were collected, you must manually trigger a sync: - Go to **Recorder** > **Questions**. - Click **Sync answers to field** for the specific question. ## Duplicate Field Names Check if you have multiple custom fields with the exact same name. The system might be mapping to the wrong one. Rename fields to be unique if necessary. ## Browser Cache Clear your browser cache and refresh the dashboard to ensure you are seeing the latest data and settings. ## Getting Started To access and manage your recorder questions and field mappings, go to [Survey→ Questions](https://app.speakai.co/recorder/create) in your Survey Creation. ## Next Steps Ready to ensure your data is mapping correctly? Here's what to do next: - **Login to your account** and navigate to the Recorder section. - **Review your existing question mappings** for any potential issues. - **Test a new question** to confirm it maps to the correct Speak AI field. Need help? Contact our support team or check out our other guides. ### Overview Ensuring your custom recorder questions accurately map to your analysis fields is crucial for getting meaningful insights from your customer feedback. When these fields don't align, your data can become messy, making it difficult to analyze trends or identify areas for improvement. ### How It Works When you set up your custom recorder, you ask questions to gather specific information from your users. Each question needs to be linked to a corresponding field in your analysis system. If this link is broken or incorrect, the data from that question won't appear in the right place, or at all. ### Step-By-Step Fixes Follow these steps to resolve common field mapping issues: - **Check Field Types:** Make sure the type of data you're asking for matches the type of field it's being sent to. For example, a question asking for a date should be mapped to a 'Date' field, not a 'Text' field. - **Unique Names:** Avoid using the exact same name for multiple questions. This can confuse the system when trying to map responses. - **Field IDs:** Open your Recorder settings and carefully check the `fieldId` for each question. This ID must exactly match the corresponding field in your internal database or CRM. - **Hidden Fields:** If you're using hidden fields, ensure there aren't duplicates that might be overriding the visible fields you intend to use. ### Pro Tips To make mapping easier and ensure data consistency: - Use 'Radio Buttons' or 'Dropdowns' for questions instead of 'Text' inputs. This helps standardize the answers, making them easier to map correctly. ### Troubleshooting If you notice data is missing from your analysis: - **Data Missing:** Double-check if the user actually filled out the optional field in the recorder. ### Next Steps Ready to ensure your data is mapping correctly? - **Login to your account** and navigate to your Custom Recorder settings. - **Review your questions** and their corresponding field IDs, paying close attention to data types. - **Test your recorder** with a few submissions to confirm data is appearing as expected in your analysis. Need further assistance? Contact our support team or explore our other help articles. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Limits > Maximum recording length is set by your plan. Longer limits are available on request for research and interview use cases. Source: https://docs.speakai.co/help/recorder/limits/ · Markdown: https://docs.speakai.co/help/recorder/limits/index.md Currently, we limit the recording based on different **[pricing plans](https://speakai.co/pricing/?utm_source=docs&utm_medium=referral&utm_campaign=help)**. If you have custom needs, you can reach out to us and we will make adjustments so that you can extend the time longer if that is valuable for you. We've had the pause button enabled in the past but on certain devices and browsers there is a timeout not in our control that sometimes would corrupt files. To ensure people don't lose their recordings we've turned off the pause. They can listen back to ensure it's good before submitting and restart if they want. We've continued to explore the best way to re-add the pause but for the moment it's a risk and people get very upset when they lose their recordings. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Pairing codes > Pairing codes let a Speak AI recorder app on a device connect to a specific recorder in your account and upload into it. Source: https://docs.speakai.co/help/recorder/pairing-codes/ · Markdown: https://docs.speakai.co/help/recorder/pairing-codes/index.md ## What are recorder pairing codes? Pairing codes let a Speak AI native recorder app on a device connect to a specific recorder you have created in your account. When pairing codes are enabled, each new recorder you create automatically receives a unique 6-digit code. You enter that code in the native app to link it to the correct recorder and folder. ## Enabling pairing codes in your account 1. Click your avatar or name and go to **Account Preferences** (path: `/profile/preferences`). 1. Find the **Recorder Pairing Codes** section. 1. Toggle the switch on. The preference saves automatically. Once the toggle is on, any recorder you create from that point forward will have a pairing code generated for it automatically. ## Finding the pairing code for a recorder 1. Open the recorder from the **Recorders** list. 1. Go to the **Share** tab. 1. Scroll to the **Pair a Device** section. The 6-digit code is displayed in large monospace text. 1. Click **Copy** to copy it to your clipboard, then enter it in the native recorder app on your device. If no code is shown yet, click **Generate Pairing Code** to create one. ## Rotating a pairing code Click **Generate New Code** in the Pair a Device section. A confirmation dialog warns you that the current code will be invalidated, any device already paired will need to enter the new code to re-pair. Confirm to proceed. ## Recorders created before the toggle was enabled Recorders created before you turned on Recorder Pairing Codes will not have a code automatically. Open the recorder, go to the Share tab, and click **Generate Pairing Code** to add one. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Microphone and camera permissions > Grant browser access to the microphone and camera so the embeddable recorder can capture audio and video from your visitors. Source: https://docs.speakai.co/help/recorder/permissions/ · Markdown: https://docs.speakai.co/help/recorder/permissions/index.md ### Desktop 1. Open Chrome. 1. Click the three-dot menu in the top right and select **Settings**. 1. Go to **Privacy and security** > **Site settings**. 1. Click either **Camera** or **Microphone**. 1. Under Permissions, review your blocked and allowed sites. 1. If Speak AI is under "Blocked," select it and change to **Allow**. 1. Reload the page for changes to take effect. *** ### Chrome Pop-Up Method (Quick) 1. When prompted by Chrome, click **Allow** for camera and microphone access in the pop-up under the address bar. 1. If you don't see the pop-up, you can follow the steps in the desktop section above. *** ### Android 1. Open Chrome and visit the Speak AI website. 1. Tap the lock icon beside the address bar. 1. Tap **Site settings**. 1. Under the Permissions section, tap **Camera** or **Microphone** and select **Allow**. 1. Refresh the page. *** ### iOS (iPhone/iPad) 1. Open the Chrome app, go to the Speak AI website. 1. When prompted, tap **Allow** for camera/microphone. 1. If previously denied, go to device **Settings** > scroll to **Chrome** > enable **Camera** and **Microphone** permissions. *** ### Desktop 1. Open Firefox and go to the Speak AI site. 1. When prompted, you can click **Allow** in the pop-up to enable the camera/microphone. 1. To manually adjust permissions: * Click the padlock icon in the address bar. * Click the right arrow for **More information**. * In the **Permissions** tab, set **Camera** and **Microphone** to **Allow**. 1. Alternatively, go to Firefox menu > **Settings** > **Privacy & Security** > **Permissions** to manage global defaults. 1. Reload the page after making changes. ### Mobile 1. Visit Speak AI in Firefox Mobile. 1. When prompted, you can tap **Allow**. 1. If previously denied, go into the browser's **Settings** > **Site permissions** > find Speak AI, and enable **Camera/Microphone**. *** ### Mac (Desktop) 1. Open Safari and go to Speak AI. 1. Click **Safari** in the top menu > **Settings** (or **Preferences**). 1. Navigate to the **Websites** tab. 1. Click **Camera** and **Microphone** in the sidebar. 1. Besides Speak AI, set to **Allow**. 1. Restart Safari for the settings to take effect. ### iPhone/iPad 1. Visit Speak AI in Safari. 1. When prompted, tap **Allow** for camera/microphone access. 1. If you do not get the prompt or previously denied, tap the " a " in the address bar > **Website Settings**. 1. Find **Camera/Microphone** and select **Allow**. 1. To manage app-level permissions: Go to iOS **Settings** > **Safari** > **Camera/Microphone** and allow as needed. *** ## For Edge, Opera, Vivaldi - Follow steps similar to Chrome: Go to **Settings** > **Site Settings** > **Camera/Microphone**, and adjust for Speak AI. - On mobile, permissions are often within the app settings or via the address bar security icon. ## Troubleshooting and Tips - Always reload the page after changing permissions. - If you use a managed device (school/work), you may need admin help to adjust permissions. - If using an IFrame, ensure both parent/embedded domains have permissions set to **Allow**. - Sometimes, clearing the browser’s cache or restarting your device helps if changes do not apply. - On mobile browsers, check both browser and device settings for app-level permissions. *** ## Quick Links - [Google Chrome Camera/Mic Permissions Guide (Official)](https://support.google.com/chrome/answer/2693767?hl=en&co=GENIE.Platform=Desktop) - [Mozilla Firefox Camera/Mic Permissions Guide (Official)](https://support.mozilla.org/en-US/kb/how-manage-your-camera-and-microphone-permissions) - [Safari, Enabling Camera/Mic (Apple Support)](https://help.doxy.me/en/articles/836274-camera-and-microphone-permission-safari) Ensuring these permissions are active will allow Speak AI to access your camera and microphone for a smooth audio and video recording experience. If you still have trouble after following these steps, consult your device’s specific support resources or contact Speak AI support for further assistance. ## Overview To use the embedded video and audio recorder, your browser needs permission to access your camera and microphone. This ensures you can easily capture media directly within our platform. If you've accidentally denied these permissions, don't worry. You can quickly re-enable them to start recording. ## How It Works The recorder relies on your browser's built-in media capabilities. When you first try to use it, your browser will prompt you to grant access to your camera and microphone. If this access is blocked, the recorder won't be able to capture any audio or video. ## Getting Started When the recorder loads for the first time, your browser will display a popup asking for permission to use your camera and microphone. Click **Allow** to grant access. If you previously denied these permissions, follow these steps: - Click the **Lock icon** or **Settings icon** located in your browser's address bar, next to the website URL. - Find the settings for **Camera** and **Microphone**. - Change the permission from **Block** to **Allow** or **Ask**. - **Refresh the page** for these changes to take effect. ## Configuration For the media recorder to function correctly, ensure your website is served over **HTTPS**. Most modern browsers require a secure connection to access camera and microphone features for user privacy and security. ## Next Steps Ready to start recording? - **Ensure your browser permissions are set to "Allow"** for camera and microphone access. - **Refresh the page** if you've just updated your browser settings. - **Try out the recorder** to capture your first video or audio clip. If you encounter any issues, please contact our support team for assistance. Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Questions > Ask respondents questions alongside their recording, using short text, multi-line text, choice and rating answer types. Source: https://docs.speakai.co/help/recorder/questions/ · Markdown: https://docs.speakai.co/help/recorder/questions/index.md ## Adding questions to a recorder Your recorder can ask respondents questions alongside their recording. To set them up: 1. Open the recorder and go to the **Questions** tab. 1. Click **Add Question**. 1. Enter the question text, choose an **answer type**, optionally map it to a field, and mark it required if needed. 1. Save the question. ## Available answer types You can choose from: - **Single Line**:a short text answer - **Multiple Line**:a longer, free-form written answer - **Checkbox**:choose more than one option - **Radio Button**:choose one option - **Dropdown**:choose one option from a list - **Date** and **Date & Time** Respondents always record their audio or video answer. These question types capture the structured details you want to collect alongside that recording. ## Multi-line and advanced types need a paid plan **Single Line** is available on every plan. **Multiple Line** and the other answer types (Checkbox, Radio Button, Dropdown, Date, Date & Time) are part of recorder customization on our paid plans. If a type is locked, you will see **Upgrade to unlock additional answer types** under the answer-type menu. Upgrading turns all of them on. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). You can request the user's **name and email**with the Speak embeddable audio and video recorder. You can include your **customized questions**and users' needs to submit answers before initiating a recording. When the user submits a recording through the embeddable recorder, you will see their information and where they were when they submitted the recording. You can click on a button to open and play the recording easily. *** ### Allow to download the recording: If you want your users to download the recording - you can pass the query parameter as [https://recorder.speakai.co/your-custom-url](https://recorder.speakai.co/your-custom-url)?**isDownload=true** ### Preselect the recording types and redirect to the recorder page: Skip the recording selection screen by passing **preselect** values in the query parameters: preselect=audio (for audio recording) preselect=video (for video recording) preselect=upload (for file upload) preselect=screenshare (for screen sharing) [https://recorder.speakai.co/your-custom-url](https://recorder.speakai.co/your-custom-url)?**preselect=audio** Please ensure the value matches. ### Enter name-email or folderId questionnaire dynamically: If you already have your customer's name and email address, you can automatically fill in the information by passing the value in the query. [https://recorder.speakai.co/your-custom-url](https://recorder.speakai.co/your-custom-url)?**email=**[test@gmail.com](mailto:test@gmail.com)**&name=**your-customer-name&**folderId=**58285018 Ensure the folderId matches the Speak folderId. It won't ask them to re-enter the questions and skip the questionnaire screen automatically. ### Prefill your dynamic questionnaire dynamically: If you already have your question's answer on the form you would like to collect - you can automatically fill up the information by passing the value in the query. [https://recorder.speakai.co/your-custom-url](https://recorder.speakai.co/your-custom-url)?**field1=**first-q**&field2=**second-q You can keep adding **field1 and field2,** and all the information will populate back to the Speak. It won't ask them to re-enter the questions and skip the questionnaire screen automatically. ### Redirect to the page After submitting a recording, you can redirect a page to your targeted link. Include `redirectUrl` as a query parameter in your recording query. Example: [https://recorder.speakai.co/your-custom-url](https://recorder.speakai.co/your-custom-url)?**redirectUrl=[https://speakai.co](https://speakai.co)** Once the recording is completed, it will automatically redirect to the assigned link. *** If you have other information you hope to collect, please send us a message through the in-app live chat, and we will set up the options for you. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Embeddable recorder](/help/recorder/) · [Browser support](/help/recorder/browser-support/) # Security > Encryption in transit and at rest, access control, retention limits, sub-processors and the certifications Speak AI holds. Source: https://docs.speakai.co/help/security/ · Markdown: https://docs.speakai.co/help/security/index.md Your recordings are business records: customer conversations, research data, meetings you can't repeat. Speak AI treats them that way. Data is encrypted in transit and at rest , access is controlled at the [team level](/help/teams/permissions/), and deletion is yours to control: files you delete enter a 7-day recovery window, then are permanently removed {/* fact:security.deletion */}. Speak AI has served research teams, healthcare organizations, and enterprises since 2018; 250,000+ people and teams use it, rated 4.9 on G2. ## The questions security reviews ask **Where does my data live, and who can see it?** Your workspace's data is isolated to your account; inside it, [groups and permissions](/help/teams/permissions/) control which teammates see which folders. **Is my data used to train AI models?** See the [third-party data privacy policy](/help/security/policies/third-party-data-privacy/) for the contractual position on sub-processors and data use. **Can I redact sensitive content?** Exports can redact names, emails, locations, brands, and dates. *(Language coverage documented after middleware verification.)* **What happens when I delete data?** [Data deletion](/help/account/data-deletion/): 7-day soft delete, then permanent removal. ## The policy library The complete set of 41 security, privacy, and governance policies is published and searchable: [Policies](/help/security/policies/). Encryption, access management, incident response, business continuity, retention, and the corporate policies procurement asks for. ## Running a security review? Send us your questionnaire, or talk it through directly: [book a security review call](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=security-review). We answer procurement and compliance questions for a living. --- Related: [Policies](/help/security/policies/) · [Data deletion](/help/account/data-deletion/) · [Groups and permissions](/help/teams/permissions/) # Policies > Policies in Speak AI. Source: https://docs.speakai.co/help/security/policies/ · Markdown: https://docs.speakai.co/help/security/policies/index.md The complete library of Speak AI security, privacy, and governance policies, published for security reviews and procurement. Questions about any of them: [talk to us](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=security-review). - **[Acceptable use policy](/help/security/policies/acceptable-use/)** - **[Access management policy](/help/security/policies/access-management/)** - **[Anti-bribery and anti-corruption policy](/help/security/policies/anti-bribery-anti-corruption/)** - **[Anti-competitive practices policy](/help/security/policies/anti-competitive-practices/)** - **[Asset management policy](/help/security/policies/asset-management/)** - **[Business continuity plan](/help/security/policies/business-continuity-plan/)** - **[Change management policy](/help/security/policies/change-management/)** - **[Cloud hosting compliance policy](/help/security/policies/cloud-hosting-compliance/)** - **[Collaborative computing policy](/help/security/policies/collaborative-computing/)** - **[DMZ security policy](/help/security/policies/dmz-security/)** - **[Data classification policy](/help/security/policies/data-classification/)** - **[Disaster recovery plan](/help/security/policies/disaster-recovery-plan/)** - **[ESG policy](/help/security/policies/esg/)** - **[Encrypted communications policy](/help/security/policies/encrypted-communications/)** - **[Encryption policy](/help/security/policies/encryption/)** - **[Ethical sourcing policy](/help/security/policies/ethical-sourcing/)** - **[Fraud detection and prevention policy](/help/security/policies/fraud-detection-prevention/)** - **[Health and safety compliance policy](/help/security/policies/health-safety-compliance/)** - **[Human resource policy](/help/security/policies/human-resource/)** - **[Incident reporting and response policy](/help/security/policies/incident-reporting-response/)** - **[Information classification policy](/help/security/policies/information-classification/)** - **[Information security program policy](/help/security/policies/information-security-program/)** - **[Internal compliance and ethics program](/help/security/policies/internal-compliance-ethics-program/)** - **[Internet of Things security policy](/help/security/policies/internet-things-security/)** - **[Log management policy](/help/security/policies/log-management/)** - **[Modern slavery policy](/help/security/policies/modern-slavery/)** - **[Network device hardening standards](/help/security/policies/network-device-hardening-standards/)** - **[Network security policy](/help/security/policies/network-security/)** - **[Network segmentation policy](/help/security/policies/network-segmentation/)** - **[Offsite backup storage policy](/help/security/policies/offsite-backup-storage/)** - **[Pandemic and infectious disease plan](/help/security/policies/pandemic-infectious-disease-plan/)** - **[Password policy](/help/security/policies/password/)** - **[Physical security policy](/help/security/policies/physical-security/)** - **[Records retention policy](/help/security/policies/records-retention/)** - **[Remote network access policy](/help/security/policies/remote-network-access/)** - **[Sanctions compliance policy](/help/security/policies/sanctions-compliance/)** - **[Service continuity policy](/help/security/policies/service-continuity/)** - **[Third-party data privacy policy](/help/security/policies/third-party-data-privacy/)** - **[Third-party security policy](/help/security/policies/third-party-security/)** - **[Vulnerability management policy](/help/security/policies/vulnerability-management/)** - **[Wireless security policy](/help/security/policies/wireless-security/)** # Acceptable use policy > What customers and staff may and may not do with Speak AI systems, accounts and data. Source: https://docs.speakai.co/help/security/policies/acceptable-use/ · Markdown: https://docs.speakai.co/help/security/policies/acceptable-use/index.md **1. Purpose**

This Acceptable Use Policy (AUP) outlines the responsible use of Speak AI Inc.’s information systems, networks, and assets to protect company resources, ensure compliance, and prevent misuse. **2. Scope**

This policy applies to all employees, contractors, third-party vendors, and any individuals granted access to Speak AI Inc.'s systems, devices, applications, and data. **3. Acceptable Use Guidelines** **3.1 General Responsibilities** - Users must act responsibly and ethically when accessing company systems. - Company resources must be used for business purposes only unless otherwise authorized. - Any activity that jeopardizes the security, integrity, or availability of Speak AI’s systems is strictly prohibited. **3.2 Data Protection & Confidentiality** - Users must comply with the **Data Classification Policy** regarding handling sensitive information. - Personally identifiable information (PII) and customer data must be protected and not shared outside authorized personnel. - Data encryption must be used where applicable. **3.3 Network & System Security** - Users must not bypass security controls, such as firewalls, VPNs, or access restrictions. - Unauthorized scanning, monitoring, or tampering with networks, servers, or data is strictly prohibited. - Personal devices used for company purposes must comply with security requirements outlined in the **Remote Network Access Policy**. **3.4 Email & Communication Guidelines** - Emails must be used for professional communication; phishing or social engineering attempts should be reported immediately. - Unsolicited bulk emails (spam), harassment, or offensive content transmission is prohibited. - Users must not impersonate others or misrepresent Speak AI in any way. **3.5 Internet & Software Usage** - Users must not access, download, or distribute illegal, offensive, or unauthorized content. - Only approved and licensed software may be installed on Speak AI systems. - The use of personal cloud storage or unauthorized file-sharing services is prohibited. **3.6 Physical & Endpoint Security** - Devices must be locked when unattended to prevent unauthorized access. - Lost or stolen devices must be reported immediately to **success@speakai.co**. - Company-issued devices must only be used by authorized users. **4. Prohibited Activities** - Attempting unauthorized access to systems or data. - Engaging in fraudulent or illegal activities. - Disabling or circumventing security controls. - Using company resources for personal gain without authorization. **5. Monitoring & Enforcement** - Speak AI reserves the right to monitor system usage to ensure compliance. - Violations may result in disciplinary action, including termination of access or employment. - Users must report suspected violations to **success@speakai.co**. **6. References & Supporting Documents** - Speak AI **Data Classification Policy**: [/help/security/policies/data-classification/](/help/security/policies/data-classification/) - Speak AI **Remote Network Access Policy**: [/help/security/policies/remote-network-access/](/help/security/policies/remote-network-access/) - Speak AI **Encryption Policy**: [/help/security/policies/encryption/](/help/security/policies/encryption/) **7. Contact Information** For any questions regarding this policy, contact **success@speakai.co**. *** This policy will be reviewed periodically to align with best practices and compliance requirements. # Access management policy > How access to Speak AI systems is granted, reviewed and revoked, including least privilege and joiner-mover-leaver handling. Source: https://docs.speakai.co/help/security/policies/access-management/ · Markdown: https://docs.speakai.co/help/security/policies/access-management/index.md **1. Purpose and Scope**

The purpose of this Access Management Policy is to establish guidelines and procedures for managing access to Speak AI Inc.'s ("Speak AI") information systems and data. This policy aims to ensure that access is granted appropriately based on the principle of least privilege and that it is managed and monitored effectively to protect the confidentiality, integrity, and availability of information. *** **2. Policy Statement**

Speak AI is committed to protecting its information assets by ensuring that access to its systems and data is controlled and restricted to authorized individuals only. This policy outlines the processes for granting, reviewing, and revoking access, as well as the responsibilities of all users in maintaining secure access controls. *** **3. User Access Management** - **User Account Creation:** Access to Speak AI’s internal systems and data will only be granted to individuals with a legitimate business need. - **Authentication:** All users must authenticate using strong authentication methods, including complex passwords and, where applicable, multi-factor authentication (MFA). Speak AI supports MFA through Google Workspace and is expanding additional authentication integrations. - **Authorization:** Access rights will be assigned based on the user's role and responsibilities, ensuring adherence to the principle of least privilege. - **Security Controls:** Security measures are in place to prevent unauthorized access, including rate-limiting authentication attempts and automated detection of suspicious login behavior. *** **4. Access Reviews and Audits** - **User Access Reviews:** * Standard user accounts are reviewed **quarterly** to ensure appropriate access levels. * Privileged user accounts undergo **monthly** reviews to maintain strict security controls. - **Audit Logs:** Speak AI maintains detailed audit logs of access to critical systems and data. Logs are reviewed at the following frequencies: * **Real-time monitoring** through automated security tools (AWS Security Hub, GitHub Dependabot). * **Daily log analysis** for security insights. * **Weekly security reviews** for compliance verification. * **Comprehensive monthly audits** to detect anomalies and patterns. *** **5. Access Revocation** - **Termination of Access:** Access rights will be revoked immediately upon termination of employment or contract. Managers are responsible for notifying the IT Security Team to deactivate accounts and remove access. - **Role Changes:** Access rights will be adjusted appropriately if a user changes roles within the organization. This ensures that users retain access only to the resources necessary for their new role. *** **6. Privileged Access Management** - **Definition of Privileged Access:** Privileged access refers to accounts with elevated permissions that allow for administrative control over systems and data. - **Controls for Privileged Accounts:** * Privileged accounts must be strictly controlled and monitored. * Users with privileged access must use separate accounts for administrative tasks and regular activities. - **Monitoring and Review:** * Privileged account usage is logged and reviewed. * Privileged access reviews are conducted **monthly**. *** **7. Remote Access** - **Multi-Factor Authentication (MFA):** Remote access requires multi-factor authentication to ensure an additional layer of security. - **Encrypted Communications:** Secure protocols such as TLS 1.2+ are used for all remote connections. *** **8. Third-Party Access** - **Vendor and Partner Access:** Third-party vendors and partners who require access to Speak AI's systems must comply with this Access Management Policy. Access will be granted based on contractual agreements and will be limited to the minimum necessary. - **Monitoring and Audits:** Third-party access will be monitored and audited to ensure compliance with Speak AI's security policies and procedures. *** **9. Responsibilities** - **IT Team:** Responsible for implementing and maintaining access controls, conducting regular access reviews, and ensuring compliance with this policy. - **Chief Technology Officer (CTO):** Responsible for approving access requests, conducting periodic reviews of user access, and notifying the IT Security Team of any role changes or terminations. - **All Users:** Responsible for adhering to access management policies, safeguarding their authentication credentials, and reporting any suspicious activities or security incidents. *** **10. Policy Review**

This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and regulatory requirements. Changes to the policy will be communicated to all users. *** **11. Contact Information**

For any inquiries or issues related to this Access Management Policy, please contact the IT Team at **success@speakai.co**. # Anti-bribery and anti-corruption policy > Speak AI's prohibitions on bribery, facilitation payments, gifts and hospitality, and how to report a concern. Source: https://docs.speakai.co/help/security/policies/anti-bribery-anti-corruption/ · Markdown: https://docs.speakai.co/help/security/policies/anti-bribery-anti-corruption/index.md ## 1. Purpose Speak AI Inc. is committed to conducting business with integrity and transparency. This Anti-Bribery and Anti-Corruption Policy establishes guidelines to ensure compliance with applicable anti-bribery laws and regulations, preventing unethical business practices, and fostering a culture of honesty. *** ## 2. Scope This policy applies to all employees, officers, directors, contractors, vendors, and third parties acting on behalf of Speak AI Inc. *** ## 3. Prohibited Activities Speak AI Inc. strictly prohibits the following activities: - **Bribery:** Offering, promising, giving, or accepting anything of value to improperly influence business decisions. - **Facilitation Payments:** Small, unofficial payments made to expedite routine actions. - **Kickbacks:** Illicit payments to obtain or retain business advantages. - **Improper Gifts and Hospitality:** Providing or receiving gifts, travel, or entertainment beyond reasonable business courtesies. - **Political and Charitable Contributions:** Making contributions to gain improper business advantages. *** ## 4. Compliance Measures To ensure adherence to this policy, Speak AI Inc. has implemented the following controls: - **Due Diligence:** Screening third-party vendors and partners for corruption risks. - **Training and Awareness:** Educating employees on bribery risks and compliance obligations. - **Record-Keeping:** Maintaining accurate records of financial transactions and business dealings. - **Internal Controls:** Ensuring financial and operational procedures prevent bribery and corruption. *** ## 5. Reporting Mechanisms Employees and third parties are encouraged to report suspected violations of this policy via success@speakai.co. Speak AI Inc. ensures confidentiality and prohibits retaliation against whistleblowers. *** ## 6. Enforcement & Consequences Violations of this policy may result in disciplinary action, including termination and legal consequences. Speak AI Inc. reserves the right to take appropriate action against any individual or entity found in violation. *** ## 7. Policy Review This policy will be reviewed periodically to ensure compliance with evolving legal standards and business practices. For any questions, please contact **success@speakai.co**. # Anti-competitive practices policy > Speak AI's rules on competition law, market conduct and dealings with competitors, customers and suppliers. Source: https://docs.speakai.co/help/security/policies/anti-competitive-practices/ · Markdown: https://docs.speakai.co/help/security/policies/anti-competitive-practices/index.md ## 1. Purpose Speak AI is committed to conducting business fairly, ethically, and in compliance with all applicable competition and antitrust laws. This policy ensures that Speak AI does not engage in anti-competitive behavior, including price-fixing, monopolistic practices, or other unfair competition strategies. ## 2. Scope This policy applies to all employees, contractors, partners, and any third parties acting on behalf of Speak AI. It governs all business activities, including sales, marketing, procurement, and partnerships. ## 3.1 Compliance with Competition Laws Speak AI and its employees must comply with all applicable antitrust and competition laws in the jurisdictions in which the company operates. ## 3.2 Prohibited Practices The following anti-competitive behaviors are strictly prohibited: - **Price Fixing:** Agreements or understandings with competitors to fix, set, or control prices. - **Market Allocation:** Agreements with competitors to divide markets, customers, or territories. - **Bid Rigging:** Collusion with competitors to manipulate bidding processes. - **Monopolistic Practices:** Actions intended to unfairly eliminate competitors or restrict market access. - **Tying & Exclusive Agreements:** Imposing unfair conditions on customers that limit their ability to choose competing products. - **Misuse of Market Power:** Using a dominant market position to exclude competitors or impose unfair pricing. ## 4. Competitive Practices Speak AI is committed to engaging in fair competition by: - Offering competitive prices based on market conditions. - Providing truthful and non-misleading advertising. - Competing on the merits of product quality, innovation, and customer service. - Avoiding any discussions or agreements with competitors that may suggest collusion or anti-competitive intent. ## 5. Compliance & Reporting - Employees must report any suspected anti-competitive behavior to Speak AI’s the leadership team at **success@speakai.co**. - Speak AI will investigate all reports confidentially and take appropriate corrective actions if necessary. - Employees engaging in anti-competitive behavior may face disciplinary action, including termination. ## 6. Training & Awareness - Speak AI will periodically provide guidance and training on anti-trust laws and fair competition practices to relevant employees. ## 7. Enforcement & Review - This policy will be reviewed annually and updated as necessary to reflect changes in competition laws or business operations. - Speak AI reserves the right to modify this policy at any time to ensure continued compliance with regulatory requirements. **For further inquiries, contact us at success@speakai.co.** # Asset management policy > How Speak AI inventories, assigns ownership of, maintains and disposes of hardware, software and data assets. Source: https://docs.speakai.co/help/security/policies/asset-management/ · Markdown: https://docs.speakai.co/help/security/policies/asset-management/index.md **1. Purpose and Scope**

The purpose of this Asset Management Policy is to establish guidelines for the effective management and security of Speak AI Inc.'s ("Speak AI") physical and digital assets. This policy applies to all employees, contractors, and third parties who manage or use Speak AI's assets. **2. Policy Statement**

Speak AI is committed to the proper management and security of its assets to ensure their optimal use and protection. This policy outlines the procedures for acquiring, managing, and disposing of assets and establishes controls to safeguard these assets against loss, theft, and misuse. **3. Asset Inventory & Review** - **Asset Register:** Speak AI will maintain an up-to-date inventory of all physical and digital assets, including laptops, phones, software licenses, and cloud services. The asset register should include details such as asset type, serial number, assigned user, location, and status. - **Asset Identification:** All assets will be tagged with unique identifiers to facilitate tracking and management. - **Review Frequency:** Speak AI conducts **quarterly** asset inventory reviews to ensure accuracy and compliance with security policies. **4. Asset Acquisition** - **Approval Process:** The acquisition of new assets must be approved by the relevant department head or manager. This process will include an assessment of business needs, budget considerations, and security requirements. - **Vendor Selection:** Assets must be procured from reputable vendors who meet Speak AI’s quality and security standards. **5. Asset Assignment and Usage** - **Assignment:** Assets will be assigned to employees based on their roles and responsibilities. The assignment will be documented in the asset register. - **Usage:** Employees are responsible for the proper use and care of Speak AI assets. Assets must be used in accordance with Speak AI’s policies and procedures and should not be used for personal purposes. **6. Asset Security** - **Physical Security:** Employees must take necessary precautions to protect physical assets, such as laptops and phones, from theft, damage, or unauthorized access. This includes securing devices when not in use and using privacy screens to prevent unauthorized viewing. - **Data Security:** Employees must ensure that all data stored on Speak AI assets is encrypted and backed up regularly. Sensitive data should be transmitted using secure channels, such as VPNs and encrypted communication tools. - **Access Control:** Access to digital assets, including software and cloud services, must be restricted to authorized personnel only. Multi-factor authentication (MFA) should be used to enhance security. - **Removable Media:** The use of removable media (USBs, external hard drives) for storing sensitive information is **prohibited** unless explicitly approved. - **Mobile Device Security:** Mobile devices used for company operations must adhere to **encryption, remote wipe capabilities, and mobile device management (MDM) enforcement.** **7. Asset Maintenance** - **Regular Maintenance:** Speak AI will ensure that all assets are maintained regularly to keep them in good working condition. This includes applying software updates, patches, and hardware servicing as needed. - **Support:** Employees should report any issues with their assigned assets to the IT support team for prompt resolution. **8. Asset Disposal** - **Disposal Procedures:** When assets are no longer needed, they must be disposed of securely and in an environmentally responsible manner. This includes data wiping, physical destruction, or recycling as appropriate. - **Documentation:** The disposal of assets must be documented in the asset register, including details of the disposal method and the personnel involved. **9. Backup & Offsite Storage** - **Backup Frequency:** Speak AI performs daily backups of all critical data assets. - **Offsite Storage:** Backups are securely stored in AWS cloud infrastructure with encryption enforced both at rest and in transit. - **Backup Integrity Testing:** Restoration tests are conducted **quarterly** to validate data integrity and recovery capabilities. **10. Incident Reporting** - **Lost or Stolen Assets:** Employees must report any lost or stolen assets immediately to the IT Security Team at success@speakai.co. An incident report should include details of the asset, the circumstances of the loss or theft, and any actions taken. - **Incident Response:** The IT Security Team will investigate reported incidents and take appropriate measures to mitigate any risks associated with the loss or theft of assets. **11. Monitoring & Audit** - **User Access Review:** General user access rights are reviewed **quarterly**, while privileged accounts are reviewed **monthly** to ensure access remains appropriate. - **Log Review Frequency:** Security and system logs undergo **real-time automated monitoring**, with **weekly manual reviews** and a **full monthly audit** to detect anomalies or security threats. **12. Risk Assessment & Compliance Monitoring** - **Risk Assessment Frequency:** Speak AI conducts **formal risk assessments annually** and performs **ad-hoc reviews** when significant changes occur. **13. Training and Awareness** - **Employee Training:** All employees will receive training on asset management policies and procedures, including the proper use, security, and disposal of assets. - **Ongoing Awareness:** Continuous awareness programs will be conducted to keep employees informed about the importance of asset management and security best practices. **14. Compliance and Auditing** - **Policy Compliance:** Compliance with this policy is mandatory for all employees, contractors, and third parties involved in asset management. Non-compliance may result in disciplinary actions. - **Regular Audits:** Regular audits will be conducted to ensure adherence to this asset management policy and identify areas for improvement. **15. Policy Review**

This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and emerging security threats. Changes to the policy will be communicated to all employees. **16. Contact Information**

For any inquiries or issues related to this Asset Management Policy, please contact the IT Asset Management Team at success@speakai.co. # Business continuity plan > How Speak AI keeps the service running through a disruption, including roles, recovery priorities and communication. Source: https://docs.speakai.co/help/security/policies/business-continuity-plan/ · Markdown: https://docs.speakai.co/help/security/policies/business-continuity-plan/index.md **Purpose:** This policy outlines the process and frequency for testing Speak AI’s Business Continuity Plan (BCP) to ensure ongoing resilience, operational continuity, and preparedness for potential disruptions. **Scope:** This policy applies to all critical business operations and functions within Speak AI and its infrastructure providers, including Amazon Web Services (AWS), MongoDB, and external service providers like OpenAI and Anthropic. **Policy Statement:** Speak AI’s Business Continuity Plan will be tested on an annual basis to ensure its effectiveness in maintaining business operations in the event of disruptions or emergencies. In addition to scheduled annual testing, the plan may be reviewed and updated as needed, based on significant changes to the business environment, technology infrastructure, or service providers. **Testing Objectives:** - Validate the procedures to ensure the swift resumption of critical business processes. - Identify and address gaps or areas of improvement in the plan. - Ensure staff familiarity with BCP procedures, roles, and responsibilities. - Evaluate Speak AI's response to simulated real-world incidents, including external provider failures (e.g., AWS, MongoDB). **Testing Schedule:** 1. **Annual Test:**
An annual BCP test will be conducted, with scenarios designed to simulate different types of operational disruptions (e.g., data center failure, service outage). This test will include all critical stakeholders and relevant external service providers. 1. **Review and Update:**
The BCP will also be reviewed in the event of significant changes to the infrastructure, providers, or business operations. Any changes will be communicated to the necessary employees and stakeholders. **Documentation and Reporting:**
All BCP test results will be documented, and any gaps identified will be addressed with corrective actions. The test outcomes and action plans will be reviewed by the executive team and external auditors, if applicable. **Responsibility:**
The Chief Technology Officer is responsible for ensuring the BCP testing schedule is followed and any updates are implemented promptly. Relevant teams and third-party providers will be involved in testing and remediation efforts. # Change management policy > How changes to Speak AI production systems are proposed, reviewed, tested, approved and rolled back. Source: https://docs.speakai.co/help/security/policies/change-management/ · Markdown: https://docs.speakai.co/help/security/policies/change-management/index.md ## 1. Purpose and Scope The purpose of this Change Management Policy is to establish a structured approach for managing changes to Speak AI Inc.'s ("Speak AI") information systems, infrastructure, and processes. This policy aims to ensure that changes are made in a controlled and coordinated manner, minimizing the risk of disruption to services and maintaining the integrity and security of Speak AI's environment. This policy applies to all employees, contractors, and third parties involved in making changes to Speak AI's systems. ## 2. Policy Statement Speak AI is committed to maintaining a stable and secure operational environment. This policy outlines the procedures and responsibilities for requesting, approving, implementing, and reviewing changes to ensure that all modifications are carried out systematically and with minimal risk. ## 3. Change Management Process - **Change Classification:** Changes will be classified based on their potential impact and urgency. Categories may include: * **Standard Changes:** Pre-approved, low-risk changes that follow established procedures. * **Normal Changes:** Changes that require assessment and approval due to their potential impact. * **Emergency Changes:** Changes that need to be implemented urgently to address critical issues. ## 4. Roles and Responsibilities - **Chief Technology Officer (CTO):** * **Oversight:** The CTO is responsible for the overall oversight of the change management process. This includes ensuring that the process aligns with Speak AI’s strategic objectives and risk management framework. * **Approval Authority:** The CTO has the authority to approve or reject significant change requests, particularly those that have a broad impact on the organization’s operations or security posture. * **Policy Enforcement:** The CTO ensures that the Change Management Policy is enforced and adhered to across the organization. * **Communication:** The CTO communicates the importance of the change management process to all stakeholders and ensures that changes are communicated effectively within the organization. - **IT Manager/Team:** * **Change Coordination:** The IT Manager/Team is responsible for coordinating the change management process. This includes receiving change requests, assessing their impact, and ensuring that they are processed in a timely and efficient manner. * **Assessment and Documentation:** The IT Manager/Team will conduct a thorough assessment of each change request, documenting the potential impact, risks, resource requirements, and rollback plans. * **Implementation Planning:** The IT Manager/Team is responsible for developing detailed implementation plans for approved changes. This includes defining the steps, resources, and timeline required to implement the change successfully. * **Testing:** The IT Manager/Team ensures that all changes are tested in a controlled environment before deployment to production. This includes validating that the change works as intended and does not introduce new issues. * **Monitoring:** The IT Manager/Team will monitor the implementation of changes, ensuring that they are executed according to the plan and that any issues are addressed promptly. * **Post-Implementation Review:** The IT Manager/Team conducts post-implementation reviews to evaluate the success of the change and identify any lessons learned. This includes documenting the outcomes and any deviations from the plan. * **Emergency Changes:** The IT Manager/Team is authorized to handle emergency changes. They must ensure that these changes are documented and communicated as soon as possible and reviewed retrospectively by the CTO. - **Change Requester:** The individual or team proposing the change is responsible for completing the CR form and providing all necessary information for assessment. ## 5. Change Approval - **Assessment:** Each change request will be assessed for its potential impact, risks, resource requirements, and alignment with business objectives. This assessment will be documented and reviewed by the CTO and IT Team. - **Approval:** The team will review the assessment and either approve, reject, or request additional information for the change request. Approved changes will be prioritized and scheduled for implementation. ## 6. Change Implementation - **Implementation Plan:** An implementation plan will be developed for each approved change. This plan will include detailed steps for executing the change, assigned responsibilities, and a timeline for completion. - **Testing:** Changes will be tested in a controlled environment before deployment to ensure that they function as intended and do not introduce new issues. - **Prevention of Developer Access to Production Environments:** Developers do not have access to production environments or any environments containing production data. Access to these environments is restricted to our operations team, who are responsible for deploying changes into production under strict procedural controls. - **Security Review of Changes:** A security review is mandatory for all changes before they are deployed into production. This review assesses the potential impact of the change on the security posture of our systems and ensures that all security requirements are met. The code is reviewed by branch management, and with automated vulnerability scan that alerts any possible issues. - **Communication:** Relevant stakeholders will be informed about the change schedule, potential impacts, and any required actions before, during, and after the implementation. ## 7. Post-Implementation Review - **Verification:** After the change is implemented, it will be verified to ensure that it has achieved its intended objectives without causing adverse effects. - **Documentation:** The results of the change implementation, including any issues encountered and how they were resolved, will be documented in the change log. - **Review:** The team will conduct a post-implementation review to evaluate the change process, identify lessons learned, and make recommendations for future improvements. ## 8. Emergency Changes - **Procedure:**Emergency changes must be documented and communicated as soon as possible. The Change Manager or a designated authority will approve emergency changes. - **Review:** All emergency changes will be reviewed retrospectively by the team to ensure that they were necessary and appropriately managed. ## 9. Compliance and Monitoring - **Policy Compliance:** Compliance with this policy is mandatory for all employees, contractors, and third parties involved in the change process. Non-compliance may result in disciplinary actions. - **Monitoring:** Regular audits will be conducted to ensure adherence to the change management process and identify areas for improvement. ## 10. Training and Awareness - **Employee Training:** All employees involved in the change management process will receive regular training on the policy, procedures, and best practices. - **Ongoing Education:** Continuous education programs will be conducted to keep staff informed about the latest change management techniques and tools. ## 11. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and emerging technologies. Changes to the policy will be communicated to all stakeholders. ## 12. Contact Information For any inquiries or issues related to this Change Management Policy, please contact the Change Manager at [success@speakai.co](mailto:success@speakai.co). # Cloud hosting compliance policy > How Speak AI's cloud infrastructure is configured, monitored and audited against its compliance obligations. Source: https://docs.speakai.co/help/security/policies/cloud-hosting-compliance/ · Markdown: https://docs.speakai.co/help/security/policies/cloud-hosting-compliance/index.md **1. Purpose**

This policy establishes the compliance and audit requirements for cloud hosting providers utilized by Speak AI Inc. It ensures that cloud services meet security, privacy, and regulatory compliance obligations through independent audits, contractual controls, and continuous monitoring. **2. Scope**

This policy applies to all cloud hosting providers used by Speak AI Inc., including but not limited to Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS) providers. **3. Compliance & Security Requirements** **3.1 Independent Security Assessments** - Cloud providers must undergo independent security audits and provide valid compliance certifications, including but not limited to: * SOC 2 Type II * ISO 27001 * NIST 800-53 * GDPR Compliance (if applicable) * HIPAA Compliance (if applicable) * PCI-DSS Compliance (if applicable) - Audit reports must be reviewed at least annually to assess ongoing compliance. **3.2 Contractual Obligations** - All cloud service agreements must include provisions for: * Data ownership and protection measures. * Incident response obligations and breach notification timelines. * Security responsibilities, including encryption, access control, and data segregation. * The right to request security assessment reports. * Compliance with relevant privacy laws and regulatory requirements. **3.3 Monitoring & Continuous Compliance** - Cloud environments must be monitored for security vulnerabilities and misconfigurations. - Automated tools must be used for real-time security logging and event detection. - Cloud security policies must be reviewed regularly to align with evolving threats and regulatory changes. **3.4 Data Protection & Access Control** - Data stored in the cloud must be encrypted both in transit and at rest. - Multi-Factor Authentication (MFA) must be enforced for administrative access to cloud resources. - Access to cloud environments must be granted based on the principle of least privilege (PoLP). - Vendor access must be restricted and subject to periodic review. **4. Compliance Validation & Reporting** - Speak AI Inc. reserves the right to conduct audits of cloud service providers, either directly or through third-party assessments. - Compliance validation reports must be maintained for regulatory and contractual requirements. - Any significant security findings must be remediated within an agreed-upon timeframe. **5. References & Supporting Documents** - Speak AI **Third-Party Security Policy**: [/help/security/policies/third-party-security/](/help/security/policies/third-party-security/) - Speak AI **Information Security Program Policy**: [/help/security/policies/information-security-program/](/help/security/policies/information-security-program/) **6. Contact Information** For any inquiries related to cloud hosting compliance and security, please contact **success@speakai.co**. *** This policy will be reviewed periodically to ensure compliance with evolving security standards and regulatory requirements. # Collaborative computing policy > Controls on shared workspaces, conferencing and collaboration tools, including recording and remote access. Source: https://docs.speakai.co/help/security/policies/collaborative-computing/ · Markdown: https://docs.speakai.co/help/security/policies/collaborative-computing/index.md **1. Purpose**

This policy establishes security requirements for collaborative computing tools, including video conferencing, virtual whiteboards, document sharing, and other shared platforms used within Speak AI. The goal is to protect sensitive data, prevent unauthorized access, and ensure compliance with cybersecurity best practices. **2. Scope**

This policy applies to all employees, contractors, and third parties utilizing collaborative computing tools within Speak AI’s environment, including but not limited to Zoom, Microsoft Teams, Google Meet, Miro, and shared cloud-based document platforms. **3. Security Standards** **3.1 Authentication & Access Control** - Multi-Factor Authentication (MFA) must be enabled for all collaborative computing platforms. - User access must be granted based on least privilege principles. - External participants must be approved before accessing collaboration sessions. **3.2 Data Protection & Privacy** - Meeting recordings, chat logs, and shared documents containing sensitive information must be encrypted and stored securely. - Confidential discussions must be restricted to authorized personnel only. - Screen sharing must be disabled by default and enabled only when necessary. **3.3 Session Security & Monitoring** - Meetings and collaborative sessions must have unique passwords or authentication links. - Auto-lock features must be enabled to prevent unauthorized access after a session starts. - Sessions must be monitored for unusual activity or unauthorized users. **3.4 Third-Party Integrations & Compliance** - Third-party applications integrated into collaborative computing platforms must undergo security review. - All tools must comply with Speak AI’s **Privacy Policy** and **Third-Party Security Policy**. **3.5 Usage Guidelines & Employee Responsibilities** - Employees must follow Speak AI’s **Acceptable Use Policy** when using collaborative computing tools. - Any security incidents related to collaborative tools must be reported immediately. - Sensitive discussions should take place in private sessions with restricted participants. **4. Compliance & Enforcement** - Regular security audits must be conducted on collaborative computing tools. - Unauthorized use or security violations may result in access restrictions or disciplinary actions. **5. References & Supporting Documents** - Speak AI **Privacy Policy**: [https://speakai.co/privacy-policy/](https://speakai.co/privacy-policy/?utm_source=docs&utm_medium=referral&utm_campaign=help) - Speak AI **Third-Party Security Policy**: [/help/security/policies/third-party-security/](/help/security/policies/third-party-security/) - Speak AI **Acceptable Use Policy**: \[Link to Acceptable Use Policy\] **6. Contact Information**

For security concerns or policy clarifications, contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with emerging security threats and best practices. # Data classification policy > The tiers Speak AI classifies data into and the handling, storage and sharing rules that follow from each. Source: https://docs.speakai.co/help/security/policies/data-classification/ · Markdown: https://docs.speakai.co/help/security/policies/data-classification/index.md ## 1. Purpose and Scope The purpose of this Data Classification Policy is to establish a framework for categorizing Speak AI Inc.'s ("Speak AI") data based on its sensitivity and value to the organization. This classification guides the application of appropriate security controls to protect data according to its level of sensitivity. This policy applies to all employees, contractors, and third parties who handle Speak AI's data. ## 2. Policy Statement Speak AI is committed to ensuring the confidentiality, integrity, and availability of its data by implementing a formal data classification policy. This policy categorizes data to apply suitable security measures, ensuring that sensitive data is adequately protected against unauthorized access, disclosure, alteration, and destruction. ## 3. Data Classification Framework - **Public:** Data that can be made publicly available without any restrictions. Examples include marketing materials and publicly released white papers. - **Internal Use Only:** Data that is sensitive to the company but not classified as confidential. This may include internal emails, internal project documents, and non-sensitive business operations data. - **Confidential:** Data that, if disclosed, could potentially harm the company or its clients. Examples include business contracts, client information, and proprietary business processes. - **Restricted:** The most sensitive data that requires the highest level of security. This category includes data such as personal identification information (PII) and financial records. We ensure that such data is managed in compliance with applicable privacy standards and organizational policies. ## 4. Implementation of Security Controls - **Public Data:** * No specific security controls are required beyond general access management practices. - **Internal Use Only Data:** * Protected with access controls to ensure only authorized personnel can access this data. - **Confidential Data:** * Encrypted at rest. * Access controlled through role-based access controls (RBAC). * Audit logs maintained for all access and processing activities. - **Restricted Data:** * Strong encryption measures applied both at rest. * Strict access controls with multi-factor authentication (MFA). * Comprehensive audit logs and real-time monitoring. * Regular security assessments and compliance checks. ## 5. Regular Review and Updating The data classification policy is reviewed at least annually or more frequently if significant changes occur in our business environment or in relevant laws and regulations. This ensures that the policy remains effective and relevant to current conditions. ## 6. Training and Awareness All employees receive training on the data classification policy as part of their onboarding process, with regular refresher courses annually or whenever significant updates to the policy are made. This training ensures that employees understand the importance of data classification and know how to handle data appropriately. ## 7. Compliance and Enforcement Compliance with the data classification policy is mandatory for all employees. Our the leadership team conducts regular audits to ensure that the policy is properly enforced and that data is handled according to its classification. ## 8. Documentation and Accessibility The data classification policy is well-documented and readily accessible to all employees. Documentation includes detailed guidelines on how to classify data and the specific security controls that must be applied to each classification level. ## 9. Roles and Responsibilities - **IT Team**: Responsible for implementing and maintaining security controls based on data classification levels. - **Department Managers**: Responsible for ensuring that data within their departments is classified appropriately and that employees adhere to the policy. - **All Employees**: Responsible for understanding and applying the data classification policy to their daily activities, ensuring data is handled according to its classification. ## 10. Policy Review This policy will be reviewed annually or as needed to ensure its relevance and effectiveness. Changes to the policy will be communicated to all employees. ## 11. Contact Information For any inquiries or issues related to this Data Classification Policy, please contact the IT Team at [success@speakai.co](mailto:success@speakai.co). # Disaster recovery plan > Recovery objectives, backup restoration steps and the sequence Speak AI follows to bring systems back after a major failure. Source: https://docs.speakai.co/help/security/policies/disaster-recovery-plan/ · Markdown: https://docs.speakai.co/help/security/policies/disaster-recovery-plan/index.md **Purpose:**

This policy defines the frequency and procedures for testing Speak AI’s Disaster Recovery (DR) Plan to ensure that Speak AI can recover critical IT services in case of a disaster or failure, including reliance on providers such as AWS, Google Translation, MongoDB, and other infrastructure providers. **Scope:**

This policy applies to all critical IT infrastructure supporting Speak AI’s services, including data storage, transcription, and translation services. **Policy Statement:**

Speak AI will conduct regular tests of its Disaster Recovery Plan to ensure that all critical IT infrastructure and services can be recovered promptly in the event of a disaster. The DR plan will be tested annually, and additional tests will be conducted if significant infrastructure changes are made. **Testing Objectives:** - Ensure the integrity and recoverability of data stored on AWS S3 and MongoDB. - Validate that critical services such as transcription, translation, and large language model integrations (e.g., OpenAI GPT-4, Anthropic Claude-3) can be restored in case of failure. - Assess communication and coordination protocols between Speak AI and its service providers. **Testing Schedule:** 1. **Annual Test:**
A full DR test will be conducted annually. This test will involve a simulated failure scenario (e.g., AWS S3 outage, MongoDB corruption) to ensure the effectiveness of the recovery process. 1. **Review and Update:**
The DR plan will be updated based on the results of the test or in response to any significant infrastructure updates or changes to service providers. Any changes to the plan will be communicated to relevant stakeholders. **Documentation and Reporting:**

All test results will be documented, and any deficiencies or gaps will be addressed through corrective actions. Test outcomes will be shared with the executive team, and improvements will be implemented as needed. **Responsibility:**

The CTO is responsible for overseeing the Disaster Recovery Plan testing and ensuring all necessary resources, including third-party provider cooperation, are in place to conduct tests effectively. # DMZ security policy > How Speak AI isolates internet-facing systems from internal networks and what may be placed in the DMZ. Source: https://docs.speakai.co/help/security/policies/dmz-security/ · Markdown: https://docs.speakai.co/help/security/policies/dmz-security/index.md **1. Purpose**

This policy establishes security requirements for Speak AI Inc.'s Demilitarized Zone (DMZ) to protect internal networks from external threats while ensuring controlled access to public-facing services. **2. Scope**

This policy applies to all systems, services, and network devices within Speak AI Inc.'s DMZ infrastructure, including firewalls, web servers, application servers, and proxy servers. **3. DMZ Security Requirements** **3.1 Network Segmentation** - The DMZ must be logically and physically separated from internal and external networks. - Firewalls must enforce strict access control between the DMZ, internal network, and the internet. - Direct connections between internal systems and the internet must be prohibited. **3.2 Access Restrictions** - Only explicitly authorized services should be hosted within the DMZ. - External access to the DMZ must be limited to necessary protocols and services (e.g., HTTPS, DNS, and SMTP) with restricted source and destination IPs. - Internal access from the DMZ to core network resources should be strictly controlled and monitored. **3.3 Authentication & Authorization** - All remote administrative access to DMZ systems must require multi-factor authentication (MFA). - Role-based access control (RBAC) must be enforced to limit user privileges based on job responsibilities. - Service accounts must have the least privilege necessary for functionality and must not be shared. **3.4 Monitoring & Logging** - All network traffic into and out of the DMZ must be logged and monitored for anomalies. - Intrusion detection and prevention systems (IDS/IPS) must be deployed to analyze DMZ traffic. - Logs from DMZ systems must be forwarded to a centralized log management system and reviewed regularly. **3.5 Patching & Vulnerability Management** - All DMZ systems must be regularly patched and updated following the **Vulnerability Management Policy**. - Regular security assessments, including penetration testing, must be performed on DMZ-hosted services. - Unnecessary services, ports, and protocols must be disabled to reduce the attack surface. **3.6 Encryption & Secure Communications** - All data transmitted between DMZ servers and internal networks must be encrypted using industry-standard protocols (e.g., TLS, IPsec). - Insecure communication protocols (e.g., FTP, Telnet) must be prohibited. **3.7 Incident Response & Containment** - Security incidents involving DMZ systems must be escalated following the **Incident Reporting and Response Policy**. - Compromised DMZ systems must be isolated immediately to prevent lateral movement into internal networks. **4. Compliance & Enforcement** - Periodic security audits must be conducted to verify compliance with this policy. - Non-compliant systems or services must be remediated or removed from the DMZ. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: /help/security/policies/network-security/ - Speak AI **Vulnerability Management Policy**: /help/security/policies/vulnerability-management/ - Speak AI **Incident Reporting and Response Policy**: /help/security/policies/incident-reporting-response/ **6. Contact Information** For questions or concerns regarding DMZ security, please contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving security best practices and industry regulations. # Encrypted communications policy > Which channels must be encrypted, the protocols required, and how keys and certificates are handled. Source: https://docs.speakai.co/help/security/policies/encrypted-communications/ · Markdown: https://docs.speakai.co/help/security/policies/encrypted-communications/index.md **1. Purpose**

This policy establishes encryption requirements for all remote network connections to ensure data protection in transit and prevent unauthorized access to sensitive information. **2. Scope**

This policy applies to all employees, contractors, and third parties who access Speak AI Inc. systems remotely. It covers all communications involving the transmission of sensitive or confidential data. **3. Encryption Requirements** **3.1 General Encryption Standards** - All remote connections must use industry-standard encryption protocols such as TLS 1.2 or higher, IPsec, and SSH. - Data in transit must be encrypted using AES-256 or an equivalent secure encryption standard. - Legacy encryption protocols (e.g., SSL 3.0, TLS 1.0, and TLS 1.1) are prohibited. **3.2 Secure Remote Access** - Virtual Private Network (VPN) connections must use strong encryption protocols (e.g., OpenVPN, WireGuard, or IPsec-based VPNs). - Multi-Factor Authentication (MFA) is required for all remote access to internal systems. - Remote desktop access must be tunneled through a secure VPN or an encrypted remote access gateway. **3.3 Email & Communication Encryption** - All sensitive emails must be encrypted using end-to-end encryption tools such as S/MIME or PGP. - Internal messaging and collaboration tools must support encryption for data in transit. - File transfers containing sensitive data must be performed using encrypted channels (e.g., SFTP instead of FTP). **3.4 Wireless & Mobile Encryption** - Wireless networks accessing internal systems must enforce WPA3 encryption (or WPA2 if WPA3 is unavailable). - Mobile device communications must be encrypted using secure mobile device management (MDM) tools. - Employees using mobile devices for work must enable device encryption and secure their connections via VPN. **3.5 Monitoring & Compliance** - Network traffic must be monitored for compliance with encryption standards. - Any unauthorized or unencrypted remote connections will be blocked and investigated. - Periodic audits must be conducted to ensure encryption policies are followed. **4. Compliance & Enforcement** - Violations of this policy may result in disciplinary action, including termination of access to remote systems. - Employees are responsible for reporting any suspected breaches of encryption policies to the security team at **success@speakai.co**. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: /help/security/policies/network-security/ - Speak AI **Access Management Policy**: /help/security/policies/access-management/ - Speak AI **Vulnerability Management Policy**: /help/security/policies/vulnerability-management/ **6. Contact Information** For any questions regarding this policy, contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving security best practices and industry regulations. # Encryption policy > The algorithms, key lengths and key management practices Speak AI applies to data at rest and in transit. Source: https://docs.speakai.co/help/security/policies/encryption/ · Markdown: https://docs.speakai.co/help/security/policies/encryption/index.md ## 1. Purpose and Scope The purpose of this Encryption Policy is to establish guidelines for the use of encryption to protect the confidentiality, integrity, and availability of Speak AI Inc.'s ("Speak AI") sensitive data. This policy applies to all employees, contractors, and third parties who handle Speak AI's data, whether in transit or at rest. ## 2. Policy Statement Speak AI is committed to protecting its data by implementing robust encryption methods. This policy outlines the requirements for encrypting sensitive data to safeguard against unauthorized access, data breaches, and other security threats. ## 3. Data Classification - **Sensitive Data:** Includes, but is not limited to, personal information, financial data, proprietary information, and any other data classified as sensitive by Speak AI. - **Public Data:** Information that is intended for public use and does not require encryption. ## 4. Encryption Standards - **Data in Transit**: All sensitive data transmitted over networks must be encrypted using industry-standard encryption protocols, such as TLS (Transport Layer Security) or IPsec (Internet Protocol Security). - **Data at Rest**: All sensitive data stored on devices, servers, and storage systems must be encrypted using strong encryption algorithms such as AES (Advanced Encryption Standard) with a minimum key length of 256 bits. ## 5. Encryption Key Management - **Key Generation:** Encryption keys must be generated using approved algorithms and processes to ensure their strength and security. - **Key Storage:** Encryption keys must be stored securely, using key management solutions that comply with industry standards. Keys must not be stored in plaintext or hardcoded into software applications. - **Key Access:** Access to encryption keys must be restricted to authorized personnel only. Multi-factor authentication (MFA) should be used to access key management systems. - **Key Rotation:** Encryption keys must be rotated regularly and upon suspicion or detection of compromise. Key rotation schedules will be defined based on the sensitivity of the data and regulatory requirements. ## 6. Implementation and Usage - **Application Encryption:** Developers must integrate encryption into applications handling sensitive data, ensuring that data is encrypted during processing, storage, and transmission. - **Database Encryption:** Databases storing sensitive data must use encryption to protect data at rest. This includes full-database encryption or column-level encryption for specific sensitive fields. - **File and Disk Encryption:** Sensitive files and disks, including backups, must be encrypted to prevent unauthorized access. ## 7. Compliance and Monitoring - **Monitoring and Auditing:** Regular audits and monitoring will be conducted to verify compliance with this policy. Encryption practices will be reviewed to identify and address any gaps or weaknesses. ## 8. Incident Response - **Breach Response:** In the event of a data breach involving encrypted data, the IT Security Team will assess the extent of the breach and take appropriate measures to mitigate the impact. This includes re-encrypting data, rotating keys, and notifying affected parties as required by law. - **Reporting:** Any incidents involving encryption keys or encrypted data must be reported immediately to the IT Security Team. ## 9. Employee Training - **Security Awareness:** All employees and contractors must undergo regular training on encryption best practices and the importance of protecting sensitive data. - **Ongoing Education:** Continuous education programs will be conducted to keep users informed about the latest encryption technologies and threats. ## 10. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and emerging security threats. Changes to the policy will be communicated to all users. ## 11. Contact Information For any inquiries or issues related to this Encryption Policy, please contact the IT Security Team at [success@speakai.co](mailto:success@speakai.co). # ESG policy > Speak AI's commitments on environmental impact, social responsibility and corporate governance. Source: https://docs.speakai.co/help/security/policies/esg/ · Markdown: https://docs.speakai.co/help/security/policies/esg/index.md ## Overview Speak AI Inc. is committed to responsible and sustainable business practices through our Environmental, Social, and Corporate Governance (ESG) initiatives. This policy outlines our commitment to ethical business operations, environmental sustainability, social responsibility, and strong governance practices. ## Environmental Commitment Speak AI recognizes the impact of business activities on the environment and is committed to reducing our carbon footprint and promoting sustainability. ## Key Initiatives: - **Energy Efficiency:** Optimize cloud computing usage and adopt energy-efficient technologies. - **Waste Reduction:** Minimize digital and physical waste, promoting paperless operations. - **Sustainable Procurement:** Favor vendors and partners who align with our environmental standards. - **Compliance with Regulations:** Adhere to all applicable environmental laws and regulations. ## Social Responsibility Speak AI values diversity, equity, and inclusion while ensuring the well-being of our employees, customers, and communities. ## Key Initiatives: - **Diversity and Inclusion:** Promote an inclusive work environment that respects all individuals regardless of race, gender, ethnicity, sexual orientation, or background. - **Employee Well-being:** Support employee mental health and work-life balance. - **Community Engagement:** Engage in initiatives that positively impact local and global communities. - **Customer Privacy & Security:** Maintain robust data protection practices to safeguard user information. ## Governance & Ethical Business Practices Strong governance is essential to ensure compliance, ethical behavior, and long-term business success. ## Key Initiatives: - **Transparency & Accountability:** Uphold high ethical standards in all business dealings. - **Regulatory Compliance:** Adhere to all applicable industry standards, laws, and policies. - **Risk Management:** Implement internal controls to identify and mitigate risks. - **Stakeholder Engagement:** Maintain open communication with employees, investors, and customers. ## References & Supporting Documents - **Speak AI Privacy Policy:** [https://speakai.co/privacy-policy/](https://speakai.co/privacy-policy/?utm_source=docs&utm_medium=referral&utm_campaign=help) - **Speak AI Business Continuity Plan:** [/help/security/policies/business-continuity-plan/](/help/security/policies/business-continuity-plan/) - **Speak AI Information Security Program Policy:** [/help/security/policies/information-security-program/](/help/security/policies/information-security-program/) For any ESG-related inquiries, contact us at **success@speakai.co**. # Ethical sourcing policy > The standards Speak AI requires of suppliers on labour, environmental and ethical conduct. Source: https://docs.speakai.co/help/security/policies/ethical-sourcing/ · Markdown: https://docs.speakai.co/help/security/policies/ethical-sourcing/index.md ## 1. Purpose Speak AI Inc. is committed to responsible procurement practices that uphold ethical labor, environmental sustainability, and strong governance standards. This policy establishes expectations for our suppliers, vendors, and partners to ensure ethical sourcing in our supply chain. ## 2. Scope This policy applies to all suppliers, vendors, and third-party service providers engaged with Speak AI Inc. It outlines the minimum standards required to do business with us and aligns with global ethical sourcing best practices. ## 3. Ethical Sourcing Standards Suppliers and vendors working with Speak AI Inc. are expected to adhere to the following principles: ## 3.1. Labor and Human Rights - No use of child labor or forced labor, including slavery or human trafficking. - Compliance with local labor laws regarding wages, benefits, working hours, and working conditions. - Freedom of association and the right to collective bargaining. - A workplace free from discrimination, harassment, and abuse. ## 3.2. Environmental Responsibility - Compliance with environmental laws and regulations. - Sustainable sourcing of materials and minimization of environmental impact. - Responsible waste management, water conservation, and energy efficiency. - Reduction of greenhouse gas emissions where applicable. ## 3.3. Business Integrity and Governance - Prohibition of bribery, corruption, and unethical business practices. - Compliance with all applicable laws and regulations, including anti-trust and anti-competition laws. - Transparent financial reporting and proper record-keeping. - Respect for intellectual property rights. ## 4. Supplier Compliance and Monitoring Speak AI Inc. reserves the right to assess supplier compliance with this policy through: - Self-assessment questionnaires. - Periodic audits and reviews. - Supplier certifications attesting compliance with ethical sourcing principles. Failure to meet the requirements of this policy may result in remediation actions, contract termination, or disengagement from our supply chain. ## 5. Reporting Violations Suppliers, employees, or stakeholders may report concerns regarding ethical sourcing violations to Speak AI Inc. at success@speakai.co. Reports will be handled confidentially, and retaliation against whistleblowers is strictly prohibited. ## 6. Continuous Improvement Speak AI Inc. is dedicated to continuous improvement in ethical sourcing. We will periodically review and update this policy to align with evolving best practices and regulatory changes. # Fraud detection and prevention policy > How Speak AI detects, reports and responds to suspected fraud against the company, its customers or its systems. Source: https://docs.speakai.co/help/security/policies/fraud-detection-prevention/ · Markdown: https://docs.speakai.co/help/security/policies/fraud-detection-prevention/index.md **1. Purpose**

This Fraud Detection & Prevention Policy establishes guidelines for identifying, preventing, and responding to fraudulent activities within Speak AI Inc. The policy aims to safeguard the company’s assets, ensure compliance with legal requirements, and promote ethical business conduct. **2. Scope**

This policy applies to all employees, contractors, vendors, and third parties who conduct business with Speak AI Inc. It encompasses all business operations, financial transactions, and digital activities related to fraud prevention. **3. Definition of Fraud**

Fraud includes, but is not limited to, the following activities: - Misrepresentation of financial statements - Identity theft and unauthorized access to company systems - Embezzlement or misappropriation of funds - Bribery and corruption - Manipulation of data for personal gain - Vendor or procurement fraud - Phishing, cyber fraud, and other digital fraud schemes **4. Fraud Prevention Measures**

Speak AI Inc. implements the following preventative measures to mitigate fraud risks: - **Internal Controls:** Regular audits and checks on financial transactions and access to sensitive information. - **Segregation of Duties:** Ensuring that no single employee has sole authority over critical financial processes. - **Background Checks:** Screening of new employees and vendors before engagement. - **Training & Awareness:** Mandatory fraud prevention training for all employees. - **Access Controls:** Implementation of multi-factor authentication and role-based access to sensitive data. - **Whistleblower Protection:** Confidential reporting mechanisms to encourage the reporting of suspected fraud without retaliation. **5. Fraud Detection Methods**

Speak AI Inc. utilizes the following methods to detect fraudulent activities: - **Automated Monitoring:** Use of AI and analytics to identify anomalies in financial transactions and system usage. - **Internal Audits:** Routine and surprise audits to identify discrepancies and suspicious activities. - **Incident Reporting:** A defined process for employees and stakeholders to report suspected fraud. - **Third-Party Assessments:** Periodic reviews of vendors and business partners to assess compliance with ethical standards. **6. Incident Response Procedures**

If fraudulent activity is suspected, Speak AI Inc. follows these steps: 1. **Immediate Reporting:** Employees must report suspected fraud to their manager or the leadership team at **success@speakai.co**. 1. **Investigation:** The the leadership team conducts a confidential investigation with support from legal and IT teams as necessary. 1. **Corrective Action:** If fraud is confirmed, Speak AI Inc. takes appropriate disciplinary action, including termination, legal action, or criminal prosecution. 1. **Process Improvement:** Post-incident analysis to strengthen internal controls and prevent future occurrences. **7. Compliance & Enforcement**

All employees and stakeholders must adhere to this policy. Violations of this policy may result in disciplinary action, including termination and legal prosecution. **8. Policy Review & Updates**

This policy is reviewed annually and updated as necessary to align with industry best practices and legal requirements. **9. Supporting Documents & References** - Speak AI Business Continuity Plan: [/help/security/policies/business-continuity-plan/](/help/security/policies/business-continuity-plan/) - Speak AI Incident Reporting and Response Policy: [/help/security/policies/incident-reporting-response/](/help/security/policies/incident-reporting-response/) For any questions or concerns, please contact **success@speakai.co**. # Health and safety compliance policy > Speak AI's obligations and practices for a safe working environment across offices and remote work. Source: https://docs.speakai.co/help/security/policies/health-safety-compliance/ · Markdown: https://docs.speakai.co/help/security/policies/health-safety-compliance/index.md ## 1. Purpose This Health & Safety Compliance Policy establishes Speak AI Inc.'s commitment to maintaining a safe and healthy workplace for all employees, contractors, and visitors. It outlines measures to prevent workplace hazards, ensure regulatory compliance, and promote a culture of safety and well-being. ## 2. Scope This policy applies to all employees, contractors, and third parties operating within Speak AI Inc. premises or engaged in company activities, whether on-site or remote. ## 3. Responsibilities - **Management:** Ensures compliance with health and safety regulations, provides necessary resources, and fosters a culture of safety. - **Employees & Contractors:** Follow established safety protocols, report hazards, and participate in health and safety training. - **Supervisors:** Monitor adherence to safety guidelines, address concerns, and take corrective action as needed. ## 4. Workplace Hazard Prevention - Conduct regular workplace risk assessments to identify potential hazards. - Implement measures to mitigate identified risks (e.g., ergonomic workspace adjustments, proper equipment maintenance, and protective measures for high-risk tasks). - Ensure proper labeling and handling of hazardous materials, where applicable. ## 5. Emergency Preparedness & Response - Develop and communicate an emergency response plan, including evacuation procedures, fire safety protocols, and first aid guidelines. - Maintain emergency contact information and ensure accessibility of first aid kits in all work locations. - Conduct periodic emergency drills to ensure readiness. ## 6. Health & Safety Training - Provide mandatory health and safety training for all employees and contractors. - Ensure employees are aware of workplace safety procedures and responsibilities. - Conduct periodic refresher training to reinforce compliance with safety standards. ## 7. Regulatory Compliance - Adhere to all relevant local, provincial, and federal occupational health and safety laws and regulations. - Conduct periodic compliance audits and address any identified gaps. - Maintain up-to-date documentation of health and safety policies and procedures. ## 8. Reporting & Incident Management - Establish a clear reporting mechanism for workplace injuries, near-misses, and safety concerns. - Investigate all incidents promptly and implement corrective actions to prevent recurrence. - Protect whistleblowers and employees who report safety concerns from retaliation. ## 9. Remote Work Safety - Provide guidelines for maintaining ergonomic home office setups. - Encourage employees to take regular breaks and follow best practices for remote work health and safety. - Offer resources for mental health and well-being. ## 10. Continuous Improvement - Regularly review and update health and safety policies to align with evolving regulations and industry best practices. - Seek feedback from employees to improve workplace safety initiatives. - Engage with external health and safety experts as needed to enhance compliance efforts. ## 11. Contact Information For any questions or concerns regarding health and safety compliance, employees may contact **success@speakai.co**. *** This Health & Safety Compliance Policy reflects Speak AI Inc.'s commitment to fostering a safe and compliant work environment for all stakeholders. # Human resource policy > Hiring, screening, onboarding, conduct and offboarding practices, including the security duties attached to each. Source: https://docs.speakai.co/help/security/policies/human-resource/ · Markdown: https://docs.speakai.co/help/security/policies/human-resource/index.md ## 1. Purpose and Scope The purpose of this Human Resource Policy is to establish guidelines for managing Speak AI Inc.'s ("Speak AI") workforce effectively and to ensure compliance with relevant employment laws and regulations. This policy applies to all employees, contractors, and interns working at Speak AI. ## 2. Policy Statement Speak AI is committed to creating a positive, inclusive, and productive work environment. This policy outlines the company's approach to recruitment, onboarding, training, performance management, and employee relations, ensuring fair and equitable treatment for all. ## 3. Recruitment and Hiring - **Equal Opportunity Employment:** Speak AI is an equal opportunity employer and does not discriminate based on race, color, religion, gender, sexual orientation, national origin, age, disability, or any other protected characteristic. - **Job Postings:** Job vacancies will be advertised internally and externally to attract a diverse pool of qualified candidates. - **Selection Process:** Candidates will be selected based on their qualifications, experience, and suitability for the role. The selection process may include interviews, assessments, and background checks as necessary. ## 4. Onboarding - **Orientation:** New employees will undergo an orientation program to familiarize them with Speak AI's culture, policies, and procedures. - **Training:** New hires will receive job-specific training to equip them with the necessary skills and knowledge to perform their roles effectively. ## 5. Employee Development - **Continuous Learning:** Speak AI encourages continuous learning and professional development. Employees are provided with opportunities to attend training programs, workshops, and conferences relevant to their roles. - **Career Advancement:** Speak AI supports career growth and advancement. Employees are encouraged to discuss their career aspirations with their managers and seek opportunities for promotion and development within the company. ## 6. Performance Management - **Performance Reviews:** Employees will participate in regular performance reviews to assess their progress, set goals, and receive feedback. Reviews will be conducted quarterly. - **Performance Improvement:** Employees who do not meet performance expectations will receive support and guidance to improve. This may include additional training, mentoring, or a performance improvement plan. ## 7. Compensation and Benefits - **Competitive Salaries:** Speak AI offers competitive salaries that are commensurate with industry standards and employee experience. - **Benefits Package:** Employees are eligible for a comprehensive benefits package, which may include health insurance, retirement plans, paid time off, and other perks. Details of the benefits package will be provided upon hire. ## 8. Employee Conduct - **Code of Conduct:** Employees are expected to adhere to Speak AI's Code of Conduct, which outlines the expected standards of behavior, ethics, and professionalism. - **Conflict Resolution:** Speak AI is committed to resolving workplace conflicts promptly and fairly. Employees are encouraged to report any issues to their manager or the HR department. ## 9. Diversity and Inclusion - **Inclusive Workplace:** Speak AI is dedicated to fostering an inclusive workplace where all employees feel valued and respected. The company actively promotes diversity and inclusion initiatives. - **Anti-Harassment Policy:** Speak AI has a zero-tolerance policy for harassment and discrimination. Any reported incidents will be investigated promptly, and appropriate action will be taken. ## 10. Health and Safety - **Safe Work Environment:** Speak AI is committed to providing a safe and healthy work environment. Employees are required to follow all safety protocols and report any hazards or incidents immediately. - **Wellness Programs:** Speak AI offers wellness programs to support employees' physical and mental well-being. ## 11. Termination and Off-boarding - **Voluntary Termination:** Employees who choose to resign are required to provide two weeks notice. An exit interview will be conducted to gather feedback and facilitate a smooth transition. - **Involuntary Termination:** In cases of involuntary termination, Speak AI will follow a fair and transparent process, ensuring compliance with employment laws and providing appropriate severance if applicable. - **Return of Company Property:** Departing employees must return all company property, including laptops, access cards, and documents, before their last working day. ## 12. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and compliance with legal and regulatory requirements. Any changes to the policy will be communicated to all employees. ## 13. Contact Information For any inquiries or issues related to this Human Resource Policy, please contact the HR department at [success@speakai.co](mailto:success@speakai.co). # Incident reporting and response policy > How a security incident is reported, triaged, escalated, contained and communicated, including customer notification. Source: https://docs.speakai.co/help/security/policies/incident-reporting-response/ · Markdown: https://docs.speakai.co/help/security/policies/incident-reporting-response/index.md ## 1. Purpose and Scope The purpose of this Incident Reporting and Response Policy is to outline the procedures and responsibilities for identifying, reporting, and responding to security incidents at Speak AI Inc. ("Speak AI"). This policy applies to all employees, contractors, and third parties who use Speak AI's information systems and resources. ## 2. Policy Statement Speak AI is committed to maintaining the security and integrity of its information systems and data. This policy establishes a structured approach for managing security incidents to minimize impact, ensure rapid resolution, and prevent recurrence. ## 3. Definitions - **Security Incident:**Any event that has the potential to compromise the confidentiality, integrity, or availability of Speak AI's information systems or data. Examples include data breaches, malware attacks, unauthorized access, and loss or theft of devices. ## 4. Incident Reporting - **Immediate Reporting:** All employees, contractors, and third parties must immediately report any suspected or confirmed security incidents to the IT Team. Reports can be made via email at [success@speakai.co](mailto:success@speakai.co). - **Incident Details:**When reporting an incident, the following information should be provided: * Description of the incident * Date and time of discovery * Systems and data affected * Contact information of the person reporting the incident ## 5. Incident Response Procedure - **Identification and Assessment:** * The IT Team will verify and classify the reported incident. * An initial assessment will determine the severity and potential impact of the incident. - **Containment:** * Immediate steps will be taken to contain the incident and prevent further damage. This may include isolating affected systems, revoking access, and applying temporary fixes. - **Investigation:** * A thorough investigation will be conducted to identify the root cause of the incident. * Evidence will be collected and documented for analysis and potential legal actions. - **Mitigation and Eradication:** * The IT Team will develop and implement a remediation plan to address the root cause and eliminate the threat. * Systems will be thoroughly cleaned, and security patches or updates will be applied. - **Recovery:** * Affected systems and services will be restored to normal operations. * Data integrity will be verified, and backups will be used if necessary. - **Communication:** * Relevant stakeholders, including affected users, management, and regulatory bodies, will be informed about the incident, its impact, and the steps taken for resolution. * Regular updates will be provided throughout the incident response process. - **Post-Incident Review:** * A post-incident review will be conducted to evaluate the response and identify areas for improvement. * Lessons learned will be documented, and corrective actions will be implemented to prevent future incidents. ## 6. Training and Awareness - **Employee Training:** All employees and contractors must undergo regular training on incident reporting and response procedures. Training sessions will cover how to recognize security incidents and the steps to report them. - **Awareness Programs:** Ongoing awareness programs will be conducted to reinforce the importance of timely incident reporting and adherence to response procedures. ## 7. Documentation and Record Keeping - **Incident Log:** An incident log will be maintained to record all reported incidents, including details of the incident, response actions taken, and final resolution. - **Reports:** Detailed incident reports will be prepared and stored for reference and compliance purposes. ## 8. Compliance and Review - **Policy Compliance:** Compliance with this policy is mandatory for all employees, contractors, and third parties. Non-compliance may result in disciplinary actions. - **Policy Review:** This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and regulatory requirements. ## 9. Contact Information For any inquiries or issues related to this Incident Reporting and Response Policy, please contact the IT Team at [success@speakai.co](mailto:success@speakai.co). # Information classification policy > How information is labeled by sensitivity and the handling requirements each label carries. Source: https://docs.speakai.co/help/security/policies/information-classification/ · Markdown: https://docs.speakai.co/help/security/policies/information-classification/index.md ## 1. Purpose The purpose of this policy is to establish a framework for classifying and protecting information assets at Speak AI Inc. based on sensitivity, regulatory requirements, business value, and risk exposure. This policy ensures that information is handled appropriately to maintain confidentiality, integrity, and availability. ## 2. Scope This policy applies to all employees, contractors, and third parties who have access to Speak AI Inc.'s information assets, including but not limited to digital records, emails, reports, audio/video data, customer data, and documentation. ## 3. Information Classification Levels Speak AI Inc. classifies information into the following categories: ## 3.1. Public - Description: Information that is intended for public release and poses no risk if disclosed. - Examples: Marketing materials, website content, published reports, blog posts. - Handling: No restrictions on access, storage, or distribution. ## 3.2. Internal Use - Description: Information that is restricted to Speak AI Inc. employees and authorized partners. - Examples: Internal emails, process documentation, operational reports, internal training materials. - Handling: Shared only with authorized individuals within Speak AI Inc.; minimal security controls required. ## 3.3. Confidential - Description: Information that, if disclosed, could cause moderate damage to Speak AI Inc., its customers, or stakeholders. - Examples: Customer communications, unpublished research, business development plans, pricing strategies. - Handling: Encryption required for storage and transmission; limited access based on business need. ## 3.4. Restricted - Description: Highly sensitive information that, if compromised, could cause significant harm to Speak AI Inc. or its customers. - Examples: Personally Identifiable Information (PII), payment details, authentication credentials, proprietary code, and confidential legal agreements. - Handling: Strong encryption required; access limited to essential personnel only; storage in secure environments. ## 4.1. Management - Approves and oversees the implementation of this policy. - Ensures adherence to legal and regulatory requirements. ## 4.2. Employees & Contractors - Understand and apply information classification levels when handling company data. - Report any suspected policy violations or data breaches. ## 4.3. IT & Security Team - Implements technical controls to enforce classification policies. - Conducts periodic reviews to ensure compliance. ## 5. Information Handling & Protection Requirements | Classification Level | Access Control | Storage | Transmission | Disposal | | --- | --- | --- | --- | --- | | Public | No restrictions | No restrictions | No restrictions | No restrictions | | Internal Use | Limited to employees/authorized personnel | Basic security controls | Secure transmission recommended | Secure disposal preferred | | Confidential | Role-based access control (RBAC) | Encryption at rest | Encrypted transmission | Secure deletion required | | Restricted | Strict access controls | Strong encryption | Encrypted transmission with multi-factor authentication (MFA) | Secure destruction required | ## 6. Compliance & Enforcement Failure to comply with this policy may result in disciplinary actions, including but not limited to access revocation, termination, or legal action as necessary. ## 7. Review & Updates This policy will be reviewed annually or as required by changes in business operations or legal requirements. *** For additional information, please refer to Speak AI's **[Data Classification Policy](/help/security/policies/data-classification/)** or contact **[success@speakai.co](mailto:success@speakai.co)**. # Information security program policy > The governing document for Speak AI's security program: scope, roles, responsibilities and review cadence. Source: https://docs.speakai.co/help/security/policies/information-security-program/ · Markdown: https://docs.speakai.co/help/security/policies/information-security-program/index.md ## 1. Purpose and Scope The purpose of this Information Security Program Policy is to establish the framework and principles for protecting the confidentiality, integrity, and availability of information and systems within Speak AI Inc. ("Speak AI"). This policy applies to all employees, contractors, and third parties accessing Speak AI's information systems and data. ## 2. Policy Statement Speak AI is committed to maintaining a robust information security program that aligns with industry best practices and regulatory requirements. This policy outlines the strategies and controls implemented to safeguard sensitive data, manage risks, and ensure compliance with applicable laws and standards. ## 3. Information Security Objectives The primary objectives of Speak AI's information security program are: - To protect the confidentiality, integrity, and availability of information. - To identify and mitigate security risks. - To ensure compliance with relevant legal, regulatory, and contractual requirements. - To promote a security-conscious culture within the organization. ## 4. Roles and Responsibilities - **Chief Technology Officer (CTO):** Responsible for the overall development, implementation, and management of the information security program. - **IT Team:** Tasked with monitoring, assessing, and responding to security threats and incidents. - **All Employees and Contractors:** Required to adhere to the information security policies and procedures and report any security incidents. ## 5. Risk Management Speak AI employs a risk-based approach to information security management, which includes: - Conducting regular risk assessments to identify potential threats and vulnerabilities. - Implementing appropriate controls to mitigate identified risks. - Continuously monitoring and reviewing the effectiveness of risk management activities. ## 6. Data Protection - **Data Encryption:** All sensitive data, including personal and sensitive information, is encrypted at rest and in transit using industry-standard encryption protocols. - **Data Retention and Deletion**: Data is retained only for as long as necessary to fulfill its intended purpose and is securely deleted according to the Data Retention Policy. - **Access Controls:** Access to sensitive data is restricted to authorized personnel only and is enforced through strong authentication and authorization mechanisms. ## 7. Incident Response Speak AI has established an incident response plan to effectively manage and respond to security incidents. This includes: - Immediate containment and mitigation of the incident. - Investigation and analysis to determine the root cause. - Communication with affected stakeholders. - Implementation of corrective actions to prevent recurrence. ## 8. Security Awareness and Training All employees and contractors are required to participate in regular security awareness and training programs. These programs are designed to educate staff on security best practices, the importance of data protection, and how to recognize and respond to security threats. ## 9. Compliance and Audit Speak AI ensures compliance with relevant legal, regulatory, and contractual requirements through: Regular internal and external audits of the information security program. Continuous monitoring and updating of security policies and procedures to reflect changes in regulatory requirements and industry standards. ## 10. Policy Review This policy will be reviewed on an annual basis or as needed to ensure its relevance and effectiveness in addressing information security challenges. The review process will consider feedback from stakeholders, changes in the threat landscape, and advancements in security technologies. ## 11. Contact Information For any inquiries or requests related to this Information Security Program Policy, please contact the Information Security Team at [success@speakai.co](mailto:success@speakai.co). # Internal compliance and ethics program > How Speak AI governs ethical conduct, raises concerns, investigates them and protects those who report. Source: https://docs.speakai.co/help/security/policies/internal-compliance-ethics-program/ · Markdown: https://docs.speakai.co/help/security/policies/internal-compliance-ethics-program/index.md **1. Purpose**

The Internal Compliance & Ethics Program outlines Speak AI Inc.’s commitment to ethical business practices, legal compliance, and integrity in all aspects of its operations. This policy provides guidance on compliance expectations, ethical behavior, and mechanisms for reporting violations, including whistleblower protections. **2. Scope**

This policy applies to all Speak AI Inc. employees, contractors, and business partners engaged in activities on behalf of the company. **3. Ethical Conduct & Compliance Expectations** - All employees must comply with applicable laws, regulations, and company policies. - Employees are expected to act with honesty, integrity, and professionalism in all business dealings. - Conflicts of interest must be disclosed and avoided. - Speak AI Inc. does not tolerate fraud, bribery, or corrupt practices. **4. Whistleblower Protection & Reporting Mechanisms** - Employees and stakeholders are encouraged to report suspected unethical behavior, misconduct, or violations of law. - Reports can be submitted anonymously via **success@speakai.co**. - Speak AI Inc. strictly prohibits retaliation against individuals who report concerns in good faith. - Investigations will be conducted fairly, promptly, and confidentially when possible. **5. Compliance Training & Awareness** - Employees will receive periodic training on compliance and ethics-related topics. - Compliance materials and updates will be readily available. - Employees must certify their understanding of and adherence to compliance policies annually. **6. Disciplinary Measures**

Violations of this policy may result in disciplinary action, up to and including termination of employment or legal action where applicable. **7. Continuous Improvement & Policy Review**

Speak AI Inc. is committed to regularly reviewing and updating this policy to ensure alignment with legal requirements and best practices. **8. Supporting Documents & References** - Speak AI Terms of Service: [https://speakai.co/terms-of-service/](https://speakai.co/terms-of-service/?utm_source=docs&utm_medium=referral&utm_campaign=help) - Speak AI Privacy Policy: [https://speakai.co/privacy-policy/](https://speakai.co/privacy-policy/?utm_source=docs&utm_medium=referral&utm_campaign=help) For any questions or clarifications regarding this policy, please contact **success@speakai.co**. # Internet of Things security policy > Controls for connected devices on Speak AI networks, covering approval, segmentation, patching and monitoring. Source: https://docs.speakai.co/help/security/policies/internet-things-security/ · Markdown: https://docs.speakai.co/help/security/policies/internet-things-security/index.md **1. Purpose**

This policy establishes security standards and best practices for Internet of Things (IoT) devices connected to Speak AI’s infrastructure to mitigate risks, protect sensitive data, and ensure compliance with cybersecurity regulations. **2. Scope**

This policy applies to all IoT devices deployed within Speak AI’s environment, including but not limited to smart sensors, industrial control systems, security cameras, and connected office equipment. **3. Security Standards** **3.1 Device Authentication & Access Control** - All IoT devices must support authentication mechanisms to prevent unauthorized access. - Unique credentials must be assigned to each device; default passwords must be changed before deployment. - Multi-Factor Authentication (MFA) must be enabled where supported. - Access to IoT devices must be restricted based on least privilege principles. **3.2 Data Encryption & Transmission Security** - All data transmitted to and from IoT devices must be encrypted using industry-standard protocols (e.g., TLS 1.2+ or IPsec). - Sensitive data stored on IoT devices must be encrypted at rest. - IoT communications should be segmented from the corporate network using VLANs or dedicated networks. **3.3 Patch Management & Software Updates** - All IoT devices must be regularly updated with security patches and firmware updates. - Automated patching mechanisms should be enabled where possible. - Devices that cannot be updated must be reviewed for potential replacement or mitigation strategies. **3.4 Network Segmentation & Monitoring** - IoT devices must be isolated from critical business systems through network segmentation. - Anomaly detection and logging must be enabled to monitor device activity for security threats. - Unauthorized IoT devices detected on the network must be immediately investigated and, if necessary, removed. **3.5 Physical Security & Asset Management** - IoT devices must be physically secured to prevent tampering. - An asset inventory must be maintained for all IoT devices, including device details, firmware versions, and ownership. - Decommissioned devices must be securely wiped or destroyed before disposal. **4. Compliance & Enforcement** - IoT devices must be compliant with Speak AI’s **Network Security Policy** and **Vulnerability Management Policy**. - Regular security audits must be conducted to identify and mitigate IoT-related risks. - Non-compliant devices must be removed or remediated immediately. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: [/help/security/policies/network-security/](/help/security/policies/network-security/) - Speak AI **Vulnerability Management Policy**: [/help/security/policies/vulnerability-management/](/help/security/policies/vulnerability-management/) - Speak AI **Asset Management Policy**: [/help/security/policies/asset-management/](/help/security/policies/asset-management/) **6. Contact Information** For security concerns or policy clarifications, contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with emerging security threats and best practices. # Log management policy > What Speak AI logs, how long logs are kept, how they are protected from tampering and who may read them. Source: https://docs.speakai.co/help/security/policies/log-management/ · Markdown: https://docs.speakai.co/help/security/policies/log-management/index.md ## 1. Purpose and Scope The purpose of this Log Management Policy is to establish guidelines for the collection, retention, and management of log data to ensure the security, availability, and integrity of Speak AI Inc.'s ("Speak AI") information systems. This policy applies to all employees, contractors, and third parties responsible for managing and maintaining Speak AI's systems. ## 2. Policy Statement Speak AI is committed to maintaining effective log management practices to support security monitoring, incident response, and regulatory compliance. This policy outlines the requirements for generating, storing, and analyzing log data to detect and respond to security incidents and ensure accountability. ## 3. Log Generation - **Log Sources:** Logging must be enabled on all critical systems, applications, and network devices, including servers and databases. - **Log Types:** Logs should capture relevant events, such as user authentication, access to sensitive data, system errors, configuration changes, and security alerts. - **Time stamping:** All log entries must include accurate timestamps synchronized with a reliable time source to ensure consistency across systems. ## 4. Log Collection and Storage - **Centralized Logging:** Log data should be collected and aggregated in a centralized logging system to facilitate monitoring and analysis. This system should be protected against unauthorized access and tampering. - **Storage Duration:** Log data are retained securely for investigation for any security breach incident. - **Storage Security:** Logs must be stored securely to prevent unauthorized access, alteration, or deletion. This includes using encryption and access controls to protect log data. ## 5. Log Analysis and Monitoring - **Regular Monitoring:** Logs should be monitored regularly to detect suspicious activities, potential security incidents, and operational issues. Automated tools and alerts should be used to identify anomalies and trigger timely responses. - **Log Review:** Periodic reviews of log data should be conducted by authorized personnel to ensure that logging mechanisms are functioning correctly and to identify any gaps or weaknesses in log management practices. - **Incident Response:** In the event of a security incident, relevant logs should be analyzed promptly to determine the cause, impact, and necessary remediation steps. Logs should be preserved for potential legal or forensic investigations. ## 6. Access Controls - **Restricted Access:** Access to log data should be restricted to authorized personnel only. Role-based access controls should be implemented to ensure that users have access only to the logs necessary for their job functions. - **Audit Trails:** Access to log data must be logged and monitored to ensure accountability and detect any unauthorized access attempts. ## 7. Compliance and Reporting - **Reporting:** Regular reports on log management activities, including log generation, storage, and analysis, should be provided to relevant stakeholders to ensure transparency and accountability. ## 8. Training and Awareness - **Employee Training:** All employees involved in log management activities must receive regular training on log management policies, procedures, and best practices. - **Ongoing Education:** Continuous education programs will be conducted to keep staff informed about the latest developments in log management technologies and techniques. ## 9. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and emerging security threats. Changes to the policy will be communicated to all stakeholders. ## 10. Contact Information For any inquiries or issues related to this Log Management Policy, please contact the IT Security Team at [success@speakai.co](mailto:success@speakai.co). # Modern slavery policy > Speak AI's position and due-diligence practices on forced labour and trafficking in its operations and supply chain. Source: https://docs.speakai.co/help/security/policies/modern-slavery/ · Markdown: https://docs.speakai.co/help/security/policies/modern-slavery/index.md **1. Purpose** Speak AI Inc. is committed to ensuring that modern slavery and human trafficking do not take place within our business operations or supply chains. This policy outlines our commitment to ethical labor practices, compliance with applicable laws, and the steps we take to prevent and mitigate the risks of forced labor and human trafficking. **2. Scope** This policy applies to all employees, contractors, suppliers, and business partners of Speak AI Inc. It sets out expectations for ethical labor practices and responsible sourcing throughout our operations and supply chains. **3. Commitment to Preventing Modern Slavery & Human Trafficking** Speak AI Inc. strictly prohibits the use of forced labor, human trafficking, child labor, or any form of modern slavery in our operations and supply chains. We are dedicated to: - Conducting business with integrity and ethical responsibility. - Ensuring that all employees and contractors are employed voluntarily and under fair working conditions. - Encouraging our suppliers and business partners to adopt similar ethical labor standards. **4. Compliance & Legal Framework** This policy aligns with international human rights principles and labor laws, including but not limited to: - The United Nations Guiding Principles on Business and Human Rights. - The International Labour Organization (ILO) conventions. - The Modern Slavery Act (where applicable, such as in the UK, Australia, or Canada). **5. Supplier & Business Partner Expectations** We expect all suppliers and business partners to: - Comply with local labor laws and international human rights standards. - Prohibit forced labor, human trafficking, and child labor in any part of their operations. - Provide fair wages and safe working conditions for their employees. - Allow workers the right to freely terminate their employment without penalties. **6. Due Diligence & Risk Assessment** Speak AI Inc. will take the following actions to prevent modern slavery: - Conduct periodic risk assessments of suppliers and contractors to identify any potential risks related to modern slavery. - Implement screening measures when engaging new suppliers to ensure compliance with our ethical sourcing requirements. - Require suppliers to certify that they adhere to ethical labor practices. **7. Training & Awareness** To enhance our commitment to ethical labor practices, Speak AI Inc. will: - Provide training to employees on recognizing and preventing modern slavery and human trafficking. - Raise awareness about ethical labor practices across our supply chain. **8. Reporting & Whistleblower Protection** Speak AI Inc. encourages employees, suppliers, and stakeholders to report any concerns related to modern slavery. We ensure that: - Reports can be made anonymously through success@speakai.co. - There will be no retaliation against individuals who report concerns in good faith. - Investigations will be conducted promptly and appropriate actions taken. **9. Monitoring & Continuous Improvement** We are committed to continuously improving our approach to preventing modern slavery and human trafficking by: - Regularly reviewing and updating this policy to align with evolving legal and ethical standards. - Strengthening our supplier engagement processes and compliance monitoring. **10. Policy Review** This policy will be reviewed annually to ensure its effectiveness and compliance with evolving legal requirements. *** For any concerns or inquiries related to this policy, please contact us at success@speakai.co. # Network device hardening standards > The baseline configuration Speak AI applies to routers, switches and firewalls before they carry production traffic. Source: https://docs.speakai.co/help/security/policies/network-device-hardening-standards/ · Markdown: https://docs.speakai.co/help/security/policies/network-device-hardening-standards/index.md **1. Purpose**

This document establishes security configuration requirements for network devices, including firewalls, switches, routers, and wireless access points, to protect against unauthorized access, data breaches, and system vulnerabilities. **2. Scope**

This policy applies to all network devices used within Speak AI Inc.'s infrastructure, including cloud-hosted and cloud-based environments. **3. Hardening Requirements** **3.1 General Security Configuration** - All network devices must run the latest stable firmware and software versions. - Default credentials must be changed before deployment. - Unused services and protocols must be disabled to reduce attack surfaces. **3.2 Authentication & Access Control** - Unique administrator credentials must be assigned to each network device. - Multi-Factor Authentication (MFA) must be enabled where supported. - Role-based access control (RBAC) must be implemented to restrict permissions based on job responsibilities. - Remote management interfaces must be restricted to authorized personnel and require encrypted connections (e.g., SSH, HTTPS). **3.3 Patch Management & Updates** - Security patches and firmware updates must be applied within 30 days of release, subject to internal testing. - Automated vulnerability scans must be conducted regularly to identify outdated or vulnerable network device configurations. **3.4 Firewall & Traffic Control** - All firewall rules must be documented and reviewed periodically. - Default-deny rules must be enforced to block all traffic except explicitly allowed connections. - Intrusion detection and prevention systems (IDS/IPS) must be configured to monitor network traffic for anomalies. **3.5 Logging & Monitoring** - Network device logs must be collected, stored securely, and retained per the **Records Retention Policy**. - Automated alerts must be configured for unauthorized access attempts, configuration changes, and other security-relevant events. - Regular audits must be conducted to verify compliance with logging requirements. **3.6 Encryption & Secure Communication** - Network traffic between devices must be encrypted using industry-standard protocols (e.g., TLS, IPsec, WPA3 for wireless networks). - Secure network management protocols (e.g., SNMPv3, SSH) must be used instead of insecure alternatives (e.g., SNMPv1/v2, Telnet). **3.7 Wireless Security** - Wireless access points must enforce WPA3 encryption (or WPA2 if WPA3 is unavailable). - Guest wireless networks must be logically separated from internal networks. - MAC address filtering and network segmentation must be implemented for enhanced security. **4. Compliance & Enforcement** - Network devices must be configured following these standards before being deployed. - Periodic security assessments must be performed to ensure adherence. - Non-compliant devices must be remediated immediately or removed from the network. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: /help/security/policies/network-security/ - Speak AI **Vulnerability Management Policy**: /help/security/policies/vulnerability-management/ - Speak AI **Access Management Policy**: /help/security/policies/access-management/ **6. Contact Information** For questions or concerns regarding network device security, please contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving security best practices and industry regulations. # Network security policy > How Speak AI's networks are designed, segmented, monitored and defended, and the rules for connecting to them. Source: https://docs.speakai.co/help/security/policies/network-security/ · Markdown: https://docs.speakai.co/help/security/policies/network-security/index.md ## 1. Purpose and Scope The purpose of this Network Security Policy is to establish guidelines and procedures to protect the integrity, confidentiality, and availability of Speak AI Inc.‘s (“Speak AI”) network infrastructure. This policy applies to all employees, contractors, and third parties who have access to Speak AI’s network resources. ## 2. Policy Statement Speak AI is committed to maintaining a secure network environment to protect against unauthorized access, data breaches, and other security threats. This policy outlines the measures and controls implemented to safeguard network infrastructure and ensure the secure transmission of data. ## 3. Network Security Controls - **Firewall Management:** Firewalls must be configured with appropriate rule sets and are set to “deny by default” to ensure only authorized traffic is allowed. Firewall rules will be reviewed and updated regularly to ensure they align with current security requirements. Additionally, traffic from countries other than specified trusted countries will be denied. - **Network Segmentation:** The network will be segmented into different zones based on security requirements. Critical systems and sensitive data will be isolated from less secure areas of the network to minimize the risk of unauthorized access. ## 4. Access Controls - **User Authentication:** All users must authenticate using strong authentication methods before accessing the network. Multi-factor authentication (MFA) is required for accessing critical systems and sensitive data. - **Access Permissions:** Network access permissions will be granted based on the principle of least privilege. Users will only have access to the resources necessary for their job functions. ## 5. Data Encryption - **Data in Transit:** All sensitive data transmitted over the network must be encrypted using industry-standard encryption protocols to protect against eavesdropping and interception. - **Data at Rest:**Sensitive data stored on networked devices must also be encrypted to protect against unauthorized access in the event of compromise. ## 6. Network Monitoring and Maintenance - **Continuous Monitoring:** The network will be continuously monitored for security threats, performance issues, and other anomalies. Automated tools and manual reviews will be used to detect and respond to potential incidents. Monitoring will be enhanced through services such as AWS CloudFront and Cloudflare to provide additional security insights and protections. - **Patch Management:** Network devices, including routers, switches, and firewalls, will be kept up to date with the latest security patches and firmware updates. Regular maintenance schedules will be established to ensure timely updates. - **Vulnerability Management:** Regular vulnerability assessments and penetration tests will be conducted to identify and address security weaknesses within the network infrastructure. ## 7. Incident Response - **Incident Reporting:** Any suspected or confirmed network security incidents must be reported immediately to the IT Security Team. Incident reports should include a description of the incident, affected systems, and any actions taken. - **Response Procedures:** The IT Security Team will follow established incident response procedures to contain, investigate, and resolve network security incidents. Lessons learned from incidents will be used to improve network security measures. ## 8. Third-Party Network Access - **Vendor and Partner Access:** Third-party vendors and partners who require access to Speak AI's network must comply with this Network Security Policy. Access will be granted based on contractual agreements and will be limited to the minimum necessary. - **Monitoring and Audits:** Third-party network access will be monitored and audited to ensure compliance with Speak AI's security policies and procedures. ## 9. Training and Awareness - **Employee Training:** All employees and contractors must undergo regular training on network security best practices and the importance of protecting network resources. - **Awareness Programs:**Ongoing awareness programs will be conducted to keep users informed about the latest network security threats and the measures they can take to protect the network. ## 10. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and regulatory requirements. Changes to the policy will be communicated to all users. ## 11. Contact Information For any inquiries or issues related to this Network Security Policy, please contact the IT Security Team at [success@speakai.co](mailto:success@speakai.co). # Network segmentation policy > How Speak AI separates network zones so a compromise in one does not reach production data in another. Source: https://docs.speakai.co/help/security/policies/network-segmentation/ · Markdown: https://docs.speakai.co/help/security/policies/network-segmentation/index.md **1. Purpose**

This policy establishes security controls for network segmentation and segregation to mitigate security risks, prevent unauthorized access, and enhance data protection within Speak AI’s infrastructure. **2. Scope**

This policy applies to all networks, systems, and devices within Speak AI’s environment, including corporate, cloud, and third-party integrated networks. **3. Network Segmentation Standards** **3.1 Segmentation Principles** - Network segmentation must be implemented to isolate sensitive systems and data from general access networks. - Internal networks must be logically and physically separated based on risk levels, business functions, and data sensitivity. - Guest and employee networks must be segmented from production and administrative networks. **3.2 Access Controls & Monitoring** - Firewall rules must restrict traffic between network segments based on business needs. - Multi-Factor Authentication (MFA) and least privilege principles must be enforced for access to segmented networks. - Network traffic must be monitored for anomalies, with alerts for unauthorized access attempts. **3.3 Secure Data Flow & Connectivity** - Data flow between network segments must be controlled via approved gateways, proxies, or firewalls. - Remote access to segmented networks must be secured with VPN and encrypted tunnels. - Direct external access to sensitive network segments must be prohibited unless explicitly authorized. **3.4 Segmentation Testing & Validation** - Regular penetration tests and vulnerability assessments must be conducted to validate network segmentation controls. - Network segmentation policies must be reviewed at least annually and updated to address emerging threats. **4. Compliance & Enforcement** - All systems and applications must comply with Speak AI’s **Network Security Policy** and **Access Management Policy**. - Non-compliance with segmentation policies will result in corrective actions, including access revocation or network redesign. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: [/help/security/policies/network-security/](/help/security/policies/network-security/) - Speak AI **Access Management Policy**: [/help/security/policies/access-management/](/help/security/policies/access-management/) - Speak AI **Vulnerability Management Policy**: [/help/security/policies/vulnerability-management/](/help/security/policies/vulnerability-management/) **6. Contact Information**

For security concerns or policy clarifications, contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving security threats and industry best practices. # Offsite backup storage policy > Where Speak AI backups are stored, how they are encrypted and protected, and how restoration is tested. Source: https://docs.speakai.co/help/security/policies/offsite-backup-storage/ · Markdown: https://docs.speakai.co/help/security/policies/offsite-backup-storage/index.md **1. Purpose**

The purpose of this policy is to define the backup and offsite storage procedures for Speak AI Inc. to ensure data availability, integrity, and recoverability in the event of system failures, cyber incidents, or other unforeseen disruptions. **2. Scope**

This policy applies to all critical business data, databases, and system configurations stored within Speak AI's infrastructure, including cloud services and offsite storage solutions. **3. Backup Procedures** - **Backup Frequency:** Full backups are performed daily, with incremental backups occurring every six hours. - **Backup Retention:** Backups are retained for 90 days, after which older backups are securely deleted unless required for compliance or legal purposes. - **Storage Location:** Backups are securely stored in AWS cloud infrastructure within the designated data center (AWS Canada, ca-central-1). - **Backup Verification:** Automated checks and periodic integrity tests are conducted to ensure the reliability and recoverability of backup data. **4. Offsite Storage** - **Cloud-Based Storage:** Speak AI uses AWS S3 for secure storage of backup data with encryption enabled at rest and in transit. - **Encryption Standards:** Backups are encrypted using AES-256 encryption at rest and TLS 1.2+ for in-transit data protection. - **Geographic Redundancy:** Critical backups are replicated across multiple AWS availability zones to ensure resilience and accessibility in case of data center failures. **5. Access Control & Security** - **Restricted Access:** Backup data access is strictly limited to authorized personnel and requires multi-factor authentication (MFA). - **Monitoring & Logging:** Access to backup files is logged and monitored to detect unauthorized access attempts. - **Incident Response:** In the event of unauthorized access or corruption of backup data, immediate action will be taken as per Speak AI’s Incident Response Policy. **6. Restoration Procedures** - **Recovery Time Objective (RTO):** Critical data restoration is targeted within 4 hours, while non-critical data restoration may take up to 24 hours. - **Testing & Validation:** Backup recovery tests are conducted quarterly to ensure data integrity and effectiveness of restoration processes. **7. Compliance & Review** - **Regulatory Compliance:** Speak AI ensures that backup storage and retention policies comply with industry standards and regulations such as GDPR, PIPEDA, and HIPAA. - **Policy Review:** This policy will be reviewed annually and updated as needed to incorporate best practices and emerging security threats. **8. Contact Information**

For inquiries related to backup and offsite storage, contact Speak AI’s IT Security Team at **success@speakai.co**. *** # Pandemic and infectious disease plan > How Speak AI keeps operating through a public health event, covering remote work, staffing and service continuity. Source: https://docs.speakai.co/help/security/policies/pandemic-infectious-disease-plan/ · Markdown: https://docs.speakai.co/help/security/policies/pandemic-infectious-disease-plan/index.md ## 1. **Purpose** The purpose of this document is to outline Speak AI Inc.'s contingency plans for pandemics or infectious disease outbreaks to ensure business continuity, protect employee health, and maintain service availability. ## 2. **Scope** This plan applies to all employees, contractors, and stakeholders of Speak AI Inc., including remote and in-office personnel. ## 3. **Governance & Responsibilities** - The **Executive Team** is responsible for activating and overseeing the response plan. - **HR & Operations** will manage employee well-being and remote work arrangements. - **IT & Security** will ensure secure and continued operations of Speak AI's services. ## 4. **Risk Assessment & Preparedness** - Monitoring global health advisories (e.g., WHO, CDC, Health Canada). - Maintaining a remote work infrastructure to support smooth transitions. - Ensuring robust cybersecurity and secure data handling for remote operations. - Identifying critical dependencies on third-party vendors and ensuring redundancy where possible. ## 5. **Workplace Policies** - **Remote Work Enablement:** Employees may work remotely in case of an outbreak. - **Flexible Leave Policies:** Employees experiencing symptoms should take paid sick leave. - **Hygiene & Sanitation:** Office spaces will be cleaned and disinfected regularly. - **Employee Support:** Mental health resources and support will be provided. ## 6. **Business Continuity Strategy** - Ensuring critical business operations continue remotely. - Leveraging cloud-based systems to facilitate communication and collaboration. - Establishing clear communication channels with customers regarding service availability. - Implementing a tiered response plan based on severity levels. ## 7. **Communication Plan** - Regular updates to employees via internal channels (Slack, email, meetings). - Customer communications via email, website, and support channels. - Designated response team to handle inquiries related to operational changes. ## 8. **Incident Response & Recovery** - Activation of the crisis response team during a pandemic outbreak. - Clear protocol for managing infected individuals in the workplace. - Phased reintegration plan for returning to normal operations post-crisis. ## 9. **Review & Maintenance** - This plan will be reviewed and updated annually or as needed. - Simulated pandemic response drills will be conducted periodically to ensure preparedness. # Password policy > Password strength, rotation, storage and multi-factor requirements for Speak AI accounts and systems. Source: https://docs.speakai.co/help/security/policies/password/ · Markdown: https://docs.speakai.co/help/security/policies/password/index.md ## 1. Purpose and Scope The purpose of this Password Policy is to establish guidelines for creating, using, and managing passwords to protect the security and integrity of Speak AI Inc.'s ("Speak AI") information systems and data. This policy applies to all employees, contractors, third parties, and users of the Speak AI product ("Speak"). ## 2. Policy Statement Speak AI is committed to maintaining the highest security standards by enforcing strong password practices. This policy outlines password creation, management, and protection requirements to prevent unauthorized access to Speak AI's systems and data. ## 3. Password Creation - **Complexity Requirements:** Passwords must meet the following complexity requirements: * Minimum length of 8 characters - **Prohibited Elements:** Passwords must not contain easily guessable information such as common words, phrases, or personal information (e.g., names, birthdays). ## 4. Password Management - **Account Lockout:** Accounts will be locked out after 3 failed login attempts within a minute. The account can be unlocked after a 1 minute period. ## 5. Password Protection - **Confidentiality:** Passwords must be kept confidential and not shared with anyone. Users are responsible for the security of their passwords. - **Storage:** Passwords must not be written down or stored in plain text. Passwords should be stored in secure password management tools approved by Speak AI. - **Phishing Awareness:** Users must be aware of phishing attacks and avoid clicking on suspicious links or providing passwords in response to unsolicited requests. ## 6. Multi-Factor Authentication (MFA) - **Requirement:** Multi-factor authentication (MFA) is required to access critical systems and sensitive data. Speak AI supports MFA through Google Workspace and is in the process of adding Microsoft Single Sign-On. ## 7. Administrative Access - **Privileged Accounts:** Users with privileged accounts must use separate, unique passwords for administrative tasks. Privileged account passwords must adhere to stricter complexity and expiration requirements. - **Monitoring:** Usage of privileged accounts will be monitored for any unusual or unauthorized activities. ## 8. Password Changes and Recovery - **Password Changes:** Users must change their passwords immediately if they suspect that their password has been compromised. - **Password Recovery:** Password recovery mechanisms must include secure verification processes to authenticate the identity of the user requesting the password reset. ## 9. Employee Training - **Security Awareness:** All employees and contractors must undergo regular security awareness training, including best password management and protection practices. - **Ongoing Education:** Continuous education programs will be conducted to keep users informed about the latest security threats and password protection techniques. ## 10. Compliance and Enforcement - **Policy Compliance:** All users must comply with this policy. Non-compliance may result in disciplinary actions, including termination of access to Speak AI's systems. - **Audits:** Regular audits will be conducted to ensure compliance with this password policy. Any identified weaknesses will be addressed promptly. ## 11. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and emerging security threats. Changes to the policy will be communicated to all users. ## 12. Contact Information For any inquiries or issues related to this Password Policy, please contact the IT Security Team at [success@speakai.co](mailto:success@speakai.co). # Physical security policy > Controls over physical access to Speak AI premises, equipment and any media holding customer data. Source: https://docs.speakai.co/help/security/policies/physical-security/ · Markdown: https://docs.speakai.co/help/security/policies/physical-security/index.md ## 1. Purpose and Scope The purpose of this Physical Security Policy is to establish guidelines for protecting Speak AI Inc.'s ("Speak AI") physical assets and ensuring the safety and security of employees working remotely in the Greater Toronto Area (GTA), Ontario, Canada. This policy applies to all employees, contractors, and third parties who have access to Speak AI's assets and facilities. ## 2. Policy Statement Speak AI is committed to ensuring the physical security of its remote work environment and protecting its assets from physical threats. This policy outlines the measures and controls implemented to safeguard equipment, data, and personnel. ## 3. Remote Work Environment Security - **Home Office Security:** Employees are required to ensure that their home office environments are secure. This includes securing personal computers and other work-related equipment when not in use. - **Secure Storage:** Employees must store all Speak AI assets, such as laptops and documents, in a secure location when not in use. Sensitive documents should be stored in locked cabinets or drawers. - **Access Control:** Employees should not allow unauthorized individuals to access their work equipment or view confidential information. Family members, friends, and visitors must not be permitted to use Speak AI devices or access Speak AI data. ## 4. Equipment Security - **Asset Management:**All hardware assets provided by Speak AI must be recorded in an asset management system. Employees are responsible for the care and security of these assets. - **Device Encryption**: All company-provided laptops and mobile devices must be encrypted to protect data in case of loss or theft. - **Antivirus and Firewall:** All devices must have up-to-date antivirus software and firewalls enabled to protect against malware and unauthorized access. ## 5. Data Security - **Backup Procedures:** Employees are responsible for following Speak AI's data backup procedures to ensure that important data is regularly backed up to secure cloud storage. ## 6. Incident Reporting - **Security Incidents:** Any security incidents, such as theft, loss, or unauthorized access to Speak AI assets or data, must be reported immediately to the IT Team at [success@speakai.co](mailto:success@speakai.co). An incident report should include details of the incident, affected assets, and any actions taken. - **Response Plan**: The IT Team will respond to reported incidents by investigating the cause, assessing the impact, and implementing measures to prevent recurrence. ## 7. Employee Training and Awareness - **Security Training:** All employees must undergo regular training on physical security practices, including securing their remote work environment, protecting equipment, and handling sensitive information. - **Ongoing Awareness:** Continuous awareness programs will be conducted to keep employees informed about the latest security threats and best practices for maintaining physical security. ## 8. Compliance and Auditing - **Policy Compliance:** Compliance with this policy is mandatory for all employees, contractors, and third parties who access Speak AI's assets. Non-compliance may result in disciplinary actions. - **Regular Audits:** Regular audits will be conducted to ensure adherence to physical security controls and identify areas for improvement. ## 9. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and emerging security threats. Changes to the policy will be communicated to all employees. ## 10. Contact Information For any inquiries or issues related to this Physical Security Policy, please contact the IT Security Team at [success@speakai.co](mailto:success@speakai.co). # Records retention policy > How long Speak AI keeps each class of record, where it is held and how it is destroyed at end of life. Source: https://docs.speakai.co/help/security/policies/records-retention/ · Markdown: https://docs.speakai.co/help/security/policies/records-retention/index.md ## 1. Purpose This Records Retention Policy establishes guidelines for managing, retaining, and disposing of records at Speak AI Inc. in compliance with legal, regulatory, and contractual obligations. It ensures that records are retained for appropriate periods to support operational needs, mitigate risks, and facilitate business continuity. ## 2. Scope This policy applies to all records created, received, or maintained by Speak AI Inc., including electronic, paper, and other media formats. It covers all departments, employees, contractors, and third parties handling company records. ## 3. Responsibilities - **Management:** Ensures compliance with this policy and provides resources for proper records management. - **Employees:** Follow retention schedules and properly store, archive, or dispose of records. - **IT & Security Team:** Maintain electronic records in accordance with data security protocols and ensure secure disposal. - **Legal & the leadership team:** Review and update retention schedules based on evolving legal requirements. ## 4. Retention Periods Records shall be retained based on the following general guidelines, unless otherwise specified by law or contractual obligations: | **Record Type** | **Retention Period** | | --- | --- | | Financial records (invoices, tax filings) | 7 years | | Employee records (HR files, payroll) | 7 years after termination | | Customer records | As required by contract or 5 years post-engagement | | Contracts & agreements | Duration of contract + 5 years | | IT system logs | 1 year | | Audit logs & compliance reports | 5 years | | Marketing materials & communication | 3 years | | Legal & regulatory documents | Permanent, unless otherwise specified | ## 5. Storage & Security - **Electronic Records:** Must be stored in secure cloud-based or on-premise environments with access controls. - **Physical Records:** Should be stored in locked, access-restricted areas. - **Confidential Information:** Requires encryption and restricted access. ## 6. Disposal of Records - **Electronic Records:** Must be permanently deleted using secure deletion methods. - **Paper Records:** Must be shredded or disposed of securely to prevent unauthorized access. - **Backup Copies:** Retired according to IT security procedures to prevent data breaches. ## 7. Legal & Regulatory Compliance This policy aligns with applicable laws and industry standards, including: - Canada’s **Personal Information Protection and Electronic Documents Act (PIPEDA)** - **General Data Protection Regulation (GDPR)** (if applicable to EU customers) - **Local provincial and federal data retention laws** ## 8. Policy Review & Updates This policy will be reviewed annually or as required by regulatory changes. Any updates must be approved by the leadership team and communicated to relevant stakeholders. ## 9. Contact Information For questions or concerns regarding this policy, contact **success@speakai.co**. ## 10. References - Speak AI **Business Continuity Plan**: [Business Continuity Plan](/help/security/policies/business-continuity-plan/) - Speak AI **Data Classification Policy**: [Data Classification Policy](/help/security/policies/data-classification/) # Remote network access policy > Requirements for connecting to Speak AI systems remotely, covering VPN, device posture and authentication. Source: https://docs.speakai.co/help/security/policies/remote-network-access/ · Markdown: https://docs.speakai.co/help/security/policies/remote-network-access/index.md **1. Purpose**

This policy establishes secure remote access requirements to ensure the confidentiality, integrity, and availability of Speak AI Inc.'s network and systems. It defines controls for Virtual Private Network (VPN) use, encryption, multi-factor authentication (MFA), and monitoring. **2. Scope**

This policy applies to all employees, contractors, and third parties who require remote access to Speak AI Inc.'s internal systems, applications, and data. **3. Secure Remote Access Requirements** **3.1 VPN Usage** - Remote access to Speak AI Inc. systems must be conducted through an approved VPN. - VPN connections must use strong encryption protocols (e.g., AES-256, TLS 1.2 or higher). - Split tunneling must be disabled to prevent unauthorized traffic flow. **3.2 Authentication & Authorization** - Multi-Factor Authentication (MFA) is mandatory for all remote access users. - Unique credentials must be issued to each authorized user. - Access must be granted based on the principle of least privilege (PoLP). - Remote access accounts must be reviewed periodically and disabled if inactive. **3.3 Device Security Requirements** - Only company-approved and secured devices may be used for remote access. - Endpoints must have up-to-date antivirus software and security patches. - Personal devices are prohibited unless explicitly authorized and secured. **3.4 Encryption & Data Protection** - All remote sessions must be encrypted using industry-standard protocols. - Sensitive data must not be stored on local devices without encryption. - File transfers between remote devices and internal networks must be logged and monitored. **3.5 Monitoring & Logging** - All remote access activity must be logged and monitored for suspicious behavior. - Automated alerts must be enabled for unauthorized access attempts. - Regular audits must be conducted to ensure compliance with this policy. **3.6 Access Revocation** - Remote access privileges must be revoked immediately upon termination or role change. - Temporary remote access must be approved with an expiration date. **4. Compliance & Enforcement** - Any violations of this policy may result in disciplinary action, including termination. - IT security teams must conduct regular security assessments to enforce compliance. - Users must acknowledge this policy before receiving remote access privileges. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: /help/security/policies/network-security/ - Speak AI **Access Management Policy**: /help/security/policies/access-management/ - Speak AI **Encryption Policy**: /help/security/policies/encryption/ - Speak AI **Vulnerability Management Policy**: /help/security/policies/vulnerability-management/ **6. Contact Information**

For questions or concerns regarding remote network access, please contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving security best practices and industry regulations. # Sanctions compliance policy > How Speak AI screens customers and partners against sanctions lists and what happens on a match. Source: https://docs.speakai.co/help/security/policies/sanctions-compliance/ · Markdown: https://docs.speakai.co/help/security/policies/sanctions-compliance/index.md **1. Purpose**

This policy establishes guidelines for ensuring compliance with international sanctions, trade restrictions, and country-blocking measures applicable to Speak AI Inc. The objective is to prevent unauthorized transactions with sanctioned entities and individuals. **2. Scope**

This policy applies to all Speak AI employees, contractors, and third-party vendors engaged in business operations, transactions, and service delivery. **3. Compliance Requirements** **3.1 Screening & Due Diligence** - Speak AI must conduct due diligence to ensure that business partners, customers, and vendors are not listed on applicable sanctions lists (e.g., OFAC, EU, UN, UK, Canada). - Automated screening tools should be utilized to identify restricted parties before engaging in business activities. - Ongoing monitoring of business relationships must be maintained to detect changes in sanction status. **3.2 Transaction Monitoring & Restrictions** - Transactions with individuals, organizations, or countries subject to sanctions must be blocked and reported to the appropriate authorities. - Payments, financial transactions, and service access to sanctioned entities must be restricted or denied. - Employees must report any suspected violation of sanctions laws immediately to the CTO or designated security lead. **3.3 Training & Awareness** - Employees handling international transactions, customer relationships, and financial matters must receive periodic training on sanctions regulations. - Regular updates and internal communications should be provided to keep staff informed of changes in sanctions policies. **3.4 Reporting & Compliance Enforcement** - Any suspected violations of sanctions laws must be promptly reported to the CTO or designated security lead and legal team. - Speak AI must cooperate with regulatory authorities in the investigation of any potential breaches. - Disciplinary actions, including termination, may be taken against employees or vendors found in violation of this policy. **4. Compliance Audits & Reviews** - Speak AI will conduct periodic internal audits to ensure adherence to sanctions compliance policies. - Compliance findings will be documented, and corrective actions will be implemented to address any identified gaps. - Speak AI’s the CTO or designated security lead is responsible for maintaining up-to-date knowledge of sanctions regulations and updating this policy accordingly. **5. References & Supporting Documents** - Speak AI **Third-Party Security Policy**: [/help/security/policies/third-party-security/](/help/security/policies/third-party-security/) - Speak AI **Business Ethics and Corporate Compliance Policy** - U.S. Department of the Treasury OFAC Sanctions List: https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information - European Union Sanctions List: [https://www.sanctionsmap.eu](https://www.sanctionsmap.eu) **6. Contact Information**

For compliance concerns or policy clarifications, contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with regulatory changes and best practices. # Service continuity policy > The availability commitments behind the Speak AI service and the controls that maintain them. Source: https://docs.speakai.co/help/security/policies/service-continuity/ · Markdown: https://docs.speakai.co/help/security/policies/service-continuity/index.md ## 1. Purpose and Scope The purpose of this Service Continuity Policy / Business Continuity Policy is to establish the framework for ensuring the continuous operation of Speak AI Inc.'s ("Speak AI") critical business functions and services in the event of a disruption. This policy applies to all employees, contractors, and third parties involved in Speak AI's operations. ## 2. Policy Statement Speak AI is committed to maintaining the availability of its services and ensuring that critical business operations can continue with minimal interruption during and after a disruption. This policy outlines the procedures and responsibilities for business continuity planning, incident response, and recovery. Speak AI is fully capable of accommodating customer requirements for Recovery Point Objective (RPO) and Recovery Time Objective (RTO) as part of our disaster recovery and business continuity strategies. ## 3. Business Continuity Planning - **Business Impact Analysis (BIA):** A BIA will be conducted to identify and prioritize critical business functions and processes. The BIA will assess the potential impact of various disruption scenarios on these functions. - **Risk Assessment:** Regular risk assessments will be performed to identify potential threats to business continuity and to evaluate the effectiveness of existing controls and mitigation strategies. - **Continuity Plans:** Business continuity plans will be developed and maintained for all critical functions. These plans will include detailed procedures for response, recovery, and restoration activities. - **Customizable RPO/RTO**: •**Recovery Point Objective (RPO):** Our RPO settings are tailored to minimize data loss in the event of a system failure. We provide a standard RPO setting of 30 minutes, which can effectively address the needs of most clients. This frequent data backup ensures that any lost data is limited to a maximum of 30 minutes’ work, which is suitable for various operational needs. •**Recovery Time Objective (RTO):** Our RTO capabilities are designed to ensure rapid restoration of services after a disruption. We can configure our systems to achieve RTOs that vary depending on the client’s operational requirements, generally ranging from a few minutes to several hours. This is supported by our cloud infrastructure, which includes high availability and failover solutions. ## 4. Roles and Responsibilities - **CEO:** Responsible for overseeing the development, implementation, and maintenance of the business continuity program. This includes coordinating with all relevant departments and stakeholders. - **Department Managers:** Responsible for developing, maintaining, and testing continuity plans for their respective departments. They will also ensure that their teams are trained on these plans. - **All Employees:** Responsible for understanding their roles in the business continuity plan and participating in training and exercises as required. ## 5. Incident Response and Recovery - **Incident Detection and Reporting:** Any disruption or potential threat to business continuity must be reported immediately to the Business Continuity Manager. A designated incident response team will assess and categorize the incident. - **Response Procedures:** The incident response team will activate the relevant business continuity plans based on the nature and severity of the disruption. This includes communication protocols, resource allocation, and coordination with external parties if necessary. - **Recovery Procedures:** Detailed recovery procedures will be followed to restore critical business functions and services to normal operations. This includes data recovery, system restoration, and continuity of customer services. We engage with our clients to understand their specific operational and business needs, allowing us to configure our disaster recovery solutions accordingly. ## 6. Communication - **Internal Communication:** Clear and effective communication channels will be established to keep all employees informed during a disruption. This includes updates on the status of the incident, response actions, and recovery efforts. - **External Communication:** Communication with customers, partners, and other stakeholders will be managed to provide timely and accurate information about the impact of the disruption and the steps being taken to address it. Recovery objectives are discussed and agreed upon with clients, ensuring that expectations are clear and that Speak AI is aligned with the client’s business requirements. ## 7. Training and Awareness - **Employee Training:** All employees will receive regular training on the business continuity policy and their specific roles and responsibilities during a disruption. This training will include participation in simulated exercises and drills. - **Ongoing Awareness:** Continuous awareness programs will be conducted to keep employees informed about the importance of business continuity and the procedures in place to ensure it. ## 8. Testing and Maintenance - **Plan Testing:** Business continuity plans will be tested regularly through simulations and drills to ensure their effectiveness and identify any areas for improvement. Testing schedules will be determined based on the criticality of the functions and services. Our recovery procedures are tested regularly to ensure that they effectively meet the designated RPO and RTO settings. These tests help confirm the effectiveness of our backup systems and disaster recovery plans, and they provide opportunities for ongoing improvement. - **Plan Maintenance:** Continuity plans will be reviewed and updated regularly to reflect changes in business operations, technology, and external threats. Lessons learned from tests and actual incidents will be incorporated into the plans. ## 9. Compliance and Review - **Regulatory Compliance:** Speak AI will ensure that its business continuity practices comply with relevant laws, regulations, and industry standards. - **Policy Review:** This policy will be reviewed annually or as needed to ensure its relevance and effectiveness. Changes to the policy will be communicated to all employees. ## 10. Contact Information For any inquiries or issues related to this Service Continuity Policy / Business Continuity Policy, please contact the Business Continuity Manager at [success@speakai.co](mailto:success@speakai.co). # Third-party data privacy policy > How Speak AI vets and contracts with sub-processors that may handle customer personal data. Source: https://docs.speakai.co/help/security/policies/third-party-data-privacy/ · Markdown: https://docs.speakai.co/help/security/policies/third-party-data-privacy/index.md **1. Purpose**

This policy establishes privacy obligations for third-party vendors that access, process, or store Speak AI Inc.'s data. It ensures compliance with applicable privacy laws and regulatory requirements while protecting sensitive information from unauthorized use or disclosure. **2. Scope**

This policy applies to all third-party vendors, contractors, and service providers engaged by Speak AI Inc. that have access to personal, confidential, or proprietary data. **3. Privacy Obligations** **3.1 Data Use & Limitation** - Third parties may only use Speak AI Inc.'s data for the specific purpose defined in their contractual agreements. - Any secondary use, processing, or transfer of data must receive prior written approval from Speak AI Inc. - Vendors must implement industry-standard security measures to prevent unauthorized data access, processing, or sharing. **3.2 Data Retention & Disposal** - Third parties must securely store data only for the duration necessary to fulfill contractual obligations. - Upon contract termination or request, vendors must securely delete all data in accordance with Speak AI Inc.'s **Records Retention Policy**. - All data disposal processes must comply with industry standards and regulatory requirements. **3.3 Data Disclosure & Sharing** - Third parties must not disclose Speak AI Inc.’s data to any unauthorized entity. - If required by law, disclosure of data must be preceded by notifying Speak AI Inc. in writing unless legally prohibited. - Vendors must ensure that any subcontractors handling Speak AI Inc.'s data comply with equivalent privacy and security requirements. **3.4 Compliance with Privacy Laws** - Third parties must adhere to applicable data protection regulations, including **GDPR**, **CCPA**, and other relevant privacy laws. - Vendors must support Speak AI Inc. in responding to data subject rights requests, including access, correction, and deletion of personal data. - Any security incidents or data breaches must be reported to Speak AI Inc. within 24 hours of detection. **4. Security Controls** - Vendors must implement encryption for data in transit and at rest as per Speak AI Inc.'s **Encryption Policy**. - Multi-factor authentication (MFA) must be enforced for accessing sensitive data. - Vendors must conduct periodic audits to ensure compliance with security and privacy policies. **5. Compliance & Enforcement** - Speak AI Inc. reserves the right to audit third-party vendors for compliance with this policy. - Non-compliance may result in contract termination, legal action, or other remedial measures. - Vendors must provide documentation upon request to demonstrate compliance with privacy and security obligations. **6. References & Supporting Documents** - Speak AI **Privacy Policy**: [https://speakai.co/privacy-policy/](https://speakai.co/privacy-policy/?utm_source=docs&utm_medium=referral&utm_campaign=help) - Speak AI **Encryption Policy**: [/help/security/policies/encryption/](/help/security/policies/encryption/) - Speak AI **Records Retention Policy**: [/help/security/policies/records-retention/](/help/security/policies/records-retention/) **7. Contact Information** For inquiries regarding third-party data privacy obligations, contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving regulatory and security requirements. # Third-party security policy > Security requirements Speak AI places on vendors and partners, and how their compliance is assessed. Source: https://docs.speakai.co/help/security/policies/third-party-security/ · Markdown: https://docs.speakai.co/help/security/policies/third-party-security/index.md ## 1. Purpose and Scope The purpose of this Third-Party Security Policy is to establish guidelines and procedures for managing the security risks associated with third-party vendors, partners, and service providers ("third parties") who have access to Speak AI Inc.'s ("Speak AI") information systems and data. This policy applies to all third-party relationships that involve access to Speak AI's systems, networks, or data. ## 2. Policy Statement Speak AI is committed to ensuring the security and integrity of its information assets by implementing rigorous security controls for third-party relationships. This policy outlines the requirements for assessing, managing, and monitoring the security practices of third parties to protect Speak AI's data and systems. ## 3. Third-Party Risk Assessment - **Initial Assessment:** Before engaging with a third party, a thorough risk assessment will be conducted to evaluate their security practices, policies, and potential impact on Speak AI's security posture. This includes reviewing their compliance with relevant security standards and regulations. - **Ongoing Assessment:** Third parties will be subject to periodic security assessments to ensure ongoing compliance with Speak AI's security requirements. The frequency and scope of these assessments will be based on the level of access and risk associated with the third party. ## 4. Security Requirements for Third Parties - **Contractual Agreements:** All third parties must sign a contractual agreement that includes specific security requirements and obligations. These agreements will outline the third party's responsibilities for protecting Speak AI's data and systems, including compliance with relevant security policies and standards. - **Access Control:** Third parties will be granted access to Speak AI's systems and data based on the principle of least privilege. Access will be restricted to the minimum necessary to perform their duties and will be regularly reviewed and adjusted as needed. - **Data Protection:**Third parties must implement appropriate measures to protect the confidentiality, integrity, and availability of Speak AI's data. This includes encrypting data at rest and in transit, as well as ensuring secure data handling and storage practices. ## 5. Monitoring and Auditing - **Activity Monitoring:** Speak AI will monitor third-party activities on its systems and networks to detect any unauthorized access or suspicious behavior. Automated tools and manual reviews will be used to ensure compliance with security policies. - **Regular Audits:** Third parties will be subject to regular security audits to verify their adherence to Speak AI's security requirements. Audit results will be reviewed, and any identified issues will be addressed promptly. ## 6. Incident Response - **Incident Reporting:** Third parties are required to report any security incidents or breaches involving Speak AI's data or systems immediately upon discovery. Incident reports should include a description of the incident, affected systems, and any actions taken. - **Response Coordination:** Speak AI will work with third parties to investigate and resolve security incidents. This includes coordinating response efforts, conducting root cause analysis, and implementing corrective actions to prevent recurrence. ## 7. Termination of Access - **End of Engagement:** Upon the termination of the third-party relationship, all access to Speak AI's systems and data will be revoked. Third parties must return or securely destroy any Speak AI data in their possession and provide confirmation of such actions. - **Post-Termination Review:** A post-termination review will be conducted to ensure that all access has been properly revoked and that no data remains with the third party. ## 8. Compliance and Enforcement - **Policy Compliance:** Compliance with this policy is mandatory for all third parties. Non-compliance may result in the termination of the third-party relationship and potential legal actions. - **Enforcement:** Speak AI reserves the right to enforce this policy through audits, assessments, and monitoring activities. Third parties must cooperate with these efforts to ensure compliance. ## 9. Roles and Responsibilities - **Vendor Management Team:**Responsible for overseeing third-party relationships, conducting risk assessments, and ensuring compliance with this policy. - **IT Security Team:** Responsible for monitoring third-party activities, coordinating incident response efforts, and conducting security audits. - **Third Parties:** Responsible for adhering to Speak AI's security requirements, reporting security incidents, and cooperating with audits and assessments. ## 10. Policy Review This policy will be reviewed annually or as needed to ensure its effectiveness and alignment with industry best practices and regulatory requirements. Changes to the policy will be communicated to all third parties. ## 11. Contact Information For any inquiries or issues related to this Third-Party Security Policy, please contact the Vendor Management Team at [success@speakai.co](mailto:success@speakai.co). # Vulnerability management policy > How Speak AI scans for, prioritizes, patches and verifies vulnerabilities, including remediation timeframes. Source: https://docs.speakai.co/help/security/policies/vulnerability-management/ · Markdown: https://docs.speakai.co/help/security/policies/vulnerability-management/index.md ## 1. Purpose and Scope The purpose of this Vulnerability Management Policy is to outline the processes and procedures that Speak AI Inc. ("Speak AI") will follow to identify, assess, mitigate, and communicate vulnerabilities within our software applications, systems, and infrastructure. This policy applies to all aspects of Speak AI's operations and covers the entire vulnerability management lifecycle. ## 2. Policy Statement Speak AI is committed to ensuring the security and integrity of our software platforms, including our transcription and natural language processing application, Speak. We recognize the importance of promptly identifying and addressing vulnerabilities to protect our users' data and maintain the trust they place in our services. This policy establishes the framework for managing vulnerabilities effectively and efficiently. ## 3. Vulnerability Identification Speak AI will employ proactive measures to identify vulnerabilities in its software platforms, including regular security assessments, code reviews, penetration testing, and third-party security assessments where applicable. We will also maintain a process for receiving vulnerability reports from users, security researchers, and other external parties. ## 4. Vulnerability Assessment Upon identifying a potential vulnerability, Speak AI's security team will assess its severity and potential impact on our software platforms and user data. The assessment will consider factors such as the nature of the vulnerability, the affected components, and the potential exploitability. ## 5. Vulnerability Mitigation Speak AI will follow a risk-based approach to prioritize and address vulnerabilities based on their severity and potential impact. The company will develop and implement appropriate mitigation strategies, which may include code patches, updates, configuration changes, or temporary workarounds. Urgent vulnerabilities with high potential impact will be addressed on an expedited basis. ## 6. Vulnerability Communication Speak AI is committed to transparently communicating with its users and stakeholders regarding vulnerabilities that could impact their use of our software platforms. We will provide timely and accurate information about vulnerabilities, their potential impact, and the steps users should take to mitigate the risk. Speak AI will maintain a process for notifying users about security updates and necessary actions through appropriate channels. ## 7. Remediation Verification After applying mitigation measures, Speak AI will conduct thorough testing to verify the effectiveness of the applied remedies and ensure that the vulnerability has been properly addressed. This verification process may involve internal testing, quality assurance, and validation against security benchmarks. ## 8. Ongoing Improvement Speak AI is dedicated to continuously improving its vulnerability management process. We will regularly review and update this policy to adapt to evolving security threats, technological advancements, and industry best practices. The company will also invest in security training and awareness programs for employees to enhance their understanding of vulnerability management. ## 9. Reporting Speak AI will maintain records of vulnerability assessments, mitigation efforts, and communication with stakeholders as part of its commitment to transparency and accountability. ## 10. Conclusion This Vulnerability Management Policy serves as a foundation for Speak AI's approach to identifying, assessing, mitigating, and communicating vulnerabilities within its software platforms. By following this policy, Speak AI aims to ensure the security, reliability, and trustworthiness of its services, fostering a safe environment for its users and stakeholders. ## 11. Policy Review This policy will be reviewed on an annual basis or as needed to ensure its relevance and effectiveness in addressing emerging security challenges. # Wireless security policy > Encryption, authentication and segmentation requirements for wireless networks used to reach Speak AI systems. Source: https://docs.speakai.co/help/security/policies/wireless-security/ · Markdown: https://docs.speakai.co/help/security/policies/wireless-security/index.md **1. Purpose**

This policy establishes security guidelines for Wi-Fi networks within Speak AI Inc., ensuring the confidentiality, integrity, and availability of wireless communications by enforcing authentication requirements, encryption standards, and access controls. **2. Scope**

This policy applies to all wireless network devices, access points, and users connecting to Speak AI Inc.'s Wi-Fi networks, including corporate, guest, and employee networks. **3. Security Requirements** **3.1 Authentication & Access Control** - Wireless access must be restricted to authorized users and devices only. - Multi-Factor Authentication (MFA) must be enforced for administrative access to wireless network devices. - Role-Based Access Control (RBAC) must be implemented to limit access based on user privileges. **3.2 Encryption Standards** - All corporate Wi-Fi networks must use WPA3 encryption. If WPA3 is unavailable, WPA2-Enterprise must be used. - Guest networks must be separated from internal corporate networks and must use WPA3 or WPA2-Personal at a minimum. - Open or WEP-encrypted networks are strictly prohibited. **3.3 Network Segmentation** - Corporate and guest networks must be logically separated to prevent unauthorized access to internal resources. - IoT and other non-secure devices must be isolated on a dedicated network segment. **3.4 Monitoring & Logging** - Wireless network activity must be monitored for anomalies and unauthorized access attempts. - Logs of wireless authentication and access must be retained in accordance with the **Records Retention Policy**. **3.5 Device Configuration & Patch Management** - Default credentials must be changed before deployment of any wireless access points. - Wireless network devices must be kept up to date with the latest security patches and firmware updates. **3.6 Guest Wi-Fi Access** - Guest users must authenticate via a captive portal with time-limited access. - Guest network access must be monitored and restricted from connecting to internal systems. **4. Compliance & Enforcement** - Regular security audits must be performed to ensure adherence to this policy. - Non-compliant devices must be reconfigured or removed from the network. - Violations of this policy may result in disciplinary action or network access restrictions. **5. References & Supporting Documents** - Speak AI **Network Security Policy**: /help/security/policies/network-security/ - Speak AI **Access Management Policy**: /help/security/policies/access-management/ - Speak AI **Encryption Policy**: /help/security/policies/encryption/ **6. Contact Information** For any questions or concerns regarding wireless security, please contact **success@speakai.co**. *** This policy is subject to periodic review and updates to align with evolving security best practices and industry regulations. # Sharing > Sharing in Speak AI. Source: https://docs.speakai.co/help/sharing/ · Markdown: https://docs.speakai.co/help/sharing/index.md Share what Speak AI captured, at whatever scope fits: a [public link](/help/sharing/links/) to one recording, an [embedded player](/help/sharing/player/) on your own site, a [clip](/help/sharing/clips/) of the moment that matters, or a whole [shareable library](/help/sharing/libraries/), white-label included, for a client who should see everything without an account. ![Embed Media: shared dashboards and folders with view counts](/help/media/sharing/sharing-index.jpg) - **[Clips](/help/sharing/clips/)** - **[Embedded player](/help/sharing/player/)** - **[Public links](/help/sharing/links/)** - **[Shareable libraries](/help/sharing/libraries/)** Sharing externally for clients? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll set up white-label sharing with you. # Clips > Cut any passage of a recording into a standalone audio or video clip for social posts, highlight reels or sharing a single moment. Source: https://docs.speakai.co/help/sharing/clips/ · Markdown: https://docs.speakai.co/help/sharing/clips/index.md ## What are clips? ![The Clips library](/help/media/sharing/sharing-clips.jpg) Clips let you extract specific portions of your recordings as standalone audio or video segments. They're perfect for creating social media content, sharing key meeting moments, or highlighting important quotes from interviews. ## Creating a clip manually 1. Open your transcribed media file 1. Find the section you want to clip in the transcript 1. Select the text or note the timestamps 1. Use the clip creation tool to define the start and end time 1. Name your clip and save it ## Creating clips with AI Chat You can also create clips using natural language in the AI Chat: - "Create a clip from 0:30 to 1:45" - "Cut the section between 2 minutes and 5 minutes" - "Make a 30-second clip starting at 1:00" ## Sharing clips Once created, clips can be: - Shared via a direct link - Embedded on websites - Downloaded as standalone files - Used in social media posts ## Use cases - **Podcasters:** Pull the best quotes for social media promotion - **Researchers:** Isolate key interview segments for analysis - **Teams:** Share specific meeting decisions without sending the full recording - **Content creators:** Repurpose long-form content into short-form clips Need help creating clips? Send us a message or check out our [AI Chat Prompts Guide](/help/ai-chat/prompts/) for more examples. ## Current capabilities Direct audio/video editing through the transcript is not yet available. However, Speak AI offers powerful alternatives: ### Create clips You can extract specific portions of your recordings as standalone clips: - Use the clip tool to select a time range - Or use AI Chat: "Create a clip from 1:30 to 2:45" - Clips can be shared, downloaded, and embedded See our [clips guide](/help/sharing/clips/) for details. ### Edit the transcript text You can fully edit the transcript text: - Click any word to edit it directly - Find and replace across the entire transcript - Rename speakers - Use [keyboard shortcuts](/help/transcription/editing/) for fast editing ### Export for external editing Export your transcript as SRT or VTT subtitle files, then import them into video editing tools like Adobe Premiere Pro, Final Cut Pro, or DaVinci Resolve. We also support direct Premiere Pro XML export. See our [export formats guide](/help/exports/) for all available options. Have ideas for transcript-based editing features? We'd love to hear from you. Send us a message anytime. ### Overview Transform your podcast episodes into valuable, SEO-friendly content for your website and social media. Speak AI helps you automatically generate blog posts, social clips, and searchable archives from your audio, saving you time and expanding your reach. Stop letting your podcast episodes sit in isolation. This feature allows you to easily repurpose your audio content into multiple formats, making it discoverable and engaging for a wider audience. ### How It Works The process is designed to be simple and efficient: - **Upload:** Start by uploading your podcast episode audio file. - **Transcribe:** Speak AI will automatically transcribe your audio. - **Speaker ID:** You can then identify and label speakers for clarity. - **AI Chat:** Generate show notes, summaries, and titles with AI assistance. - **Export:** Export your transcript and content in formats ready for your website or social media. ### Step-By-Step Guide Follow these steps to turn your podcast into engaging content: 1. **Upload:** Upload your episode audio file (MP3/WAV). 1. **Identify Speakers:** After transcription, open the file and label the speakers (e.g., "Host", "Guest"). Speak AI will apply these labels to the entire transcript. 1. **Generate Show Notes:** Run a AI Chat: "Write a summary, 5 bullet points, and a catchy title for this podcast." 1. **Create Clips:** Highlight key quotes in the transcript to create "Clips" for social media sharing. 1. **Export:** Export the transcript as HTML or Markdown to paste directly into your website (WordPress/CMS). ### Related Features - Speaker Identification - AI Chat - Clips ### Pro Tips Use the **Embed Player** on your podcast landing page to let listeners search for topics within the episode. ### Troubleshooting **Wrong Speaker Names:** You can rename speakers at any time; changes apply instantly. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Speak AI → Podcast Content. - **Try it out** with a simple test case by uploading an episode. - **Explore the options** for generating show notes and creating social clips. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Sharing](/help/sharing/) · [Shareable libraries](/help/sharing/libraries/) # Shareable libraries > Share a whole folder and its analytics with one link, optionally white-labeled, so a client or team sees the library without an account. Source: https://docs.speakai.co/help/sharing/libraries/ · Markdown: https://docs.speakai.co/help/sharing/libraries/index.md You can share your entire folder and analytics with your team with one click. Follow the video tutorial to create your first shareable media library assets. You can make it a completely white label with your brand color, fonts and many more. We also offer a solution to make it private and password protected. ## Use Shareable Media Library You can share your entire folder and analytics with your team with one click. Follow the video tutorial to create your first shareable media library assets. You can make it a completely white label with your brand color, fonts and many more. We also offer a solution to make it private and password protected. ## Watch the video tutorial here: Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Sharing](/help/sharing/) · [Clips](/help/sharing/clips/) # Public links > Generate a public link or embed a player so anyone can watch a recording with its transcript and insights, without an account. Source: https://docs.speakai.co/help/sharing/links/ · Markdown: https://docs.speakai.co/help/sharing/links/index.md ## Sharing options ### Public link Generate a shareable link that anyone can use to view your recording, transcript, and insights: 1. Open your media file 1. Click **Share** 1. Click **Generate Public Link** 1. Copy the link and share it Recipients can view the media player with transcript, search within the content, and see insights. ### Embeddable player Embed a media player on your website or blog: 1. Open your media file 1. Click **Share** 1. Copy the **Embed Code** (iframe) 1. Paste it into your website's HTML The embedded player includes audio/video playback, interactive transcript, and search functionality. ### Share to Slack Send a recording directly to a Slack channel if you have the Slack integration connected. ### Share to WordPress Publish your transcript and player directly to your WordPress site as a post or page. ## Access control - **Private:** Only you and your team members can access - **Public link:** Anyone with the link can view - **Password protected:** Require a password to access shared content - **Team sharing:** Share with specific team members or groups ## Sharing folders You can also share entire folders, giving recipients access to all media within that folder. This is useful for sharing a collection of interviews, meeting recordings, or research data with collaborators. ## Custom domains For a branded experience, you can set up a custom domain for your shared content. Instead of sharing links from player.speakai.co, your content appears on your own domain. Contact our team to set this up. ### Overview Speak AI provides a variety of ways to share your uploaded videos, ensuring you can reach your intended audience effectively. Whether you need to collaborate privately with your team, share with external stakeholders, or embed content on your website, Speak AI offers flexible solutions. This flexibility allows you to control access and distribute your video content smoothly, catering to different sharing needs and platforms. ### How It Works You can share videos through several methods: - Adding team members to a shared folder. - Generating a unique, shareable link. - Embedding the media player directly onto a website. ### Getting Started To access this feature, go to Media Library → Share Options in your dashboard. ### Prerequisites - An uploaded video file. - Permissions to share (Owner or Editor role). ### Step-By-Step Guide Follow these steps to share your videos: 1. **Shareable Link:** Open the media file, click **Share**, and toggle **Enable Shareable Link**. Copy the generated URL to send to anyone, including those without a Speak AI account. 1. **Team Folder Access:** Move the video into a **Shared Folder**. This automatically grants access to all team members assigned to that specific folder. 1. **Embed:** Within the Share menu, select **Embed**. You can customize the player's appearance (colors, size) and then copy the provided iframe code to integrate it into your website or Learning Management System (LMS). 1. **Export:** Download the video with captions burned directly into the file. This creates a standalone video file suitable for sharing outside of the platform. ### Troubleshooting Here are some common issues and their solutions: - **Start Time:** To have a shareable link start the video at a specific point, append `?t=SECONDS` to the URL. For example, to start at 2 minutes (120 seconds), use `?t=120`. ### Related Features - Embed Player - Folder Permissions ### Pro Tips Consider using the **Embed** option to present your video with an interactive transcript. This allows viewers to easily search the text and jump directly to specific moments within the video. ### Next Steps Ready to share your videos? Here's what to do next: - **Login to your account** and navigate to the Media Library. - **Select a video** you wish to share. - **Explore the sharing options** (Shareable Link, Team Folder, Embed) to find the best fit for your needs. - **Try embedding** a video on a test page to see it in action. ## Sharing media: embed players and public links ## Sharing options ### Public link Generate a shareable link that anyone can use to view your recording, transcript, and insights: 1. Open your media file 1. Click **Share** 1. Click **Generate Public Link** 1. Copy the link and share it Recipients can view the media player with transcript, search within the content, and see insights. ### Embeddable player Embed a media player on your website or blog: 1. Open your media file 1. Click **Share** 1. Copy the **Embed Code** (iframe) 1. Paste it into your website's HTML The embedded player includes audio/video playback, interactive transcript, and search functionality. ### Share to Slack Send a recording directly to a Slack channel if you have the Slack integration connected. ### Share to WordPress Publish your transcript and player directly to your WordPress site as a post or page. ## Access control - **Private:** Only you and your team members can access - **Public link:** Anyone with the link can view - **Password protected:** Require a password to access shared content - **Team sharing:** Share with specific team members or groups ## Sharing folders You can also share entire folders, giving recipients access to all media within that folder. This is useful for sharing a collection of interviews, meeting recordings, or research data with collaborators. ## Custom domains For a branded experience, you can set up a custom domain for your shared content. Instead of sharing links from player.speakai.co, your content appears on your own domain. Contact our team to set this up. Need help? Contact our support team or check out our other guides. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Sharing](/help/sharing/) · [Clips](/help/sharing/clips/) # Embedded player > Change the player's colors, controls and transcript panel so an embedded recording matches the page it sits on. Source: https://docs.speakai.co/help/sharing/player/ · Markdown: https://docs.speakai.co/help/sharing/player/index.md In order to customize your media players, click on your profile icon in the top right-hand corner and select the "Player Branding" button from the drop-down list. Once directed to the "Player Branding" page, you will have the opportunity to customize your embeddable media players in a variety of ways: - Allowing viewers to download your data visualizations - Allowing indexing for Search Engine Optimization - Hiding the title and description of the video - Preparing a Call to Action button to direct your viewers towards the embedded video - A checklist of which Insights you would like displayed alongside your video - Opportunities to upload new Background Images and Logos - Opportunities to change the Brand color of your videos Once you have made your desired changes, click the "Save" button in the top right-hand corner. ## Overview Make your embedded media players look exactly like your brand. You can easily customize colors, themes, and fonts to create a smooth experience for your audience. This ensures your brand identity is consistent across all your content, enhancing professionalism and recognition. ## Getting Started To access this feature, go to [Shared Media → Settings → Branding & Customization](https://app.speakai.co/embed-media) in your dashboard. ## Configuration You can fully customize the appearance of your embedded media players to match your brand identity. Follow these steps to adjust your player's look: - Go to **Shared Media** > **Settings** > **Branding & Customization** (or **Player Settings** for media players). - **Colors**: Set your **Primary Color** (buttons, highlights) and **Font Color**. - **Theme**: Choose between 'Light' or 'Dark' mode base themes. - **Font Family**: Select from available fonts (e.g., Poppins, Inter) to match your website. - **Waveform**: Toggle 'Hide Waveform' if you prefer a cleaner look. ## Advanced CSS For granular control, look for the **Custom CSS** field in the settings. You can enter standard CSS code here to override specific styles, such as: ```css .sp-recorder-btn { border-radius: 20px; font-weight: bold; } ``` These changes update the player in real-time. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the Branding & Customization settings. - **Experiment with the color and theme options** to find the perfect fit for your brand. - **Use the Custom CSS field** for any advanced styling needs. ## Player Branding ## Overview Make your embedded media players look exactly like your brand. You can easily customize colors, themes, and fonts to create a smooth experience for your audience. This ensures your brand identity is consistent across all your content, enhancing professionalism and recognition. ## Getting Started To access this feature, go to [Shared Media → Settings → Branding & Customization](https://app.speakai.co/embed-media) in your dashboard. ## Configuration You can fully customize the appearance of your embedded media players to match your brand identity. Follow these steps to adjust your player's look: - Go to **Shared Media** > **Settings** > **Branding & Customization** (or **Player Settings** for media players). - **Colors**: Set your **Primary Color** (buttons, highlights) and **Font Color**. - **Theme**: Choose between 'Light' or 'Dark' mode base themes. - **Font Family**: Select from available fonts (e.g., Poppins, Inter) to match your website. - **Waveform**: Toggle 'Hide Waveform' if you prefer a cleaner look. ## Advanced CSS For granular control, look for the **Custom CSS** field in the settings. You can enter standard CSS code here to override specific styles, such as: ```css .sp-recorder-btn { border-radius: 20px; font-weight: bold; } ``` These changes update the player in real-time. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the Branding & Customization settings. - **Experiment with the color and theme options** to find the perfect fit for your brand. - **Use the Custom CSS field** for any advanced styling needs. Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. ## Overview Speak AI embeds are designed to work smoothly within your existing pages. While they function independently, you can enhance their behavior and control their initial state using simple URL parameters. This allows you to tailor the playback experience directly from the page where the embed is hosted. For more advanced control, such as pausing or playing the embed from your parent page, you can use JavaScript messaging. This provides a way to communicate with the embed and react to key events like when the player is ready or when playback has finished. ## How It Works You can customize the initial state of a Speak AI embed by adding specific parameters to its URL. These parameters allow you to control aspects like automatic playback, starting at a particular time, or hiding the visual waveform. For more dynamic control, the embed can send messages to its parent page using JavaScript's `postMessage` API. These messages inform your page when the player is ready or when playback has completed. To ensure these messages are received, your website's domain must be whitelisted in the recorder settings if security policies are active. ## Getting Started To access this feature, go to [Side Navigation → Surveys](https://app.speakai.co/recorder) in your dashboard. ## Configuration You can append the following parameters to your embed URL to control its initial state: - `?autoplay=true`: Automatically start playback (if the browser allows). - `?t=120`: Start playback at a specific time, measured in seconds (e.g., 120 seconds). - `?hideWaveform=true`: Hide the visual waveform display. The embed may emit the following `postMessage` events for advanced control: - `ready`: Indicates that the player has finished loading. - `finish`: Signals that the playback has completed. ## Next Steps Ready to get started? - **Explore the embed URL parameters** to customize the initial playback experience. - **Implement JavaScript messaging** to gain more control and react to player events. - **Ensure your domain is whitelisted** if you encounter any security restrictions. Need help? Contact our support team or check out our other guides. These changes will only reflect on the iFrames at this moment. 1. You need to add "**?isHorizontal=true&playerWidth=70&transcriptWidth=30**" in your iFrame URL 1. You can dynamically change - **playerWidth and transcriptWidth.**The total should be 100. 1. For example, Here's my iframe code - Please check for src or URL and at the end of the URL, please include the above query parameters. ```html ``` The original URL is: **[`https://embed.speakai.co/iframe/portfolio-creation-for-software-developer-and-introduction-to-ai-ml-and-voice-applications-py8exhngbe`](https://embed.speakai.co/iframe/portfolio-creation-for-software-developer-and-introduction-to-ai-ml-and-voice-applications-py8exhngbe)** The new URL with the horizontal view should be: [`https://embed.speakai.co/iframe/portfolio-creation-for-software-developer-and-introduction-to-ai-ml-and-voice-applications-py8exhngbe?isHorizontal=true&playerWidth=70&transcriptWidth=30`](https://embed.speakai.co/iframe/portfolio-creation-for-software-developer-and-introduction-to-ai-ml-and-voice-applications-py8exhngbe?isHorizontal=true&playerWidth=70&transcriptWidth=30) You can remove Title or Description from the customization options in the app. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Sharing](/help/sharing/) · [Clips](/help/sharing/clips/) # Getting started > Upload or record audio, video and text, transcribe it across 93 languages with speakers identified, then summarize and analyze it with AI. Source: https://docs.speakai.co/help/start/ · Markdown: https://docs.speakai.co/help/start/index.md ## Getting started with Speak AI ![The Speak AI home screen: quick actions and getting-started checklist](/help/media/start/start-index.jpg) ## What is Speak AI? Speak AI is a platform for transcription and analysis. Upload or record audio, video, and text, and Speak will automatically transcribe it in 70+ languages, identify speakers, and generate summaries, insights, and action items using AI. It's built for anyone who works with recorded content: meetings, interviews, podcasts, research, customer calls, lectures, and more. ## Your first 5 minutes ### 1. Upload a file or start recording From your [dashboard](https://app.speakai.co/dashboard), click **Upload** to add an audio or video file (MP3, MP4, WAV, and many more formats supported). You can also use the built-in **Recorder** to capture audio directly, or connect the **Meeting Assistant** to auto-join your Zoom, Google Meet, Microsoft Teams, or Webex calls. ### 2. Wait for transcription Speak processes your file automatically. Most files under 30 minutes are transcribed in just a few minutes. You'll see a notification when it's ready. ### 3. Explore your transcript Once transcribed, you can: - **Read and search** the full transcript with timestamps - **Edit speakers** to label who said what - **Click any line** to jump to that moment in the audio/video ### 4. Use AI Chat This is where Speak gets powerful. Open AI Chat and ask anything about your recording: - "What are the key takeaways?" - "List all action items with owners" - "Summarize this in 5 bullet points" - "What questions were asked?" AI Chat works with Claude, Gemini, and GPT, so you get multi-model AI analysis. ## Key features to explore next - **Meeting Assistant** - Auto-join and record your calls - **Folders** - Organize recordings into projects or topics - **AI Insights** - Automatic keywords, categories, and sentiment analysis - **Embeddable Recorder** - Collect audio from others (interviews, surveys, feedback) - **Automations** - Run AI Chat prompts automatically on new uploads - **API and Integrations** - Connect with 5,000+ tools via Zapier, or use the Speak API directly ## Plans Speak AI offers a **free trial** with up to 1 hour of transcription (no credit card required). When you are ready for more transcription, AI Chat, and team seats, upgrade to **Pro**. See current plans and pricing at [speakai.co/pricing](https://speakai.co/pricing/). ## Quick start guide Looking for a complete guide to getting started with Speak AI? Check out our comprehensive [**Getting Started with Speak AI**](/help/start/) article. It covers everything you need in your first 5 minutes: uploading files, exploring transcripts, using AI Chat, and key features to try next. ## Quick links - [Go to your dashboard](https://app.speakai.co/dashboard) - [Upload a file](https://app.speakai.co/upload) - [Supported file formats](/help/uploads/formats/) - [Plans and pricing](/help/account/free-trial/) ## Use quick actions in the dashboard On the Speak Dashboard, there are four Quick Action buttons to choose from: New Upload, New Text, New Recorder or Live Record and more. Pressing any one of these buttons will direct you to their relevant pages. The New Upload button opens the Upload File window: The New text button will start an all-new text note: The New recorder button will start an all-new recorder: The Live Record button will start an all-new audio or video recording: ## What can I use Speak AI for You can use Speak for everything from sensitive research to personal analysis and marketing. We have clients from various industries who use Speak to further their business goals but also take advantage of our platform to brainstorm, analyze speech habits, find trends in their content strategy or to conduct **[competitor research](https://speakai.co/how-to-analyze-your-competitors-videos/)**. Feel free to visit our **[resources](https://speakai.co/blog/)** section to explore the power of Speak. ## Is Speak AI the same as Speak.com ## No, they are different products **Speak AI** (speakai.co) and **Speak** (speak.com) are completely separate companies with different products. ### Speak AI (speakai.co) - That's us. Speak AI is a platform for **transcription and analysis**. We help you: - Transcribe audio and video in 70+ languages - Identify speakers automatically - Generate AI summaries, action items, and insights - Analyze meetings, interviews, podcasts, research recordings, and more If you work with recorded audio or video content and want to turn it into searchable, analyzable text with AI insights, you're in the right place. ### Speak.com Speak.com is a language learning platform focused on helping people practice speaking foreign languages through AI conversation. If you're looking to practice English or another language, that's a different product at [speak.com](https://speak.com). ## Want to try Speak AI? If you're curious about what Speak AI can do, try uploading an audio or video file from your [dashboard](https://app.speakai.co/dashboard). We'll transcribe it and show you the AI analysis features. It's free to get started. ## AI Agents: getting started ## What are AI Agents? Speak AI Agents are conversational AI assistants you can deploy to automate interviews, collect feedback, answer questions, and more. They can interact via voice (phone or web), video (avatar), or text chat. ## Types of agents - **Voice agents:** Conduct phone or web-based voice conversations. Users call a phone number or click a link to talk. - **Video agents:** Avatar-based conversations with a visual AI presenter. - **Chat agents:** Text-based conversations embedded on your website. ## Setting up your first agent 1. Go to [agents.speakai.co](https://agents.speakai.co) 1. Click **Create Agent** 1. Choose your agent type (voice, video, or chat) 1. Configure your agent: * **Name and personality:** Set the tone and style of conversation * **Welcome message:** What the agent says first * **Instructions:** Guide the conversation flow * **Knowledge base:** Upload documents, JSON, or website URLs for the agent to reference * **Structured outputs:** Define data fields to extract from conversations * **Custom vocabulary:** Add industry-specific terms * **Topics to avoid:** Set boundaries for the conversation 1. Save and publish your agent ## Deploying your agent Once created, you can deploy your agent in several ways: - **Direct link:** Share a URL that opens the agent conversation - **Phone number:** Assign a Twilio phone number so users can call in - **Website embed:** Use an iframe or script tag to embed the agent on your site - **QR code:** Generate a QR code that links to your agent ## After conversations Every conversation is automatically: - Recorded (audio) - Transcribed - Analyzed for structured outputs you defined - Available for review in the conversation audit dashboard The agent also identifies knowledge gaps and suggests FAQs based on questions it could not answer well. ## Use cases - **HR phone screening:** Candidates call or click a link to complete structured interviews - **Customer feedback:** Collect voice-of-customer insights at scale - **Patient testimonials:** HIPAA-compliant interview collection via QR code - **Employee documentation:** Guide managers through structured incident reporting - **Sales qualification:** Pre-qualify leads with intelligent conversation AI Agents is a separate product from the core Speak AI transcription platform. Contact our team to learn more about pricing and setup: [Book a consultation](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). For more details, visit [speakai.co/ai-agents](https://speakai.co/ai-agents/). Need help? Reach out to us anytime through this chat, or explore our other help articles. New to Speak AI? Start here. Create your account, upload your first recording, and see a transcript with insights in your first five minutes. Speak AI transcribes in 93 languages, separates speakers automatically, and turns what was said into answers you can search, share, and act on. - **[Account setup](/help/start/account-setup/)** - **[Classic app](/help/start/classic-app/)** - **[Mobile app](/help/start/mobile-app/)** Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). # Account setup > Sign up with email or single sign-on, confirm your address, and land in a workspace ready for your first upload. Source: https://docs.speakai.co/help/start/account-setup/ · Markdown: https://docs.speakai.co/help/start/account-setup/index.md Hey there. Welcome to Speak AI. Let's help you set up your account. ## Signing up for your account Before using the Speak platform, you must sign up for an account to start your free trial. Sign up from our [website](https://speakai.co/?utm_source=docs&utm_medium=referral&utm_campaign=help) using the "Sign Up" button in the top right corner of your screen. Once you're on the registration page, you can sign up using your email or your Google account. Fill in the required details, and you're good to go. We're excited to have you here. 😊 ## Creating an account Hey there. Welcome to Speak AI. Let's help you set up your account. ## Signing up for your account Before using the Speak platform, you must sign up for an account to start your free trial. Sign up from our [website](https://speakai.co/) using the "Sign Up" button in the top right corner of your screen. Once you're on the registration page, you can sign up using your email or your Google account. Fill in the required details, and you're good to go. We're excited to have you here. 😊 Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Getting started](/help/start/) · [Classic app](/help/start/classic-app/) # Classic app > Speak AI now runs at app.speakai.co and every account is moved over automatically. How to switch back to the classic app while it lasts. Source: https://docs.speakai.co/help/start/classic-app/ · Markdown: https://docs.speakai.co/help/start/classic-app/index.md ## Where Speak AI lives now The latest version of Speak AI is at [app.speakai.co](https://app.speakai.co). Every account now uses it automatically. Sign in with the same email and password you already use, and your account, media library, transcripts, and team all come with you. There is nothing to migrate by hand. ## Using the classic app before it retires If your account was created before April 1, 2026 and you have an active subscription, you can still open the classic app at [legacy.speakai.co](https://legacy.speakai.co) until it retires on August 1, 2026. To switch, go to your dashboard and find the card titled **Welcome to the new and improved Speak experience.**, then click **Switch to the old experience**. You can return to app.speakai.co anytime. ## What happens on August 1, 2026 The classic app retires and every account moves fully to app.speakai.co. Your data is already there, so there is nothing you need to do. ## Need help? The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). ## Accessing the classic Speak AI app before it retires ## Where Speak AI lives now The latest version of Speak AI is at [app.speakai.co](https://app.speakai.co). Every account now uses it automatically. Sign in with the same email and password you already use, and your account, media library, transcripts, and team all come with you. There is nothing to migrate by hand. ## Using the classic app before it retires If your account was created before April 1, 2026 and you have an active subscription, you can still open the classic app at [legacy.speakai.co](https://legacy.speakai.co) until it retires on August 1, 2026. To switch, go to your dashboard and find the card titled **Welcome to the new and improved Speak experience.**, then click **Switch to the old experience**. You can return to app.speakai.co anytime. ## What happens on August 1, 2026 The classic app retires and every account moves fully to app.speakai.co. Your data is already there, so there is nothing you need to do. ## Need help? The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Getting started](/help/start/) · [Account setup](/help/start/account-setup/) # Mobile app > Record, upload, transcribe and analyze audio from iOS or Android. Recordings sync to the same workspace as the web app automatically. Source: https://docs.speakai.co/help/start/mobile-app/ · Markdown: https://docs.speakai.co/help/start/mobile-app/index.md ## Overview The Speak AI mobile app lets you record, upload, transcribe, and analyze audio directly from your phone. It's available for both iOS and Android. ## Key features - **Record audio:** Tap the microphone to start recording meetings, interviews, lectures, or notes - **Upload files:** Import audio and video files from your phone's storage - **View transcripts:** Read and search through transcripts on your phone - **AI analysis:** Access AI Chat, insights, and summaries - **Manage folders:** Organize your recordings into folders - **Push notifications:** Get notified when transcriptions are complete ## Getting started 1. Download the Speak AI app from the **App Store** (iOS) or **Google Play** (Android) 1. Log in with your existing Speak AI account (or sign up with Google/Apple) 1. Allow microphone access when prompted 1. Start recording or upload a file ## Recording tips - **Place your phone centrally:** For meetings, place the phone in the center of the table for best audio capture from all speakers - **Minimize background noise:** Record in a quiet environment when possible - **Use a Bluetooth microphone:** For large rooms, an external Bluetooth microphone connected to your phone gives much better results - **Check storage:** Make sure your phone has enough free space for the recording ## Syncing Recordings sync automatically when you're connected to the internet. If you record while offline, the app will upload and process your files once you reconnect to Wi-Fi or cellular data. If you see "Upload Pending," open the app while connected to Wi-Fi to force the sync. ## Everything in sync Your mobile app shares the same account as the web app. Anything you record on mobile appears in your web dashboard, and anything uploaded on the web is accessible on mobile. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Getting started](/help/start/) · [Account setup](/help/start/account-setup/) # Teams > Invite teammates, group them, set folder-level permissions, and share a media library across your whole Speak AI workspace. Source: https://docs.speakai.co/help/teams/ · Markdown: https://docs.speakai.co/help/teams/index.md One workspace for the whole team. Invite members by email or with an invite link, organize them into groups, and use [permissions](/help/teams/permissions/) to control which folders each group sees and edits. [Notifications](/help/account/notifications/) keep the right people informed when recordings arrive. - **[Groups and permissions](/help/teams/permissions/)** ## Add and manage team members ## Inviting team members 1. Go to [Team Management](https://app.speakai.co/useradmin/team) in the sidebar 1. Click **Invite Member** 1. Enter their email address 1. Set their permissions 1. Send the invitation They'll receive an email with a link to join your team. Once they accept, they'll have access to shared resources based on their permissions. ## Creating user groups For larger teams, you can organize members into groups with shared access: 1. Go to [Groups](https://app.speakai.co/useradmin/group) 1. Click **Create Group** 1. Name the group and add members 1. Set group-level permissions Groups are useful when different teams need access to different folders or features. ## Sharing media and folders Team members can share: - **Folders:** Share entire folders with specific team members or groups - **Individual media:** Share specific recordings - **Insights:** Team-wide custom categories and analysis settings ## Adding seats on Pro Pro includes 2 seats by default, and you can add more seats as needed. Each team member gets: - Access to shared media libraries - Team collaboration features - Shared transcription hours and storage - Priority support For larger teams or enterprise needs with SSO and advanced controls, [book a consultation](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). ## Managing permissions As the account owner, you can: - Add or remove team members - Change member roles and permissions - Control who can access developer tools (API keys, webhooks) - Manage billing and subscription settings Only the account owner can delete the team account or manage billing. Setting up Speak AI for a team? [Book a demo](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo) and we'll configure it together. # Groups and permissions > Groups decide who sees which folders and what they can do there, so sensitive recordings stay restricted while shared work stays open. Source: https://docs.speakai.co/help/teams/permissions/ · Markdown: https://docs.speakai.co/help/teams/permissions/index.md ## Folder Permissions ### Overview Group permissions are your key to managing who can see and do what within your team workspaces. This feature ensures that sensitive information remains private, while essential collaborative files are easily accessible to the right people. By controlling access at the folder level, you can streamline your team's workflow and maintain a secure environment for your data. ### How It Works Permissions set for a specific folder automatically apply to all files contained within it. This cascading effect means that if a user has 'View' access to a folder, they can see all the files inside, though they may not have the ability to edit them. ### Getting Started To access this feature, go to **[Side Navigation → Team](https://app.speakai.co/useradmin/team)** in your dashboard. ### Configuration Follow these steps to set up folder permissions: 1. **Access Folder Settings:** Click the **Three Dots** next to a folder name and select **Share/Permissions**. 1. **Add Members/Groups:** Select a user or a defined Group. 1. **Set Role:** * **Viewer:** Can watch/read but not change. * **Editor:** Can rename, edit transcript, and analyze. * **Admin/Manager:** Can delete and change permissions. **Cascade Effect:** Any file uploaded to this folder inherits these rules. If a user is removed from the folder, they lose access to all its contents immediately. ### Troubleshooting **Can't See File:** Check if the file was moved to a private folder or if the user was removed from the Group. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to **Settings → Permissions**. - **Try it out** by setting permissions for a test folder. - **Explore the options** to see how group permissions fit your workflow. Need help? Contact our support team or check out our other guides. Visit your dedicated folders page here:

[https://app.speakai.co/folder](https://app.speakai.co/folder) You can edit multiple folders at once or use the hamburger menu icon to individually select a folder for editing. Once you select edit, a pop-up modal will appear. From there, you can select "Default Assign To" and choose the relevant group with the required team members included. Hit "Save" and from now on, any file added to that folder will automatically be able to be viewed and managed by your group members. In order to assign team members to a folder, first select the "Folders" subheading in the left-hand sidebar to bring up your list of folders. Next, click on the horizontal three-dot "Actions" button on the left-hand side of your desired folder to select the "Edit folder" button. This will open a window where you can edit the name of the folder and use the "Default Assign To" drop-down list to assign the folder to specific team members. once you have made your changes, click the "Save" button in the top right-hand corner. In order to assign your team members to individual media files, first select a folder from the left-hand sidebar to bring up a list of your desired media. Select which media you would like to edit by clicking on the available checkbox next to each file. Once selected, click on the "Edit" button in the top right-hand corner. A new window will be opened where you will be able to edit each of the files that you had selected. You can pick who you would like to assign the media to with the "Assign To" drop-down list. Once you have applied your changes, click on the "Update All" button on the bottom left-hand side of the window. An alternative way to change who is assigned to a specific media file is by clicking on the specific file, clicking on the "Action" drop-down list in the top right-hand corner and selecting the "Edit" button to bring up the same edit window for the specific media file. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Teams](/help/teams/) # Transcription > Speak AI transcribes audio and video automatically across 93 languages, separates speakers, and timestamps every line for review and editing. Source: https://docs.speakai.co/help/transcription/ · Markdown: https://docs.speakai.co/help/transcription/index.md Upload any recording and Speak AI transcribes it automatically: **93 languages and regional variants** {/* fact:languages.transcription */}, speakers separated and labeled, timestamps on every line. A typical file is ready in about half its own length, so a one-hour meeting is readable in about thirty minutes. ![A transcribed sales call: speakers labeled, timestamps, insights toolbar](/help/media/transcription/transcription-index.jpg) - **Speakers identified for you.** Each voice becomes its own labeled paragraph you can rename once and apply everywhere. [How speaker identification works](/help/transcription/speakers/) - **Accuracy you can improve.** Clear audio transcribes at 95 percent or better, and [custom vocabulary](/help/transcription/custom-vocabulary/) teaches Speak AI your names and jargon. - **Translation built in.** Translate any finished transcript into 111 languages. [Translation](/help/transcription/translation/) - **Editing that saves back.** Fix wording, speakers, and timestamps in the [transcript editor](/help/transcription/editing/). ## After the transcript Transcription is the start, not the product. The same file automatically gets [insights](/help/insights/): keywords, sentiment, and entities, and answers questions in [AI Chat](/help/ai-chat/). When automated isn't enough, order [human transcription](/help/transcription/human/) on the same file. ## Common questions **How long does it take?** About half the file's duration for a typical recording: [Processing times](/help/transcription/processing-times/). **What if it picked the wrong language?** Set the language at upload or re-transcribe: [Fix a transcript in the wrong language](/help/troubleshoot/transcription/). Evaluating transcription quality for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Accuracy](/help/transcription/accuracy/) · [Supported languages](/help/transcription/languages/) · [Uploads](/help/uploads/) · [Processing times](/help/transcription/processing-times/) # Accuracy > Clean audio transcribes at up to 96% accuracy. Audio quality is the biggest factor, ahead of accent, crosstalk and background noise. Source: https://docs.speakai.co/help/transcription/accuracy/ · Markdown: https://docs.speakai.co/help/transcription/accuracy/index.md With clear audio, automated transcription accuracy typically exceeds **95 percent** . The gap between a great transcript and a rough one is almost never the engine. It's the recording. ## What moves accuracy most, in order 1. **Audio quality.** A dedicated microphone beats a laptop mic across the room, every time. 2. **Crosstalk.** Overlapping speakers are the hardest thing in transcription; one voice at a time transcribes nearly perfectly. 3. **Background noise.** Record in the quietest room available. 4. **Specialized vocabulary.** Product names, drug names, legal terms: [custom vocabulary](/help/transcription/custom-vocabulary/) teaches them once, for every future file. 5. **Language setting.** Auto-detect is right most of the time; set it explicitly for short, noisy, or mixed-language files. ## Testing accuracy before you commit The honest test is your own audio, not a benchmark. Upload a real recording, the kind your team actually produces, and read the result. The [free trial](/help/account/free-trial/) includes enough transcription to do exactly that, and if your evaluation file is longer than the trial cap, ask us to extend it: [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). ## When automated isn't enough Legal records, published interviews, compliance archives: order [human transcription](/help/transcription/human/) on the same file and get the highest accuracy available, reviewed by a person. --- Related: [Custom vocabulary](/help/transcription/custom-vocabulary/) · [Supported languages](/help/transcription/languages/) · [Human transcription](/help/transcription/human/) # Custom vocabulary > Teach Speak AI unusual names, acronyms and industry jargon so they transcribe correctly. Built for medical, legal and technical recordings. Source: https://docs.speakai.co/help/transcription/custom-vocabulary/ · Markdown: https://docs.speakai.co/help/transcription/custom-vocabulary/index.md ## Why use custom vocabulary? Speak AI's transcription engine is great at recognizing common words, but it can struggle with specialized terminology, unusual names, acronyms, or industry jargon. Adding these to your custom vocabulary helps the system recognize them accurately. ## What to add - **People names:** Unusual spellings, non-English names, nicknames - **Company and product names:** Your company name, product names, competitor names - **Industry terms:** Medical terminology, legal jargon, technical acronyms - **Acronyms:** How they should appear in the transcript (e.g., "HIPAA", "GDPR", "NLP") - **Brand-specific language:** Internal project names, feature names, code names ## Set it up 1. Go to [Profile Settings](https://app.speakai.co/profile/usage) 1. Find the **Vocabulary** or **Custom Dictionary** section 1. Add your custom terms, one per line 1. Save your changes Your custom vocabulary applies to all future transcriptions on your account. ## Tips for best results - **Be specific:** Add the exact spelling you want to appear in the transcript - **Include variations:** If a term has multiple forms (e.g., "Speak AI", "SpeakAI"), add both - **Focus on problem words:** Start with terms you notice being consistently mis-transcribed - **Update regularly:** As new names and terms come up, add them to your vocabulary ## Examples by industry - **Healthcare:** Drug names, medical procedures, diagnosis codes - **Legal:** Case names, legal terms, statute references - **Technology:** Programming languages, framework names, API terms - **Research:** Participant codes, methodology terms, instrument names Custom vocabulary works alongside our AI transcription engine and improves accuracy over time as the system learns your specific terminology. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Editing > Fix wording, reassign a speaker and adjust timestamps in the built-in editor. Every change saves straight back to the transcript. Source: https://docs.speakai.co/help/transcription/editing/ · Markdown: https://docs.speakai.co/help/transcription/editing/index.md You can make any edits to your transcript using the in-built transcript editor to bring it up to 99% accuracy. This will open a new interface to allow you to make changes easily. Speak AI's in-app transcript editor allows you to edit your transcript easily. ## Shortcuts Using keyboard shortcuts can greatly increase your productivity, reduce repetitive strain, and help keep you focused. While editing transcripts on Speak AI, we have created shortcuts to help speed up your workflow. | Keyboard button | Action | | --- | --- | | **Cmd/Ctrl + S** | Save your changes | | **Cmd/Ctrl + Z** | Undo | | **Cmd/Ctrl + Y** or **Cmd/Ctrl + Shift + Z** | Redo | | **Enter** | Split into a new paragraph at the cursor | | **Tab** | Jump to the next sentence | | **Cmd/Ctrl + J** | Merge the paragraph into the one above | | **Cmd/Ctrl + Shift + D** | Duplicate the paragraph | | **Cmd/Ctrl + F** | Find text in the transcript | | **Click any sentence** | Jump the player to that point | For the full list, including speaker-renaming shortcuts, see [Keyboard Shortcuts for Transcript Editing](/help/transcription/editing/). ## Overview Tailor your transcript view to highlight the information that's most important for your workflow. This allows you to quickly find key insights and navigate through your media content efficiently. By customizing what you see, you can save time and focus on the details that drive your decisions. ## How It Works You can adjust the transcript view to focus on specific types of information and improve your navigation experience. ## Getting Started To access this feature, go to **Media** → **Transcript View** in your Media Page. ## Customizing Insights You can tailor the insights displayed alongside your transcript: 1. Open a media file. 1. In the right-hand **Insights** panel, click the **Filter** or **Settings** icon. 1. Toggle visibility for: * **Sentiment Analysis**: Show/hide positive or negative highlights. * **Entities**: Show/hide Brands, People, Locations, etc. * **Custom Categories**: Enable specific custom keyword categories. ## Customizing Navigation Enhance your transcript navigation with these options: - **Click-to-Play**: Click any word in the transcript to jump the audio/video to that point. - **Auto-Scroll**: Toggle auto-scroll to keep the current text in view during playback. - **Search**: Use the search bar to find specific terms and navigate between occurrences. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to **Transcript View** in your Media Page. - **Explore the customization options** for both Insights and Navigation. - **Try it out** with a media file to see how it fits your workflow. ## Transcript Editor You can make any edits to your transcript using the in-built transcript editor to bring it up to 99% accuracy. This will open a new interface to allow you to make changes easily. Speak AI's in-app transcript editor allows you to edit your transcript easily. ## Shortcuts Using keyboard shortcuts can greatly increase your productivity, reduce repetitive strain, and help keep you focused. While editing transcripts on Speak AI, we have created shortcuts to help speed up your workflow. | Keyboard button | Action | | --- | --- | | **Cmd/Ctrl + S** | Save your changes | | **Cmd/Ctrl + Z** | Undo | | **Cmd/Ctrl + Y** or **Cmd/Ctrl + Shift + Z** | Redo | | **Enter** | Split into a new paragraph at the cursor | | **Tab** | Jump to the next sentence | | **Cmd/Ctrl + J** | Merge the paragraph into the one above | | **Cmd/Ctrl + Shift + D** | Duplicate the paragraph | | **Cmd/Ctrl + F** | Find text in the transcript | | **Click any sentence** | Jump the player to that point | For the full list, including speaker-renaming shortcuts, see [Keyboard Shortcuts for Transcript Editing](/help/transcription/editing/). ## Transcript Customization ## Overview Tailor your transcript view to highlight the information that's most important for your workflow. This allows you to quickly find key insights and navigate through your media content efficiently. By customizing what you see, you can save time and focus on the details that drive your decisions. ## How It Works You can adjust the transcript view to focus on specific types of information and improve your navigation experience. ## Getting Started To access this feature, go to **Media** → **Transcript View** in your Media Page. ## Customizing Insights You can tailor the insights displayed alongside your transcript: 1. Open a media file. 1. In the right-hand **Insights** panel, click the **Filter** or **Settings** icon. 1. Toggle visibility for: * **Sentiment Analysis**: Show/hide positive or negative highlights. * **Entities**: Show/hide Brands, People, Locations, etc. * **Custom Categories**: Enable specific custom keyword categories. ## Customizing Navigation Enhance your transcript navigation with these options: - **Click-to-Play**: Click any word in the transcript to jump the audio/video to that point. - **Auto-Scroll**: Toggle auto-scroll to keep the current text in view during playback. - **Search**: Use the search bar to find specific terms and navigate between occurrences. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to **Transcript View** in your Media Page. - **Explore the customization options** for both Insights and Navigation. - **Try it out** with a media file to see how it fits your workflow. ## Keyboard Shortcuts for Transcript Editing ## Overview Speak AI includes a full transcript editor with keyboard shortcuts that speed up your editing workflow. These work while you are editing a transcript in the web app. ## Navigation - **Click any sentence** - Jump the audio or video player to that point - **Cmd/Ctrl + F** - Find text in the transcript - **Esc** - Exit full-screen view ## Editing the transcript - **Click on text** - Start editing that section - **Enter** - Split the text into a new paragraph at your cursor - **Tab** - Jump to the next sentence - **Cmd/Ctrl + J** - Merge the paragraph into the one above it - **Cmd/Ctrl + Shift + D** - Duplicate the current paragraph - **Cmd/Ctrl + Z** - Undo your last edit - **Cmd/Ctrl + Y** or **Cmd/Ctrl + Shift + Z** - Redo - **Cmd/Ctrl + S** - Save your changes ## Renaming a speaker - **Up / Down arrows** - Move through the speaker suggestions - **Enter** - Confirm the highlighted speaker name - **Esc** - Close the speaker menu ## Tips for efficient editing - **Rename speakers first:** Before other edits, rename every speaker so the transcript is easier to follow. - **Use Find:** For a recurring error like a misspelled name, use Cmd/Ctrl + F to locate every instance quickly. - **Use AI Chat for bulk edits:** Try commands like "Replace 'gonna' with 'going to'" or "Change Speaker 1 to John Smith". Need help? Contact our support team or check out our other guides. Need help? Contact our support team or check out our other guides. ## Overview Speak AI includes a full transcript editor with keyboard shortcuts that speed up your editing workflow. These work while you are editing a transcript in the web app. ## Navigation - **Click any sentence** - Jump the audio or video player to that point - **Cmd/Ctrl + F** - Find text in the transcript - **Esc** - Exit full-screen view ## Editing the transcript - **Click on text** - Start editing that section - **Enter** - Split the text into a new paragraph at your cursor - **Tab** - Jump to the next sentence - **Cmd/Ctrl + J** - Merge the paragraph into the one above it - **Cmd/Ctrl + Shift + D** - Duplicate the current paragraph - **Cmd/Ctrl + Z** - Undo your last edit - **Cmd/Ctrl + Y** or **Cmd/Ctrl + Shift + Z** - Redo - **Cmd/Ctrl + S** - Save your changes ## Renaming a speaker - **Up / Down arrows** - Move through the speaker suggestions - **Enter** - Confirm the highlighted speaker name - **Esc** - Close the speaker menu ## Tips for efficient editing - **Rename speakers first:** Before other edits, rename every speaker so the transcript is easier to follow. - **Use Find:** For a recurring error like a misspelled name, use Cmd/Ctrl + F to locate every instance quickly. - **Use AI Chat for bulk edits:** Try commands like "Replace 'gonna' with 'going to'" or "Change Speaker 1 to John Smith". Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Human transcription > Send a file to Speak AI's human transcription team when you need higher accuracy than automated transcription delivers. Source: https://docs.speakai.co/help/transcription/human/ · Markdown: https://docs.speakai.co/help/transcription/human/index.md Professional transcription is an integrated service within Speak that helps you make your transcriptions as accurate as possible using our team of remote transcribers. Our transcription team is experienced in editing, research and quality assurance and strives to make every transcript as accurate as possible so that you can use it for professional research, publishing, accessibility and more. Once you have uploaded your audio or video file and transcribed and analyzed it successfully, visit the file, you would like to get professionally transcribed. You will see a button that says "Get Professional Transcription" beside the action button on the top right near the media player. Get Professional Transcription Button Clicking on that button will pop up the modal you see below: To ensure our team makes your transcription as accurate as possible, we have provided you with options to add speaker labels, a glossary, and any additional instructions or insights that will help. ## The Process A transcription job is created within the Speak system. Our transcription team accepts the request and then gets sent a link to our secure custom-built transcription editing and quality assurance interface. They work through the file to make the transcription and speakers as accurate as possible. That is reviewed and then accepted. At that point, you will receive a notification that your transcription is complete. As soon as the transcriber is done with their work, they submit and the environment and closed. All transcribers manage media securely, have no option to download or revisit media, and cannot access the media once the job is done. ## Speaker Names Please put the full name (first and last) in the order that they speak in. This helps our transcribers identify speakers accurately, so you have an accurate final transcript. ## Glossary Please input any unique language, terminology, or specific spelling that you need in your final transcript. ## Additional Instructions If there are any other suggestions, stylistic requirements, or other insights, please add them here. ## Automatic Merge Your transcript will be approved and merged automatically. Uncheck this option if you want the ability to review, approve and merge your transcript manually. ## Rush Option Get your transcript back in 48 hours (Up to 3x faster) with our rush option. The standard turn-around time is 4 to 5 days. ## Pricing Speak automatically charges USD 1.50 per minute. In human transcription, through all the work we have done, we have found that USD 1.50 per minute enables us to get high-quality transcribers who care about quality assurance and the final output. ## Transcription Complete Notification You will receive an email when your transcription has been completed. You can then log back into your account to get your final version. If you have selected automatic merge, it will have already been accepted by the system and re-analyzed. If you didn't do an automatic merge, you can click on the same "Get Professional Transcription" button to review the changes and then accept them manually. ## Feedback or More Edits Required? Our transcription team does their absolute best, but if you find any problems with your transcript, please send us an email at [success@speakai.co](mailto:success@speakai.co) with any details about inaccuracies. We will work with our team to resolve and update the transcript, so you are happy with the final output. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Supported languages > Speak AI transcribes 93 languages and regional variants, including 13 Arabic dialects, and translates transcripts into 111 languages. Source: https://docs.speakai.co/help/transcription/languages/ · Markdown: https://docs.speakai.co/help/transcription/languages/index.md Speak AI transcribes **93 languages and regional variants** {/* fact:languages.transcription */} across 65 base languages, including **13 Arabic dialects**, with automatic language detection. Finished transcripts translate into **111 languages** {/* fact:languages.translation */}. - **50** languages support live, real-time transcription {/* fact:languages.live */} - **31** support [custom vocabulary](/help/transcription/custom-vocabulary/) for names and jargon {/* fact:languages.vocab */} - **28** translation languages support dubbed audio {/* fact:languages.dubbing */} ## The full list *The complete per-language table (transcription, live, vocabulary, translation, dubbing) is generated from the same source file the product reads, so it can never drift. Rendered at build time from `data/facts.json`.* ## Working across languages - **Auto-detection picks the language per file.** Short or noisy files can detect wrong; set the language at upload when you know it. [Fix a wrong-language transcript](/help/troubleshoot/transcription/) - **Mixed-language audio:** set the dominant language rather than relying on detection, then correct in the [editor](/help/transcription/editing/). - **Translation happens after transcription**, on the finished transcript: [Translation](/help/transcription/translation/). Need a language you don't see, or evaluating multilingual coverage for a team? [Book a demo](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo) and bring a recording in that language. --- Related: [Transcription](/help/transcription/) · [Translation](/help/transcription/translation/) · [Custom vocabulary](/help/transcription/custom-vocabulary/) # Processing times > Speak AI processes a file in roughly half its length. A 30-minute meeting takes about 15 minutes, a 1-hour file about 30. Source: https://docs.speakai.co/help/transcription/processing-times/ · Markdown: https://docs.speakai.co/help/transcription/processing-times/index.md ## Typical processing times As a general rule, Speak AI processes files in about **half the length of the file**: - A 10-minute recording takes about 5 minutes - A 30-minute meeting takes about 15 minutes - A 1-hour file takes about 30 minutes - A 2-hour recording takes about 1 hour ## What affects processing speed - **File length:** Longer files take proportionally longer to process - **File format:** Standard formats (MP3, MP4, WAV) process fastest. Unusual formats may need conversion first, adding time. - **Audio quality:** Very noisy or low-quality audio can slow down the transcription engine - **Server load:** During peak times, processing may take slightly longer - **Plan type:** Paid plans get priority servers with faster transcription and analysis ## Checking your file's status You can track processing progress from your [dashboard](https://app.speakai.co/dashboard): - **Spinner icon:** File is still processing - **Green check:** Processing complete - **Red exclamation:** Processing failed (see our [troubleshooting guide](/help/troubleshoot/transcription/)) You will also receive an email notification when your file is ready. ## What if it's taking too long? If a file has been processing for more than twice its duration (e.g., a 30-minute file has been processing for over an hour): 1. Refresh the page to check if the status has updated 1. Try re-transcribing the file from the options menu 1. If it continues to fail, reach out to us and we will investigate ## How Long Does Transcription Take ## Typical processing times As a general rule, Speak AI processes files in about **half the length of the file**: - A 10-minute recording takes about 5 minutes - A 30-minute meeting takes about 15 minutes - A 1-hour file takes about 30 minutes - A 2-hour recording takes about 1 hour ## What affects processing speed - **File length:** Longer files take proportionally longer to process - **File format:** Standard formats (MP3, MP4, WAV) process fastest. Unusual formats may need conversion first, adding time. - **Audio quality:** Very noisy or low-quality audio can slow down the transcription engine - **Server load:** During peak times, processing may take slightly longer - **Plan type:** Paid plans get priority servers with faster transcription and analysis ## Checking your file's status You can track processing progress from your [dashboard](https://app.speakai.co/dashboard): - **Spinner icon:** File is still processing - **Green check:** Processing complete - **Red exclamation:** Processing failed (see our [troubleshooting guide](/help/troubleshoot/transcription/)) You will also receive an email notification when your file is ready. ## What if it's taking too long? If a file has been processing for more than twice its duration (e.g., a 30-minute file has been processing for over an hour): 1. Refresh the page to check if the status has updated 1. Try re-transcribing the file from the options menu 1. If it continues to fail, reach out to us and we will investigate Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Speaker identification > Speaker diarisation separates each voice into its own labeled paragraph. What makes it accurate, and how to correct the labels. Source: https://docs.speakai.co/help/transcription/speakers/ · Markdown: https://docs.speakai.co/help/transcription/speakers/index.md ## How it works When you transcribe audio or video with multiple people talking, Speak AI automatically detects and separates different speakers. Each speaker is labeled (Speaker 1, Speaker 2, etc.) and their dialogue is organized by paragraph. ## Accuracy Speaker identification works best when: - Speakers have distinct voices - People talk one at a time (minimal overlap) - Audio quality is good with clear separation - Each speaker uses a dedicated microphone In noisy environments or recordings with lots of crosstalk, speaker detection may occasionally merge or split speakers incorrectly. ## Renaming speakers After transcription, you can rename speakers to their real names: 1. Click on any speaker label in the transcript 1. Type the person's name 1. Press Enter The name applies to every instance of that speaker throughout the transcript. You can also use AI Chat: "Change Speaker 1 to John Smith". For more details on managing speakers, see our [speaker editing guide](/help/transcription/speakers/). ## Speaker analytics Once speakers are identified, Speak AI tracks: - **Speaking time** per person - **Word count** per speaker - **Words per minute** (speaking pace) - **Percentage of conversation** These analytics are visible on the media detail page and can be analyzed across multiple files on the Explore page. ## Overview When Speak AI transcribes your audio or video, it automatically identifies different speakers and labels them (Speaker 1, Speaker 2, and so on). You can rename these to real names so your transcript is clear and useful. ## Renaming a speaker 1. Open your transcribed file 1. Click any speaker label in the transcript (for example, "Speaker 1") 1. Type the person's name 1. Press **Enter** to confirm The name applies to every instance of that speaker throughout the transcript. You can rename speakers both in the read-only view and while editing the transcript. ## Renaming multiple speakers 1. Click any speaker label to open the speaker editor 1. Update each speaker's name 1. Press Enter after each name ## Merging two speakers into one If the transcription split one person into two speakers, rename one of them to exactly match the other's name. Speak combines them into a single speaker and confirms with "Speakers merged." ## Resetting all speakers While editing a transcript, use the **Reset Speakers** button to set every speaker back to the default labels. This is the quickest way to start over when the labels are mixed up, and then relabel them with the correct names. ## Using AI Chat to rename speakers You can also use AI Chat to rename speakers with natural language: - "Change Speaker 1 to John Smith" - "Rename Speaker A to Sarah and Speaker B to Mike" - "The interviewer is Jane Doe" ## Tips for better speaker identification - **Good audio quality helps:** Clear audio with minimal crosstalk makes it easier to separate speakers - **Dedicated microphones:** When each person has their own microphone, speaker detection is most accurate - **Name speakers early:** Renaming speakers right after transcription makes AI Chat more useful ("What did John say about the budget?") ## Troubleshooting - **Speakers labeled incorrectly?** Rename them, merge two labels by giving them the same name, or use **Reset Speakers** while editing to start fresh. - **Too many speakers detected?** Background noise or audio quality issues can add extra speaker labels. Rename or reset the extras. ## How it works Speak AI automatically detects different speakers in your recordings, but the level of detail depends on how the recording was captured. ## Virtual meeting recordings (Meeting Assistant) When the Speak AI Meeting Assistant joins your Zoom, Google Meet, Teams, or Webex call: - Speakers are automatically identified by their **meeting participant names** - If calendar sync is enabled, names from the calendar invite are used - Each speaker gets their own label from the start - Speaker analytics (word count, speaking time, pace) are calculated per person ## Uploaded in-person recordings When you upload a recording from a phone, handheld recorder, or other device: - Speakers are detected by **voice patterns** and labeled as Speaker 0, Speaker 1, Speaker 2, etc. - The system separates speakers based on voice differences, but cannot identify names automatically - You need to **rename speakers manually** after transcription ## Renaming speakers For uploaded recordings, rename speakers right after transcription: 1. Open the transcribed file 1. Click on any speaker label (e.g., "Speaker 0") 1. Type the person's name and press **Enter** The name applies throughout the entire transcript. You can also use AI Chat: "Change Speaker 0 to Dr. Smith". ## Tips for better speaker detection in uploaded recordings - **Clear audio helps:** Minimize background noise and crosstalk - **Separate microphones:** If possible, use individual microphones for each speaker - **Central placement:** Place the recording device in the center of the table - **Speak one at a time:** Overlapping speech is the hardest scenario for speaker detection Once speakers are named, AI Chat becomes much more powerful. You can ask "What did Dr. Smith say about the treatment plan?" and get speaker-specific answers. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Status > Track processing on the media card in your dashboard, or have Speak AI email you the moment a transcript and its insights are ready. Source: https://docs.speakai.co/help/transcription/status/ · Markdown: https://docs.speakai.co/help/transcription/status/index.md ## Media File Status You can easily view the progress directly on the media card in your Dashboard or receive email notifications when your files are fully processed. ### How It Works You can check the status of your media files in two main ways: - View the status icon directly on the media card in your Dashboard. - Receive email notifications when the processing is complete. ### Getting Started To access this feature, log in to your Speak AI Dashboard. ### Step-By-Step Guide **Dashboard View:** 1. Log in to your Speak AI Dashboard. 1. Find your file in the 'Recent Activity' or a specific folder. 1. **Check Status Icon:** * **Spinner:** Indicates the file is currently processing or transcribing. * **Green Check:** Shows that the process is completed successfully. * **Red Exclamation:** Signifies that the process has failed. 1. **Detail View:** Click on the file name. The status will be displayed prominently at the top left of the detail view (e.g., 'Transcribing', 'Analyzing'). ### Related Prompts/Features - Email Notifications - Webhook Events (`media.processed`) ### Pro Tips Refresh the page if you've been waiting a while. While the status updates automatically, browser caching issues can sometimes occur. ### Troubleshooting **Stuck Processing:** If a file remains in 'Processing' for more than 30 minutes (for short files), please contact support. **0% Progress:** Check your internet connection or firewall settings. ### Next Steps Ready to monitor your media files? Here's what to do next: - **Login to your account** and navigate to your Speak AI Dashboard. - **Upload a media file** or select an existing one to observe its status. - **Familiarize yourself** with the status icons to understand your file's progress. Need help? Contact our support team or check out our other guides. ### Overview Stay informed about the progress of your transcription requests without constant manual checks. This feature allows you to monitor your jobs in real-time, ensuring you know exactly when your transcriptions are ready. Understanding the status of your transcription jobs helps you plan your workflow more effectively and ensures you can access your completed transcripts as soon as they are available. ### How It Works You can easily track the status of your transcription jobs through two main areas: - The **Recent Activity** panel on your Dashboard. - The status indicator within the **Media Library**. ### Getting Started To access this feature, go to your **Dashboard** or **Media Library** in your account. ### Step-by-Step Guide Follow these steps to monitor your transcription jobs: 1. **Recent Activity:** On the main Dashboard, the right-hand panel displays 'Recent Activity'. This section lists files that are currently 'Processing' or have been 'Completed'. 1. **Library View:** Navigate to 'Explore' or 'My Media'. The 'Status' column will show a spinner icon for any jobs that are actively being processed. 1. **Notifications:** To receive an immediate alert when a job finishes, ensure your Email Notifications are turned on in your Settings. ### Pro Tips For additional details, hover your mouse over the processing icon. You may see more specific information, such as "Transcoding" or "Transcribing". ### Troubleshooting If you are not receiving email notifications: - Check your Spam or Junk mail folder. - Verify that your Notification Settings are correctly configured. ### Next Steps Ready to keep track of your transcriptions? Here's what to do next: - **Login to your account** and visit your Dashboard or Media Library. - **Monitor your active jobs** to see their real-time status. - **Enable email notifications** to receive instant alerts upon completion. Need help? Contact our support team or check out our other guides. Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Translation > Translate a finished transcript into any of 111 supported languages. Covers how translation is billed against your credits. Source: https://docs.speakai.co/help/transcription/translation/ · Markdown: https://docs.speakai.co/help/transcription/translation/index.md ## Overview After transcribing your audio or video, you can translate the transcript into any of the 70+ languages Speak AI supports. This is useful for multilingual teams, international research, or making content accessible to a wider audience. ## Translate 1. Open your transcribed media file 1. Click the **Translate** option in the file menu or actions bar 1. Select your target language 1. The translation will be generated and saved alongside your original transcript ## How it works Translation is powered by AI and processes the full transcript text. The translated version is stored as a separate view, so your original transcript is always preserved. You can switch between the original and translated versions at any time. ## Usage and billing Translation usage is measured by character count. Your plan includes a certain number of translation characters per month. You can check your remaining balance in your [account settings](https://app.speakai.co/profile/usage). ## Tips for better translations - **Clean up the transcript first:** Fix any transcription errors before translating. Garbage in, garbage out. - **Label speakers:** Speaker names carry over to the translation, making it easier to follow. - **Technical terms:** Highly specialized terminology may need manual review after translation. ## Dubbing (audio translation) For some use cases, Speak AI also supports dubbing, which generates a translated audio voiceover of your content. This is available as an advanced feature. Contact our team to learn more about dubbing capabilities. For the full list of supported languages, see our [Supported Languages article](/help/transcription/languages/). ## Written Guide Translating on Speak AI is super simple. ## Step 1: Register for Speak AI Register for Speak AI using **[this link](https://app.speakai.co/auth/register?utm_source=docs&utm_medium=referral&utm_campaign=help)**. Once you register, you can instantly begin translating. You get your first translation free. ## Step 2: Upload Your Files As soon as you log in, you will be redirected to the dashboard. Once there, you can select the Quick Action "New Upload". In Speak, you can smoothly upload, transcribe and translate audio, video and text files all at once. ## Step 3: Translate Your English (Australia) file(s) to Arabic (Jordan) Once the file is uploaded, simply visit your file and select "Translate". If it is an audio and video file, Speak will ask you if you want to keep the speaker names and timestamps in the translation. Want to translate many files at once? No problem. You can view the files you want to automatically translate from your original language to your desired language from the folder level and instantly translate as many files as you need with our artificial intelligence translation in just a few clicks. ## Step 4: That's It. View, Analyze, Modify & Export Your Translations Once the translation is done, you will be alerted and you will see a new document in the same folder your original file is in. The file will be named the same but with a dash indicating that it is the translated version. ## Need support with your translation? We are always here and happy to help at Speak. Just send us a message on live chat on the bottom right corner and we will ensure you are set up for success. Interested in translating several languages to different languages? View our entire list of supported translation **[languages here](https://speakai.co/translator/?utm_source=docs&utm_medium=referral&utm_campaign=help)**. Automatic, accurate, instant AI translation is here for you. Register for Speak AI using **[this link](https://app.speakai.co/auth/register?utm_source=docs&utm_medium=referral&utm_campaign=help)** and begin translating now. ## Translate With Speak ## Video Walkthrough ## Written Guide Translating on Speak AI is super simple. ## Step 1: Register for Speak AI Register for Speak AI using **[this link](https://app.speakai.co/auth/register)**. Once you register, you can instantly begin translating. You get your first translation free. ## Step 2: Upload Your Files As soon as you log in, you will be redirected to the dashboard. Once there, you can select the Quick Action "New Upload". In Speak, you can smoothly upload, transcribe and translate audio, video and text files all at once. ## Step 3: Translate Your English (Australia) file(s) to Arabic (Jordan) Once the file is uploaded, simply visit your file and select "Translate". If it is an audio and video file, Speak will ask you if you want to keep the speaker names and timestamps in the translation. Want to translate many files at once? No problem. You can view the files you want to automatically translate from your original language to your desired language from the folder level and instantly translate as many files as you need with our artificial intelligence translation in just a few clicks. ## Step 4: That's It. View, Analyze, Modify & Export Your Translations Once the translation is done, you will be alerted and you will see a new document in the same folder your original file is in. The file will be named the same but with a dash indicating that it is the translated version. ## Need support with your translation? We are always here and happy to help at Speak. Just send us a message on live chat on the bottom right corner and we will ensure you are set up for success. Interested in translating several languages to different languages? View our entire list of supported translation **[languages here](https://speakai.co/translator/)**. Automatic, accurate, instant AI translation is here for you. Register for Speak AI using **[this link](https://app.speakai.co/auth/register)** and begin translating now. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Transcription](/help/transcription/) · [Accuracy](/help/transcription/accuracy/) # Troubleshooting > Troubleshooting in Speak AI. Source: https://docs.speakai.co/help/troubleshoot/ · Markdown: https://docs.speakai.co/help/troubleshoot/index.md Something failed? Find your symptom and fix the cause. Each page starts with what you saw on screen and works backward. - **[Export errors](/help/troubleshoot/exports/)** - **[Payment errors](/help/troubleshoot/payments/)** - **[Transcription errors](/help/troubleshoot/transcription/)** - **[Upload errors](/help/troubleshoot/uploads/)** Can't find your symptom? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). # Export errors > A blocked pop-up or a missing permission is the usual cause when the export dialog does not appear or the file never arrives. Source: https://docs.speakai.co/help/troubleshoot/exports/ · Markdown: https://docs.speakai.co/help/troubleshoot/exports/index.md ### Overview If you're having trouble exporting data or the export dialog isn't appearing, it's usually due to a simple setting in your browser or your user permissions. This guide will help you quickly identify and resolve these common issues so you can get the data you need. ### How It Works The export feature relies on your browser allowing pop-up windows for downloads and your user account having the necessary permissions to access and extract data. ### Getting Started To access this feature, go to Export Options in your Media or Folder Page. ### Troubleshooting If the export option doesn't appear or the dialog fails to open, it's usually a permissions or Media file not supported. **Quick Summary:** Check your User Role permissions. 'Viewer' accounts often cannot export data. Also, ensure your browser isn't blocking the download pop-up. ### Check Permissions Ask your Admin if your role is set to 'Viewer'. Viewers can read but not extract data. **Prerequisites:** - 'Editor' or 'Admin' Role ### Browser Blockers Look at the address bar for a "Pop-up blocked" icon. Click it and select "Always allow". ### Refresh Sometimes the UI state gets stuck. A hard refresh (`Cmd+Shift+R`) often fixes the modal trigger. ### Greyed Out If the button is visible but unclickable, the file might still be processing. Wait for transcription to complete. ### Pro Tips If the modal opens but doesn't download, your browser's security settings might be preventing automatic downloads from new sites. ### Related Prompts/Features - User Roles - Export Options ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to the Export Options. - **Check your user role** to ensure you have the necessary permissions. - **Verify your browser settings** to allow pop-ups for downloads. - **Try exporting your data** again. Need help? Contact our support team or check out our other guides. Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Troubleshooting](/help/troubleshoot/) · [Payment errors](/help/troubleshoot/payments/) # Payment errors > Payments fail most often on a bank decline, a debit card where credit is required, an expired card, or a regional restriction. How to clear each. Source: https://docs.speakai.co/help/troubleshoot/payments/ · Markdown: https://docs.speakai.co/help/troubleshoot/payments/index.md ## Why did my payment fail? A failed charge can happen for several reasons: 1. **Your card was declined by your bank or card issuer.** This is the most common reason. Your bank may block the charge as a security measure, especially for first-time transactions with a new merchant. 1. **You used a debit card instead of a credit card.** Some debit cards are not accepted for recurring subscriptions. Try a credit card instead. 1. **Your credit card is expired.** Check the expiration date and update your card if needed. 1. **Insufficient funds.** Make sure your card has enough available credit or balance. 1. **The payment was blocked as high-risk.** Some banks flag international transactions or first-time subscription charges. Contact your bank to authorize the payment. 1. **Regional restrictions.** Some card types or regions may not be supported by our payment processor. ## Fix it 1. Go to your [billing settings](https://app.speakai.co/settings/billing) 1. Update your payment method with a different card 1. Try the payment again If you continue to have issues after trying a different card, contact your bank first to confirm they are not blocking the transaction. Then reach out to us and we will help resolve it. ## Other billing questions - **Where are my invoices?** Available in your [billing settings](https://app.speakai.co/settings/billing) under payment history. - **When am I charged?** Monthly plans bill on the same date each month. Annual plans bill once per year. - **How do I cancel?** You can cancel anytime from your billing settings. See our [pricing and plans guide](/help/account/free-trial/) for details. Need help? Just send us a message and we will look into your specific situation. Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Troubleshooting](/help/troubleshoot/) · [Export errors](/help/troubleshoot/exports/) # Transcription errors > Transcription fails most often on an unsupported format, a file with no audio track, or a recording that exceeds your plan limit. Source: https://docs.speakai.co/help/troubleshoot/transcription/ · Markdown: https://docs.speakai.co/help/troubleshoot/transcription/index.md ### File format not supported Speak AI supports most common audio and video formats including MP3, MP4, WAV, M4A, WEBM, OGG, FLAC, and more. If your file is in an unusual format, try converting it to MP3 or MP4 first using a free tool like [HandBrake](https://handbrake.fr/) (video) or [Audacity](https://www.audacityteam.org/) (audio). ### File is too large Files up to 4 hours in length are supported. If your file is very large, try compressing the audio bitrate. Reducing from 128kbps to 64kbps significantly decreases file size without noticeable loss in speech clarity. ### Audio quality is too low If the audio is very quiet, heavily distorted, or has excessive background noise, the transcription engine may not be able to detect speech. Try: - Recording in a quieter environment - Using a dedicated microphone instead of a laptop mic - Placing the recording device closer to the speakers ### Corrupted or incomplete file If a recording was interrupted or the file was partially downloaded, it may be corrupted. Try re-downloading or re-recording the file. ### Server timeout Very long files (2+ hours) occasionally time out during processing. If this happens, the file will usually complete on retry. ## Retry 1. Go to your media file in the [dashboard](https://app.speakai.co/dashboard) 1. Click the options menu on the file 1. Select **Re-transcribe** or **Re-analyze** If the file fails again after retry, send us a message with the file name and we will investigate. ## Why this happens By default, Speak AI auto-detects the language of each recording. Detection can land on the wrong language when a file is short, has music or noise at the start, or mixes languages. When that happens, the transcript comes back in the wrong language. You have three ways to control it. ## 1. Set the language at upload On the upload screen, each file has a **Language** setting in the file list. It defaults to **Auto-detect**. Open it and choose the correct language before you start processing, and Speak AI will transcribe in that language. ## 2. Save a default language If you mostly work in one language, save it so every new upload starts there instead of relying on auto-detection: 1. Go to [Profile > Account Preferences](https://app.speakai.co/profile/preferences). 1. Set **Media Language** to your language. This is the default source language for transcription and analysis of your uploads. ## 3. Re-transcribe a file you already uploaded If a file already processed in the wrong language, re-transcribe it: 1. Open the media file and choose **Re-transcribe** from the actions menu. 1. Set the **Target Language** and confirm. Re-transcribing creates a new version of the media and runs the full pipeline again, so it uses transcription hours just like a new upload. ## Tips for accurate detection - Make sure speech starts early in the file. Long musical or silent intros throw detection off. - For mixed-language recordings, set the dominant language manually instead of using Auto-detect. The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). Still stuck? Write to success@speakai.co or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult). --- Related: [Troubleshooting](/help/troubleshoot/) · [Export errors](/help/troubleshoot/exports/) # Upload errors > An upload fails on an unsupported codec, a file with no usable audio or video, a size or duration cap, or a dropped connection. How to tell which and clear it Source: https://docs.speakai.co/help/troubleshoot/uploads/ · Markdown: https://docs.speakai.co/help/troubleshoot/uploads/index.md An upload that fails is almost always one of four causes. Find your symptom, apply the fix, then retry. Most uploads succeed on the second attempt once the cause is cleared. | Symptom | Likely cause | Fix | | --- | --- | --- | | "Upload failed" or a 500 error | Dropped connection or an oversized file | Retry on a stable connection; for big video, upload audio-only | | File rejected at selection | Format not supported | Convert to MP3 (audio) or MP4 (video); see the format list below | | Upload succeeds, then "no usable audio or video" | The file's container is valid but the stream inside is empty or damaged | Re-export from the source app, or convert to MP3/MP4, then re-upload | | M4A that won't process | Codec variant Speak AI can't read | Convert the M4A to MP3 and upload that | ## Check the format first Speak AI accepts MP3, WAV, OGG, WEBM, M4A, FLAC, M4P, AAC, MPEG, and AMR audio; MP4, WMV, AVI, M4V, MOV, and FLV video; TXT, DOCX, and PDF documents; and PNG or JPEG images (read with OCR). Anything else: convert to MP3 or MP4 with a free tool like HandBrake, then upload. Full details: [File formats](/help/uploads/formats/). ## "No usable audio or video content" The file *looks* fine, right extension and normal size, but the audio or video stream inside is missing, empty, or damaged. This usually comes from an interrupted export or a screen recorder that saved video with no audio track. Re-export from the original app; if you only have this copy, convert it to MP3/MP4, which rebuilds the container. ## Upload works, but processing fails That's a different problem with its own causes. See [Transcription errors](/help/troubleshoot/transcription/). ## Still stuck? Send the file name, its rough size and duration, and what you saw on screen to success@speakai.co, or [book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll look at it with you. --- Related: [Uploads](/help/uploads/) · [File formats](/help/uploads/formats/) · [Duration limits](/help/uploads/duration/) · [Transcription errors](/help/troubleshoot/transcription/) # Uploads > Upload from your computer, import from a URL, pull from a connected integration, or record straight into the app. Source: https://docs.speakai.co/help/uploads/ · Markdown: https://docs.speakai.co/help/uploads/index.md Get audio, video, and text into Speak AI three ways. Whichever you use, the file transcribes and analyzes automatically the moment it arrives. ![The Upload page: drop a file, paste a link, or record yourself](/help/media/uploads/uploads-index.jpg) - **Upload a file**: drag and drop, or browse. MP3, WAV, M4A, FLAC and most audio; MP4, MOV, AVI and most video; TXT, DOCX and PDF documents. - **Paste a link**: including YouTube links, imported and transcribed for you. - **Record yourself**: capture audio or video right in the browser, no install. ## Upload a file 1. Open **Upload** from the **+ New** menu, or drag files onto the drop zone. 2. Add one file or many. Each becomes its own item in your [library](/help/library/). 3. Processing starts immediately; a typical file is ready in about half its own duration. Unusual format? Convert to MP3 or MP4 first. The full list is on [File formats](/help/uploads/formats/), and if something still won't go through, [Upload errors](/help/troubleshoot/uploads/) sorts it by symptom. ## Paste a link Paste a media URL, a YouTube video or a direct file link, and select **Import**. Speak AI fetches, transcribes, and analyzes it like any upload. ## Record in the browser Select **Start Recording** to capture audio or video on the spot. Recording elsewhere first? The [mobile app](/help/start/mobile-app/) records on the go, and the [embeddable recorder](/help/recorder/) collects recordings from other people. ## Bringing in a lot at once? - [CSV import](/help/uploads/csv-import/) adds many files or text notes in one pass - [Zapier](/help/integrations/zapier/) sends files automatically from Google Drive, Zoom, or Slack - The [API](/api/media/) uploads programmatically Moving a whole team's library in? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll plan the migration with you. --- Related: [File formats](/help/uploads/formats/) · [Duration limits](/help/uploads/duration/) · [Text notes](/help/uploads/text-notes/) · [In-app recording](/help/uploads/in-app-recording/) # CSV import > Add many recordings or text notes at once from a spreadsheet, one row per item, instead of uploading them individually. Source: https://docs.speakai.co/help/uploads/csv-import/ · Markdown: https://docs.speakai.co/help/uploads/csv-import/index.md ## What is CSV import? CSV import lets you add multiple media files or text notes to Speak AI in one go, rather than uploading them one at a time. You provide a spreadsheet (.csv) with a row for each item, map your columns to the fields Speak AI expects, and the app queues everything for processing automatically. ## Before you start CSV import requires an active subscription. If the option does not appear in the **New** menu, your current plan does not include this feature. ## Opening the CSV import dialog 1. Click the **+ New** button in the app sidebar or topbar. 1. In the dropdown that opens, scroll to the **Automate** section and click **CSV**. The **Import from CSV** dialog opens and walks you through three steps: **Choose Mode**, **Map & Preview**, and **Review & Import**. ## Step 1, Choose Mode Select the type of content you are importing: - **Media CSV**, import media URLs (video or audio files hosted online) to transcribe and analyze. Your CSV must include a column for the item name and a column for the URL. - **Text Notes CSV**, import plain text content to analyze with AI insights. Your CSV must include a column for the note name and a column for the text. Each mode card shows the limits that apply: up to **250 records** per import and a maximum file size of **500 MB**. A **Sample CSV** download link is available on each card so you can see the expected format before building your own file. Drop your `.csv` file onto the dropzone or click it to browse. Speak AI parses the file immediately and advances to the next step. *Note: CSV import works best on a desktop or tablet screen. On mobile you will see a prompt to switch to a larger device.* ## Step 2, Map & Preview Speak AI reads your CSV header row and tries to match your column names to the required fields automatically. Review each column and confirm or change the mapping using the dropdowns. Required fields (name, URL or text) must be mapped before you can continue. Optional fields, Description, Created At, Tags, and any custom fields you have set up, can be mapped or skipped. You can also choose a destination folder and set the source language for transcription on this step. ## Step 3, Review & Import Speak AI shows you a summary of how many rows were detected and flags any **invalid rows** (rows where a required field is empty). Invalid rows are listed in a table with the problem cells highlighted. You have two options when invalid rows exist: - **Import valid rows only**, skips the invalid rows and imports everything else. - **Confirm import**, submits all rows, including invalid ones (those rows may fail processing on the server). Click **Download error report** to save a copy of your invalid rows as `import-errors.csv`. The file adds an `_error` column that describes which required field is missing for each row, so you can correct the data and re-import. Once the import is submitted, Speak AI queues your files for processing. If you selected a folder, a **Go to Folder** button takes you there directly. ## Row cap Most plans import up to **250 rows** per CSV. If your file has more than 250 rows, only the first 250 are imported. Contact us if you need to import larger batches. ## Related articles - [Troubleshooting CSV Upload Errors & Format Requirements](/help/uploads/csv-import/) The fastest way to reach us is the live chat in the app (the chat bubble in the bottom corner). You can also email [success@speakai.co](mailto:success@speakai.co). ### Overview Importing your media files and text notes in bulk is a powerful way to quickly populate your Speak AI account. By following a few simple formatting rules for your CSV file, you can ensure a smooth and accurate import process, saving you time and effort. A correctly formatted CSV file prevents errors and ensures that all your content is processed as intended, making it easier to manage and access your information within Speak AI. ### How It Works Speak AI uses a CSV (Comma Separated Values) file to understand how to import your content. Each row in the CSV represents a piece of content (like an audio file or a text note), and the columns tell Speak AI what information to associate with that content, such as its location, title, or tags. ### CSV Format Basics To successfully bulk import files into Speak AI, your CSV (Comma Separated Values) file must adhere to specific formatting rules. A correctly formatted CSV ensures that all your media files or text notes are processed accurately. - **Header Row:** The first row of your file MUST contain the column names (headers). These headers tell the system what data is in each column. - **Standard Encoding:** Save your CSV file with UTF-8 encoding to ensure special characters are displayed correctly. - **File Size:** For extremely large import jobs, consider breaking your CSV into smaller batches of 1000 rows to ensure smooth processing. ### Required Columns (By Type) The columns required in your CSV depend on whether you are uploading Audio/Video files or Text Notes. ### For Audio & Video Files: - **url** (Required): The direct download link, YouTube URL, or Vimeo URL for the media file. The system must be able to access this link to download and process the file. ### For Text Notes: - **text** (Required): The actual body content of the text note you want to create. ### Optional Columns You can include these additional columns to add metadata to your uploads: - **name:** The title of the file or note in Speak AI. If omitted, a default name will be generated. - **description:** A brief description of the file. - **tags:** A comma-separated list of tags to categorize your file (e.g., "Interview, research, 2023"). - **folderId:** The specific ID of the Speak AI folder where you want the files to be stored. - **sourceLanguage:** The language code for the file (e.g., "en-US", "fr-FR"). - **createdAt:** The creation date/time of the file (ISO format preferred). ### Custom Fields If you have set up Custom Fields in your Speak AI account, you can map data to them during CSV upload. - **Header Name:** Use the exact ID of your Custom Field as the column header. - **Data Validation:** Ensure the data in these columns matches the field type: * Number Fields: Must contain only numeric values. * Boolean Fields: Must be "true" or "false". * URL Fields: Must be a valid link including "https://". * Date Fields: Must be a valid date format. ### Troubleshooting Common Errors Here is a guide to resolving the most frequent errors encountered during CSV uploads. | Error | Cause | Solution | | --- | --- | --- | | "No URL found" | The "url" column is missing or empty for a row in your media CSV. | Check your CSV and ensure every row has a valid link in the "url" column. | | "Text not found" | The "text" column is missing or empty for a row in your text notes CSV. | Ensure the "text" column is populated for every row. | | "Original file already exists in the folder" | Speak AI detects that a file with the same source URL has already been uploaded to the specific folder. | Remove the duplicate row from your CSV, or if you intend to re-upload, delete the original file from the folder first. | | "Duration not found" | The system could not read the media file from the provided URL, often because the link is broken, expired, or requires a login. | Verify that the direct download link is publicly accessible and points directly to a media file. | | "YouTube Data info not found" / "Vimeo Data info not found" | The YouTube or Vimeo link provided is invalid, private, or the video has been deleted. | Check the link in a browser incognito window to ensure it is publicly accessible. | | "Invalid \[FieldType\] field" | Data in a custom field column does not match the required format (e.g., text in a Number field). | Review the specific column mentioned in the error and correct the formatting to match the field type (e.g., change "Yes" to "true" for Boolean fields). | | "User has utilized all your available text notes..." | Your account has reached its limit for text note processing. | You may need to upgrade your plan or add credit to continue processing. | ### Next Steps If you continue to experience issues after checking these requirements, please contact our support team with a copy of your CSV file (or a sample of it) for further assistance. Ready to get started? Here's what to do next: - **Prepare your CSV file** following the guidelines above. - **Upload your file** and review the import results. ## Do you support multiple file imports Yes, we do support multiple file imports using the CSV format. If you are interested in uploading multiple files at once, please use the below format and email us. 1. Please ensure the field **names** are identical to the sample media or text file. 1. Any field containing" " (double quotation) will fail during the upload. Kindly remove the " " from your file using the *find-replace*functionality. ## Automatic store to the specific folder: If you want to pre-assign your media files to a specific folder, you can pass**"*folderId*"** as a new column. **Steps:** 1. Go to your folder or Create a new folder 1. Check your browser URL: [https://app.speakai.co/folder/](https://app.speakai.co/folder/)**cf7cbf144443** 1. **cf7cbf144443 -->**Pass under the "folderId" column 1. Please copy all the records in the CSV file to ensure all individual files go to that specific folder. *** ### Here's the CSV sample file for audio and video: [Download media CSV](https://speakai.co/wp-content/uploads/2022/09/media-files.csv) ### Here's the CSV sample file for text: [Download text CSV](https://speakai.co/wp-content/uploads/2023/11/text-notes.csv) Need help? Contact our support team or check out our other guides. ## Overview Save time and effort by uploading multiple media files at once. Instead of adding each audio or video file individually, you can use a simple CSV file to manage your uploads efficiently. This feature is perfect for organizing large libraries of content, such as interviews, webinars, or training materials, making them readily available within your workspace. ## How It Works You can bulk upload media by providing a List of URLs in a CSV file. ## Getting Started To access this feature, go to [Upload Media](https://app.speakai.co/integrations/csv) in your dashboard. ## Required CSV Format Your CSV file should have a header row and the following columns: - **URL** (Required): The direct link to the audio/video file. - **Name** (Optional): Title for the media file. - **Folder** (Optional): Name of the folder to organize uploads. ## Content Example | URL | Name | Folder | | --- | --- | --- | | [https://example.com/interview1.mp3](https://example.com/interview1.mp3) | John Doe Interview | Interviews | | [https://example.com/webinar.mp4](https://example.com/webinar.mp4) | Oct Webinar | Webinars | ## Steps to Upload 1. Go to **Upload Media**. 1. Select **Import via CSV**. 1. Upload your formatted file. 1. Speak AI will validate the links and begin processing. ## Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Upload Media. - **Prepare your CSV file** with the required format. - **Upload your file** to begin the bulk processing. Need help? Contact our support team or check out our other guides. Yes, we do support multiple file imports using the CSV format. If you are interested in uploading multiple files at once, please use the below format and email us. 1. Please ensure the field **names** are identical to the sample media or text file. 1. Any field containing" " (double quotation) will fail during the upload. Kindly remove the " " from your file using the *find-replace*functionality. ## Automatic store to the specific folder: If you want to pre-assign your media files to a specific folder, you can pass**"*folderId*"** as a new column. **Steps:** 1. Go to your folder or Create a new folder 1. Check your browser URL: [https://app.speakai.co/folder/](https://app.speakai.co/folder/)**cf7cbf144443** 1. **cf7cbf144443 -->**Pass under the "folderId" column 1. Please copy all the records in the CSV file to ensure all individual files go to that specific folder. *** ### Here's the CSV sample file for audio and video: [Download media CSV](https://speakai.co/wp-content/uploads/2022/09/media-files.csv?utm_source=docs&utm_medium=referral&utm_campaign=help) ### Here's the CSV sample file for text: [Download text CSV](https://speakai.co/wp-content/uploads/2023/11/text-notes.csv?utm_source=docs&utm_medium=referral&utm_campaign=help) ### Overview Speak AI allows you to upload CSV files to manage your data efficiently. This feature helps you import information in bulk, saving you time and effort. If you encounter issues during the upload process, this guide will help you troubleshoot common problems and ensure your CSV files are formatted correctly for a smooth experience. Understanding the correct format for your CSV files is key to successful uploads. By following these guidelines, you can avoid errors and get the most out of this powerful feature. ### Getting Started To upload a CSV file in Speak AI: 1. Navigate to the **Quick Actions** section in your header. 1. Locate and click the **Upload CSV** button. ### Use It Once you've clicked the **Upload CSV** button: - A window will appear asking you to select your CSV file. - Click **Choose File** and select the CSV file from your computer. - Click **Upload** to begin the process. - You will see a confirmation message once the upload is complete or if there were any errors. ### Use Cases Here are some common scenarios where uploading a CSV file is beneficial: - **Batch Processing:** Prepare a list of items or tasks to be processed by Speak AI. - **Organizing Information:** Import structured data from other tools or spreadsheets into Speak AI. ### Troubleshooting If your CSV upload fails, here are some common issues and how to resolve them: ### Common Errors and Solutions | Error Message/Symptom | Possible Cause | Solution | | --- | --- | --- | | Upload Failed | Incorrect file format. | Ensure your file is saved as a **.csv** (Comma Separated Values) file. | | Upload Failed | Missing or incorrect header row. | Your CSV file must have a header row with clear labels for each column. Make sure the headers match what Speak AI expects. | | Upload Failed | Data in the wrong column. | Verify that the data in each column corresponds to the correct header. For example, email addresses should be in the email column, not the name column. | | Upload Failed | Special characters or formatting issues within the data. | Check for unusual characters, extra spaces, or inconsistent formatting within your data cells. Try to keep the data clean and simple. | | Upload Failed | File is too large or contains too many rows. | If your file is very large, try splitting it into smaller files and uploading them separately. | | Some rows not uploaded | Individual row errors. | Review the specific rows that did not upload. They might have formatting issues similar to the general upload failures. Correct these rows and try uploading them again. | If you continue to experience issues after trying these solutions, please reach out to our support team for further assistance. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Uploads](/help/uploads/) · [Duration limits](/help/uploads/duration/) # Duration limits > Files up to 70 minutes upload without issue. Longer recordings are supported on paid plans, subject to your plan's duration cap. Source: https://docs.speakai.co/help/uploads/duration/ · Markdown: https://docs.speakai.co/help/uploads/duration/index.md If your audio or video file is longer than 60 minutes but less than 70 minutes, you will be able to successfully upload your file with no issues.

We understand that sometimes a file might be slightly longer than expected so we've given you a some wiggle room. ### Overview Transcribing and summarizing long audio files, such as conferences or legal depositions, can be time-consuming. This feature allows you to efficiently process these lengthy recordings, extracting key information without having to listen to the entire duration. By using AI, you can quickly get a concise summary of your audio, saving you valuable time and effort. This is especially useful for identifying critical points or specific statements within hours of content. ### How It Works The process involves uploading your audio file, allowing the AI to generate a full transcript, and then using intelligent prompts to create a summary. For extremely long files, you may consider splitting them into smaller segments. ### Getting Started To access this feature, go to [Uploads](https://app.speakai.co/upload) in your dashboard. ### Step-By-Step Workflow Follow these steps to transcribe and summarize your long audio files: 1. **Upload:** Upload your audio file (MP3/MP4). The system supports files up to 4 hours in length. 1. **Transcribe:** Allow the AI to generate the full text of your audio. 1. **Summarize:** * Use a **AI Chat**, such as: "Summarize this entire transcript into 5 key bullet points." * Alternatively, use the "Chapter Detection" insight to break down the content by topic. 1. **Review:** Click on the summary points to jump directly to that specific section in the audio. ### Related Prompts/Features - **AI Chat** - **Upload Limits** ### Pro Tips For more targeted summaries, use **Speaker Identification** before summarizing. This helps the AI understand who said what, enabling prompts like: "What did the Judge say?" ### Troubleshooting If you encounter a **"File too large"** error, try compressing the audio bitrate. Reducing it from 128kbps to 64kbps can significantly decrease file size without a noticeable loss in speech clarity. ### Next Steps Ready to get started? Here's what to do next: - **Login to your account** and navigate to Uploads → Transcribe & Summarize. - **Try it out** with a conference recording or deposition transcript. - **Explore the options** to see how AI summaries can fit your workflow. Need help? Contact our support team or check out our other guides. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Uploads](/help/uploads/) · [CSV import](/help/uploads/csv-import/) # File formats > MP3, WAV, M4A, FLAC, AAC, MP4, MOV, AVI and more upload directly, alongside TXT, DOCX and PDF, plus PNG and JPEG images read by OCR. Source: https://docs.speakai.co/help/uploads/formats/ · Markdown: https://docs.speakai.co/help/uploads/formats/index.md ## Supported formats Speak AI supports most common audio and video formats: ### Audio - **MP3** - Most common audio format - **WAV** - Uncompressed audio (highest quality) - **M4A** - Apple audio format - **FLAC** - Lossless compressed audio - **OGG** - Open-source audio format - **WMA** - Windows Media Audio - **AAC** - Advanced Audio Coding - **WEBM** - Web audio format ### Video - **MP4** - Most common video format - **MOV** - Apple QuickTime video - **AVI** - Windows video format - **MKV** - Matroska video - **WEBM** - Web video format - **WMV** - Windows Media Video ### Other - **Text files** (TXT, CSV) - For text-based analysis - **URLs** - YouTube links, direct media URLs ## File limits - **Maximum duration:** Up to 4 hours per file - **File size:** On the free plan, each file can be up to 2GB. Paid plans can upload larger files. Compressed formats (MP3, M4A) allow longer recordings within size limits. ## Tips for best results - **MP3 at 128kbps** is the sweet spot for most recordings: small file size with good speech clarity - **WAV files** give the highest transcription accuracy but are much larger - If your file is too large, compress the audio bitrate (64kbps still works well for speech) - For video, Speak extracts the audio track automatically. Video quality doesn't affect transcription accuracy. ## Converting files If your file is in an unsupported format, you can convert it using free tools: - [HandBrake](https://handbrake.fr/) for video conversion - [Audacity](https://www.audacityteam.org/) for audio conversion - Online converters like CloudConvert or Zamzar Having trouble with a specific format? Send us a message and we can help. ## Supported audio and video file formats ## Supported formats Speak AI supports most common audio and video formats: ### Audio - **MP3** - Most common audio format - **WAV** - Uncompressed audio (highest quality) - **M4A** - Apple audio format - **FLAC** - Lossless compressed audio - **OGG** - Open-source audio format - **WMA** - Windows Media Audio - **AAC** - Advanced Audio Coding - **WEBM** - Web audio format ### Video - **MP4** - Most common video format - **MOV** - Apple QuickTime video - **AVI** - Windows video format - **MKV** - Matroska video - **WEBM** - Web video format - **WMV** - Windows Media Video ### Other - **Text files** (TXT, CSV) - For text-based analysis - **URLs** - YouTube links, direct media URLs ## File limits - **Maximum duration:** Up to 4 hours per file - **File size:** On the free plan, each file can be up to 2GB. Paid plans can upload larger files. Compressed formats (MP3, M4A) allow longer recordings within size limits. ## Tips for best results - **MP3 at 128kbps** is the sweet spot for most recordings: small file size with good speech clarity - **WAV files** give the highest transcription accuracy but are much larger - If your file is too large, compress the audio bitrate (64kbps still works well for speech) - For video, Speak extracts the audio track automatically. Video quality doesn't affect transcription accuracy. ## Converting files If your file is in an unsupported format, you can convert it using free tools: - [HandBrake](https://handbrake.fr/) for video conversion - [Audacity](https://www.audacityteam.org/) for audio conversion - Online converters like CloudConvert or Zamzar Having trouble with a specific format? Send us a message and we can help. Evaluating Speak AI for a team? [Book a demo and see your own recordings analyzed](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Uploads](/help/uploads/) · [CSV import](/help/uploads/csv-import/) # In-app recording > Start a recording from the dashboard or the quick actions panel and have it transcribe automatically when you stop. Source: https://docs.speakai.co/help/uploads/in-app-recording/ · Markdown: https://docs.speakai.co/help/uploads/in-app-recording/index.md There are currently two ways you can access the audio recording from the homepage. First, select the “Record” button and fill out the title and description, a pop-up will appear at the top of your web browser requesting access to first your webcam and then your microphone. For specific audio recordings, click the small “x” in the corner of the pop-up requesting webcam access. Once you have allowed access to those you will see a player underneath the “Choose Format” options. Simply hit record on the player and start talking, the duration of the recording will appear below the player. The recording can be stopped and started at any time. The cost of the video will appear below the duration of the recording. ### Overview Recording in areas with unstable internet can be frustrating, leading to lost work. This guide provides essential tips to prevent data loss and ensure your recordings are saved, even when your connection is unreliable. By following these best practices, you can have peace of mind knowing your valuable recording sessions are protected against connectivity issues. ### How It Works The recorder caches your data locally on your browser. This means that even if your internet connection drops temporarily, your progress is saved on your device. However, it's crucial to allow the data to upload and confirm before closing your browser tab. ### Getting Started To access the recording features, go to **Audio Recorder** or **Video Recorder** in your dashboard. ### Best Practices - **Check Local Status:** If the upload bar appears to be stalled, please wait. The system is designed to automatically retry the upload. - **Do Not Close Tab:** Closing the browser tab before the upload is fully confirmed will interrupt the retry process and may lead to data loss. - **Local Backup:** If your situation allows, consider using a simultaneous local recording tool (such as QuickTime or Voice Memos on your device) as an extra layer of backup. - **Record in Shorter Segments:** If you anticipate a poor connection, it's advisable to record in shorter segments (5-10 minutes) rather than attempting one long recording. ### Troubleshooting **"Upload Failed":** If you encounter an "Upload Failed" message, check if your browser's "Local Storage" is full. Clearing some space may resolve the issue. ### Next Steps Ready to ensure your recordings are safe? Here's what to do next: - **Login to your account** and navigate to the Audio or Video Recorder. - **Review the best practices** before starting your next recording session. - **Consider using the "Upload Existing" feature** if your live stream fails. Save your file locally first, then upload it when you have a stable Wi-Fi connection. ## Transcribe in-person meeting recordings ## Record & Transcribe Meetings ### Overview Capture clear audio from your in-person meetings to get accurate transcriptions. This ensures you don't miss any important details and can easily refer back to discussions. The Speak AI Mobile App provides a smooth experience, allowing you to record, upload, and transcribe your meeting audio all in one go. ### How It Works The Speak AI Mobile App is designed to simplify the process of capturing and transcribing your meeting audio. It handles the recording and then uploads the audio for transcription, making it easy to review your meeting content later. ### Getting Started To get started, download and log in to the Speak AI mobile app on your smartphone. To access this feature, go to the **Speak AI Mobile App** on your iOS or Android device. ### Steps 1. **Open App:** Log in to the Speak AI mobile app. 1. **Record:** Tap the big red **Microphone** icon. Place the phone in the center of the table. 1. **Finish:** Tap Stop. Name the file (e.g., "Board Meeting"). 1. **Analyze:** Tap "Analyze" to start the upload/transcription process immediately, or "Save for Later" to upload when on Wi-Fi. ### Pro Tips - For large conference rooms, use an external Bluetooth microphone connected to your phone for clearer voice capture. ### Troubleshooting **"Upload Pending":** Open the app while on Wi-Fi to force the sync if it didn't finish. ### Next Steps Ready to get started? Here's what to do next: - **Download the Speak AI Mobile App** on your smartphone (iOS or Android). - **Log in** to your account. - **Try recording** your next meeting to experience the smooth transcription process. Need help? Contact our support team or check out our other guides. Need further assistance? Contact our support team or explore our other help articles. ### Overview Capture clear audio from your in-person meetings to get accurate transcriptions. This ensures you don't miss any important details and can easily refer back to discussions. The Speak AI Mobile App provides a smooth experience, allowing you to record, upload, and transcribe your meeting audio all in one go. ### How It Works The Speak AI Mobile App is designed to simplify the process of capturing and transcribing your meeting audio. It handles the recording and then uploads the audio for transcription, making it easy to review your meeting content later. ### Getting Started To get started, download and log in to the Speak AI mobile app on your smartphone. To access this feature, go to the **Speak AI Mobile App** on your iOS or Android device. ### Steps 1. **Open App:** Log in to the Speak AI mobile app. 1. **Record:** Tap the big red **Microphone** icon. Place the phone in the center of the table. 1. **Finish:** Tap Stop. Name the file (e.g., "Board Meeting"). 1. **Analyze:** Tap "Analyze" to start the upload/transcription process immediately, or "Save for Later" to upload when on Wi-Fi. ### Pro Tips - For large conference rooms, use an external Bluetooth microphone connected to your phone for clearer voice capture. ### Troubleshooting **"Upload Pending":** Open the app while on Wi-Fi to force the sync if it didn't finish. ### Next Steps Ready to get started? Here's what to do next: - **Download the Speak AI Mobile App** on your smartphone (iOS or Android). - **Log in** to your account. - **Try recording** your next meeting to experience the smooth transcription process. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Uploads](/help/uploads/) · [CSV import](/help/uploads/csv-import/) # Text notes > Paste or type text straight into Speak AI and run the same keyword, sentiment and entity analysis you get on a transcript. Source: https://docs.speakai.co/help/uploads/text-notes/ · Markdown: https://docs.speakai.co/help/uploads/text-notes/index.md You can create a text note from three places: 1. **From the sidebar** **2. From the header** **3. From the dashboard** Once you select that option, you will see a text area appear. Write or paste the text in the text area. Once you are happy with the text, hit the "Save" button on the top right. Speak will automatically analyze the text and create an insight panel to the right of your text. You can click on the insights that have been extracted to highlight the mentions of them in the text. You can also hit the "Explore Insights" button on the top right beside the insights search bar and you will be redirected to the [Explore Insights page](https://app.speakai.co/explore?) for even deeper analysis and visualization of the file. There you go. We hope that helps. If you have any other questions, please feel encouraged to send us a message on live chat. ### Overview You can analyze text that you've already transcribed elsewhere, such as Zoom cloud transcripts or human-generated outputs, without needing to pay for transcription services again. This feature allows you to use existing transcription data to gain insights and reports, saving you time and resources. ### How It Works You have two primary methods for uploading your existing text: - **Upload Text Feature:** Use the dedicated "Upload Text" option. - **Import SRT/VTT:** Import an SRT or VTT file alongside your media. ### Getting Started To access this feature, go to Uploads → Text Analysis in your dashboard. ### Methods Here are the ways you can bring your existing text into the platform: 1. **Text Note:** Copy and paste your text directly into a "New Text Note". Once added, you can run AI Chat, Sentiment analysis, and Named Entity Recognition (NER) on this text, just as you would with a media file. 1. **Align Audio:** If you have both the audio file and its corresponding transcript, upload the audio. Then, select the option "I already have a transcript" (if available in your plan) to sync the audio and text. 1. **CSV Import:** For bulk analysis, you can upload rows of text (e.g., survey responses) via CSV. Each row will be treated as an individual text note for analysis. ### Prerequisites Ensure your files are in one of the following formats: - Text file (.txt, .docx) - Caption file (.srt, .vtt) ### Troubleshooting **Formatting:** To help the AI detect topics more effectively, avoid submitting your text as one continuous block. Ensure there are clear paragraph breaks. ### Next Steps Ready to get started? - **Login to your account** and navigate to Uploads → Text Analysis. - **Try it out** by uploading a text file or SRT/VTT. - **Explore the options** to see how you can analyze your existing transcripts. ## Create and analyze text notes You can create a text note from three places: 1. **From the sidebar** **2. From the header** **3. From the dashboard** Once you select that option, you will see a text area appear. Write or paste the text in the text area. Once you are happy with the text, hit the "Save" button on the top right. Speak will automatically analyze the text and create an insight panel to the right of your text. You can click on the insights that have been extracted to highlight the mentions of them in the text. You can also hit the "Explore Insights" button on the top right beside the insights search bar and you will be redirected to the [Explore Insights page](https://app.speakai.co/explore?) for even deeper analysis and visualization of the file. There you go. We hope that helps. If you have any other questions, please feel encouraged to send us a message on live chat. Need help? Contact our support team or check out our other guides. Want a hand setting this up? [Book a free consult](https://calendly.com/speak-ai/consult?utm_source=docs&utm_campaign=consult) and we'll do it together on your account. --- Related: [Uploads](/help/uploads/) · [CSV import](/help/uploads/csv-import/) # YouTube import > YouTube URL import is paused. Download the audio or video from YouTube, then upload the file to Speak AI to transcribe it. Source: https://docs.speakai.co/help/uploads/youtube/ · Markdown: https://docs.speakai.co/help/uploads/youtube/index.md **Temporary Notice:** YouTube URL import is currently unavailable due to recent changes made by YouTube. We are actively working on a fix. **Workaround: download and upload directly** 1. Download the YouTube video to your computer 1. Open your [Speak AI dashboard](https://app.speakai.co/dashboard) 1. Click **Upload** and select **Upload a file** 1. Choose the downloaded file -- we support MP4, MP3, WEBM, and most other formats The result is identical to URL import. This is just a temporary extra step while we restore the YouTube integration. *** *Once YouTube URL import is restored, the original flow will work again:* go to Upload, select URL, paste the YouTube link, and click Import. YouTube URL imports are temporarily unavailable in Speak AI. We're working to restore this feature. ## Transcribe YouTube videos right now Download the video or audio from YouTube, then upload the file directly to Speak AI: 1. Go to [yt-dlp.org](https://www.yt-dlp.org) or use a browser extension like **Video DownloadHelper** (Chrome/Firefox) to download the video or just the audio (MP3/M4A). 1. Save it as an MP3, MP4, or M4A file. 1. Go to [app.speakai.co/upload](https://app.speakai.co/upload) and upload the file. 1. Your transcript will be ready within minutes. All other URL imports continue to work normally, Instagram, Facebook, SoundCloud, TikTok, Vimeo, X/Twitter, and LinkedIn. Questions? Reach us at [success@speakai.co](mailto:success@speakai.co). ## YouTube Import Temporarily Unavailable YouTube URL imports are temporarily unavailable in Speak AI. We're working to restore this feature. ## Transcribe YouTube videos right now Download the video or audio from YouTube, then upload the file directly to Speak AI: 1. Go to [yt-dlp.org](https://www.yt-dlp.org) or use a browser extension like **Video DownloadHelper** (Chrome/Firefox) to download the video or just the audio (MP3/M4A). 1. Save it as an MP3, MP4, or M4A file. 1. Go to [app.speakai.co/upload](https://app.speakai.co/upload) and upload the file. 1. Your transcript will be ready within minutes. All other URL imports continue to work normally, Instagram, Facebook, SoundCloud, TikTok, Vimeo, X/Twitter, and LinkedIn. Questions? Reach us at [success@speakai.co](mailto:success@speakai.co). Security or procurement question? [Talk to us](https://calendly.com/speak-ai/demo?utm_source=docs&utm_campaign=book-demo). --- Related: [Uploads](/help/uploads/) · [CSV import](/help/uploads/csv-import/) # Speak AI MCP server, connect Claude, ChatGPT, and more > Connect Claude, ChatGPT, Cursor, and other MCP clients to a Speak AI workspace to search recordings, read transcripts and insights, and run automations. Source: https://docs.speakai.co/mcp/ · Markdown: https://docs.speakai.co/mcp/index.md The Speak AI MCP server connects Claude, ChatGPT, Cursor, VS Code, and other Model Context Protocol clients to a Speak AI workspace. It runs at `https://api.speakai.co/v1/mcp` and exposes 112 tools, 5 resources, and 3 prompts covering media, transcripts, AI insights, folders, recorders, automations, dashboards, webhooks, and exports. The same package that implements the server, `@speakai/mcp-server`, is also a Node library. If you want to call Speak AI from your own code instead of through a connected AI client, see the [Node SDK](/sdk). ## What can an agent do once it's connected? Once connected, an agent can search recordings, read transcripts and AI insights, create folders and clips, run automations, and schedule a meeting assistant, all without you leaving the chat. You describe what you want, and the agent picks the right tools. Examples of what people ask once the server is connected: - "Find the last 10 customer interviews that mention pricing, group the feedback by theme, and cite the source recordings." - "Summarize this week's team meetings into decisions, action items, owners, and unresolved risks." - "Join my 2pm Zoom call, then send me a summary with action items." - "Find a strong 30-second highlight from the latest webinar, create a clip, and export captions." Your recordings stay in your Speak AI workspace. Claude and ChatGPT only see the specific data a request asks for, and neither copies or stores your media. ## Which client are you setting up? Connecting takes one URL paste and one permission click for most AI tools. Paste the address above into your client's connector settings, then approve the popup that opens. ## How does authentication work? The MCP server accepts two authentication methods: OAuth 2.1 with Dynamic Client Registration for the one-click connect flow, or a Speak AI API key passed as a Bearer token for manual setups, stdio mode, and the CLI. See [Authentication](/mcp/authentication) for how to get a key, what the REST token flow looks like, rate limits, and the tool error format. ## Where's the full tool reference? Every tool, resource, and prompt the server exposes is documented in the [tool reference](/mcp/tools), grouped by area: media, AI chat, folders and views, recorders, automations, clips, custom fields, webhooks, users and teams, dashboards, the meeting assistant, media embeds, text notes, exports, and search. You don't need to memorize tool names. Claude and ChatGPT pick the right ones based on what you ask. ## Is there a Node SDK too? The same package that runs the MCP server, `@speakai/mcp-server`, is also a library you can import directly into Node code. Use it when you're embedding Speak AI's tools inside your own service instead of connecting through an AI client. See [Node SDK](/sdk) for the exported functions and when to reach for them. ## What does connecting actually grant access to? Both methods, the permission popup and a pasted API key, grant the AI assistant **read and write** access to your whole Speak AI workspace. That includes viewing, modifying, and deleting recordings, folders, and clips. Access is not continuous. Claude or ChatGPT reads specific data only when it calls a tool to answer something you asked, and your recordings stay in your Speak AI workspace. > **Caution** > > Write access includes delete. MCP marks delete tools as destructive and most clients prompt before running one, but ask your assistant to confirm before it deletes anything. To disconnect, remove the connector inside Claude or ChatGPT, or revoke a one-click connection at `api.speakai.co/v1/oauth/connections`. ## How is this different from AI chat inside Speak AI? Speak AI's built-in AI Chat answers questions inside Speak. The MCP server lets you ask the same questions from Claude or ChatGPT, where you may already be drafting an email, planning content, or writing code. Use whichever fits the task. ## What if the connection keeps failing? A single failure mid-conversation is usually transient, so try the same prompt again. If it persists, reinstall the connector: revoke the one-click connection at `api.speakai.co/v1/oauth/connections`, then connect again. If your company blocks custom connectors, that is an admin policy rather than a fault. Some Claude Team and Enterprise workspaces restrict them, and your workspace admin needs to allow `https://api.speakai.co/v1/mcp`. ## Related guides - [Which client are you setting up?](#which-client-are-you-setting-up) - [Authentication](/mcp/authentication) - [Node SDK](/sdk) - [Tool reference](/mcp/tools) # Speak AI MCP server authentication and rate limits > How to get a Speak AI API key, pass it to the MCP server, exchange it for REST tokens yourself, and read the rate limits and tool error format. Source: https://docs.speakai.co/mcp/authentication/ · Markdown: https://docs.speakai.co/mcp/authentication/index.md You need a Speak AI API key for any setup that isn't OAuth. Create one at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). ## How do you get a Speak AI API key? Speak AI API keys are created and managed at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Use the same key for OAuth's manual alternative, Bearer token setups, stdio mode's `SPEAK_API_KEY` environment variable, and the CLI. ## How is the API key passed to the MCP server? The MCP server accepts the key two ways: automatically, when a client connects with OAuth 2.1 and Dynamic Client Registration, or directly, as a Bearer token in the `Authorization` header. - **OAuth one-click**: paste `https://api.speakai.co/v1/mcp` into your client, click Allow on the consent popup. No key handling required. - **Bearer token**: send `Authorization: Bearer ` on requests to `https://api.speakai.co/v1/mcp`, or set `SPEAK_API_KEY` as an environment variable for stdio mode and the CLI. See [Connect your AI tool](/mcp) for the exact steps and config per client. ## How does REST authentication work if you call the API directly? The MCP server and CLI manage tokens automatically. Calling the REST API directly means exchanging your API key for an access token yourself, in three steps. **Step 1, get an access token:** ```bash curl -X POST https://api.speakai.co/v1/auth/accessToken \ -H "Content-Type: application/json" \ -H "x-speakai-key: YOUR_API_KEY" ``` ```json { "data": { "email": "you@example.com", "accessToken": "eyJhbG...", "refreshToken": "eyJhbG..." } } ``` **Step 2, use the token on every subsequent request:** ```bash curl https://api.speakai.co/v1/media \ -H "x-speakai-key: YOUR_API_KEY" \ -H "x-access-token: ACCESS_TOKEN_FROM_STEP_1" ``` **Step 3, refresh before the access token expires:** ```bash curl -X POST https://api.speakai.co/v1/auth/refreshToken \ -H "Content-Type: application/json" \ -H "x-speakai-key: YOUR_API_KEY" \ -H "x-access-token: CURRENT_ACCESS_TOKEN" \ -d '{"refreshToken": "REFRESH_TOKEN_FROM_STEP_1"}' ``` | Token | Expiry | How to renew | |---|---|---| | Access token | 80 minutes | Refresh endpoint, or re-authenticate | | Refresh token | 24 hours | Re-authenticate with your API key | ## What are the rate limits? Speak AI enforces 5 requests per 30 seconds on both authentication endpoints, `/v1/auth/accessToken` and `/v1/auth/refreshToken`. For everything else, the MCP client automatically retries on `429` with exponential backoff. If you're calling the REST API directly, implement exponential backoff yourself and respect the `Retry-After` header. ## What does an error look like? Every Speak AI MCP tool error follows the same structure, so an agent can parse it without special-casing each tool. ```json { "content": [{ "type": "text", "text": "Error: HTTP 401: Invalid API key" }], "isError": true } ``` | Code | Meaning | |---|---| | `401` | Invalid or missing API key or access token | | `403` | Insufficient permissions | | `404` | Resource not found | | `429` | Rate limit exceeded | ## Related guides - [MCP server overview](/mcp) - [Connect your AI tool](/mcp) - [Node SDK](/sdk) # Stream live transcription from Speak AI over WebSocket > Connect to the Speak AI live transcription WebSocket at wss://listen.speakai.co, authenticate the handshake, stream audio, and read transcript events. Source: https://docs.speakai.co/mcp/live-transcription/ · Markdown: https://docs.speakai.co/mcp/live-transcription/index.md You need a Speak AI API key and a client that can hold a WebSocket connection open. Create a key at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). ## What is Speak AI live transcription? Speak AI live transcription is a streaming service that accepts audio over a WebSocket connection and pushes recognized words back to you one at a time, while the audio is still being captured. It runs on its own host, separate from the REST API, and it creates a media record in your workspace as the session starts, so the finished recording, transcript, and insights are available through the [Speak AI API](/api/) once the stream ends. This is a written guide rather than generated reference because a WebSocket surface has no request and response pair to describe. OpenAPI models one request against one path, and a live session is one long connection carrying many messages in both directions, so the message flow is the thing that has to be documented. ## Which host do you connect to? Connect to `wss://listen.speakai.co`. Speak AI stores the host as an `https://` origin in configuration and swaps the scheme when opening the socket, so use the `wss://` form in your own client. ```text wss://listen.speakai.co ``` ## Which path do you use? The service exposes two paths, and they are not interchangeable: `/v1/live` for your own clients, and `/v1/live-bot` for the Speak AI meeting assistant. | Path | Protocol | Who uses it | |---|---|---| | `/v1/live` | Socket.IO namespace | Browser, mobile, and server clients that capture and send their own audio | | `/v1/live-bot` | Raw WebSocket | The meeting assistant bot, which streams mixed meeting audio | > **Note** > > `/v1/live` is a Socket.IO namespace, not a raw WebSocket endpoint. A plain `new WebSocket("wss://listen.speakai.co/v1/live")` will not connect. Use a Socket.IO client, which handshakes on the default Socket.IO path and then joins the `/v1/live` namespace. ## How do you authenticate a live transcription connection? Authentication happens entirely in the handshake query string, before the first audio chunk. The service reads the query parameters, exchanges them for a short-lived access token against the REST API, and refuses to accept audio on any connection that has not completed that exchange. Which parameters are required depends on the `source` parameter: | `source` | Required parameters | |---|---| | `speak-client` (the default when `source` is absent) | `speak-api-key` | | `speak-recorder` | `userId` and `recorderToken` | | `meeting-assistant` | `companyId` and `userId` | The `speak-api-key` parameter accepts two kinds of credential. One is a developer API key from your workspace. The other is a short-lived live transcription token, a JWT with a `live-transcription` audience claim, which you mint from the REST API so a browser never holds a long-lived key. A token minted this way is rejected everywhere else in the API, and a normal session token is rejected here. Every other handshake parameter is optional and shapes the session: | Parameter | Effect | |---|---| | `sourceLanguage` | Language of the audio, for example `en-US`. Defaults to `en-US`. | | `folderId` | Folder the new media record is created in. | | `mediaType` | `audio` or `video`. `video` extracts an audio track before transcribing. | | `encoding` | Audio encoding hint passed through to the transcription engine. | | `sample-rate` | Sample rate hint passed through to the transcription engine. | | `mode` | `transcribe`, the default, or `s3-only`, which stores the stream without transcribing it. | ## How do you open a connection and stream audio? Opening a session takes three steps: connect with your credentials in the handshake query, emit `start-live-stream`, then emit `audio-data` for every chunk your recorder produces. ```js import { io } from "socket.io-client"; const socket = io("wss://listen.speakai.co/v1/live", { transports: ["websocket"], query: { "speak-api-key": "sk_test_speak_0000000000000000", sourceLanguage: "en-US", mediaType: "audio", }, }); socket.on("connect", () => { socket.emit("start-live-stream"); }); socket.on("metadata", (message) => { console.log("media id:", message.mediaId); }); socket.on("transcript", (message) => { console.log(message.word.text); }); socket.on("error", (message) => { console.error(message); }); socket.on("close", () => { console.log("stream closed"); }); ``` Send audio as a binary chunk on the `audio-data` event, then close the session with `stop-transcription`: ```js socket.emit("audio-data", audioChunk); socket.emit("stop-transcription"); ``` These are the four events the server listens for on a producing connection: | Event you emit | Payload | What it does | |---|---|---| | `start-live-stream` | none | Runs the credential exchange and prepares the session for audio | | `audio-data` | binary audio chunk | Sends one chunk of captured audio | | `stop-transcription` | none | Ends transcription and finalizes the recording | | `subscribe-to-media` | `{ mediaId, targetLanguage }` | Joins an existing session as a listener | `start-live-stream` takes no payload. The Speak AI web client sends an object with the API key in it, but the server ignores anything passed here and reads credentials from the handshake query only. Audio sent before `start-live-stream` completes is rejected. The server replies on the `error` event with `{ "type": "authentication-required", "message": "Authentication required before sending audio data" }` and drops the chunk. ## What messages does the server send back? The server sends five kinds of message, and the message type is also the event name you listen on, so `socket.on("transcript", ...)` receives every message whose `type` is `transcript`. | Event and `type` | When it arrives | |---|---| | `metadata` | The media record was created, or a subscription was accepted | | `transcript` | A new word was recognized | | `translated-transcript` | A translated sentence is ready, for subscribers that asked for a target language | | `error` | Authentication, subscription, or message format failed | | `close` | The live stream was disconnected | A `metadata` message carries the identifiers you need to find the recording later: ```json { "type": "metadata", "mediaId": "med_0000000000", "folderId": "fld_0000000000", "userId": "usr_0000000000", "name": "Customer interview", "timestamp": "2026-07-24T14:02:11.482Z", "message": "Live transcript media created successfully" } ``` A `transcript` message carries exactly one word, with its speaker, its confidence, and its position in the recording: ```json { "type": "transcript", "mediaId": "med_0000000000", "timestamp": "2026-07-24T14:02:13.905Z", "word": { "id": 1, "text": "Hello", "confidence": 0.9938, "language": "en-US", "speakerId": "0", "instances": { "startInSec": 0.32, "endInSec": 0.58 } }, "message": "New word received", "isFinal": true } ``` Words arrive one per message, so build the sentence on your side by appending them in the order they arrive. Every `transcript` message the service emits carries `isFinal: true`, and there is no separate interim result stream. An `error` message names the failure in both `message` and `error`: ```json { "type": "error", "mediaId": null, "timestamp": "2026-07-24T14:02:09.117Z", "message": "Invalid API key or failed to get access token", "error": "Invalid API key or failed to get access token" } ``` The service emits these error messages: `API key required for live streaming`, `Invalid API key or failed to get access token`, `Failed to create live transcript media`, `Media ID required for subscription`, and `Invalid message format`. Setup failures arrive in a different shape on the same event, as `{ "type": "authentication-failed", "message": "Failed to setup live streaming session" }`, so check for a `type` of `error` before assuming the `error` field is present. ## How do you listen to a session you are not recording? A second client can follow a live session by subscribing to its media id instead of sending audio. Connect to the same namespace, then emit `subscribe-to-media` with the `mediaId` that the producing client received in its `metadata` message. ```js import { io } from "socket.io-client"; const listener = io("wss://listen.speakai.co/v1/live", { transports: ["websocket"], query: { "speak-api-key": "sk_test_speak_0000000000000000" }, }); listener.on("connect", () => { listener.emit("subscribe-to-media", { mediaId: "med_0000000000", targetLanguage: "es", }); }); listener.on("transcript", (message) => { console.log(message.word.text); }); listener.on("translated-transcript", (message) => { console.log(message.translatedText); }); listener.emit("unsubscribe-from-media", { mediaId: "med_0000000000" }); ``` `targetLanguage` is optional. Include it and the subscriber also receives `translated-transcript` messages, which carry the translated sentence in `translatedText` alongside the `originalWords` it came from, plus `sourceLanguage` and `targetLanguage`. Leave it out and the subscriber receives the original words only. ## How does the meeting assistant path differ? The `/v1/live-bot` path is a raw WebSocket endpoint that accepts the meeting assistant's mixed audio, and it is one way only. Speak AI configures it for you when you turn live transcription on for the meeting assistant, so you do not open this connection yourself. The connection carries three query parameters, `companyId`, `userId`, and `source`, where `source` is `meeting-assistant`: ```text wss://listen.speakai.co/v1/live-bot?companyId=COMPANY_ID&userId=USER_ID&source=meeting-assistant ``` Messages on this path are JSON envelopes rather than binary frames. Each one has an `event` of `audio_mixed_raw.data` and a `data` object holding base64 audio in `data.data.buffer`, a `data.data.timestamp` with `relative` and `absolute` fields, and `bot`, `recording`, and `realtime_endpoint` objects that each carry an `id`. The first message doubles as the handshake, and the connection has 30 seconds to authenticate before it is closed. Audio that arrives during that window is buffered, up to 50 chunks, and replayed once authentication succeeds. Nothing is sent back on this path. The service holds the `/v1/live-bot` socket open to receive audio and publishes the resulting words to `/v1/live` subscribers instead, so a client that wants to display a live meeting transcript subscribes to the media id on `/v1/live`. ## What happens when a session ends? A session ends when the client emits `stop-transcription`, when the socket disconnects, or when the service closes the stream, and all three run the same cleanup: the transcription engine is closed, the audio is finalized to storage, and the media record moves on to full analysis. When the service closes the stream, it sends a `close` message first: ```json { "type": "close", "timestamp": "2026-07-24T14:31:44.006Z", "message": "Live stream disconnected" } ``` Speak AI defines no custom WebSocket close codes for live transcription. The one code the service sets explicitly is the standard `1000`, used when it disconnects a `/v1/live` client after sending `close`. Treat any other code you observe as coming from the transport or the network, not from Speak AI. ## How does this relate to the /v1/live-transcription REST routes? Three REST routes sit behind live transcription, all under `https://api.speakai.co/v1/live-transcription`, and the streaming service calls two of them on your behalf during a session. You do not need to call `create` or `update` yourself when you stream through `/v1/live`, because the service creates the media record when the session starts and writes words and the finished audio back as it runs. | Route | Who calls it | |---|---| | `POST /v1/live-transcription/create` | The streaming service, when your session starts | | `POST /v1/live-transcription/update/{mediaId}` | The streaming service, as words and audio are finalized | | `POST /v1/live-transcription/token` | You, to mint a short-lived live transcription token for a browser | The `token` route is the one worth calling directly. It returns a token and its lifetime, and it is rate limited to 5 requests per minute per IP address, so mint one per session rather than per connection attempt. Full request and response detail for all three lives in the [Speak AI API reference](/api/), and the header and token model they share is described in [API authentication](/api/authentication/). Once a live session finishes, the recording behaves like any other file in your workspace. Read its transcript, speakers, and insights through the [media endpoints](/api/media/), or through the [Speak AI MCP server](/mcp) if an agent is doing the reading. ## Related guides - [Speak AI MCP server, connect Claude, ChatGPT, and more](/mcp) - [Speak AI MCP server authentication and rate limits](/mcp/authentication) - [Speak AI API reference for audio, video, and text data](/api/) - [Upload audio and video to Speak AI and read insights](/api/media/) # Connect ChatGPT API / Responses to Speak AI > Set up the Speak AI MCP server in ChatGPT API / Responses. For developers calling the Responses API directly. Source: https://docs.speakai.co/mcp/setup/chatgpt-api/ · Markdown: https://docs.speakai.co/mcp/setup/chatgpt-api/index.md ChatGPT API / Responses reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and ChatGPT API / Responses. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect ChatGPT to Speak AI > Set up the Speak AI MCP server in ChatGPT. Web + desktop. Requires Developer Mode. Source: https://docs.speakai.co/mcp/setup/chatgpt/ · Markdown: https://docs.speakai.co/mcp/setup/chatgpt/index.md ChatGPT reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and ChatGPT. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect ChatGPT? 1. Open ChatGPT → Settings → **Apps & Connectors** → **Advanced** 1. Turn on **Developer Mode** (required while Speak AI isn't yet listed in ChatGPT's app store) 1. Back on Apps & Connectors, click **Create** and paste the URL above ![ChatGPT connect screen with Speak AI URL pasted](/mcp-setup/chatgpt/1.connect.png) 1. For **Authentication**, choose **OAuth**, then click **Connect** ![ChatGPT connect continue screen](/mcp-setup/chatgpt/2.connect-continue.png) 1. ChatGPT opens a new tab to Speak AI, sign in (or click **Confirm** if already logged in) to authorize ![Speak AI authorization screen](/mcp-setup/chatgpt/3.speak-auth.png) 1. Return to ChatGPT, Speak AI is now in your connector list ![Speak AI connected in ChatGPT](/mcp-setup/chatgpt/4.connected.png) 1. **Per-chat:** open a chat, click the **+** / connector menu, enable Speak AI for that chat ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect Claude Code to Speak AI > Set up the Speak AI MCP server in Claude Code. Recommended, install via the official Claude Code plugin marketplace. Source: https://docs.speakai.co/mcp/setup/claude-code/ · Markdown: https://docs.speakai.co/mcp/setup/claude-code/index.md Claude Code reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and Claude Code. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect Claude Code? 1. Add the official marketplace (one-time): `/plugin marketplace add claude-plugins-official` 1. Install the plugin: `/plugin install speakai@claude-plugins-official` 1. Activate it: `/reload-plugins` 1. Run the `getting-started` skill and paste your Speak AI API key. Generate one at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys) ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect Claude Desktop to Speak AI > Set up the Speak AI MCP server in Claude Desktop. Native macOS / Windows app. Source: https://docs.speakai.co/mcp/setup/claude-desktop/ · Markdown: https://docs.speakai.co/mcp/setup/claude-desktop/index.md Claude Desktop reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and Claude Desktop. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect Claude Desktop? 1. Open Claude Desktop → Settings → Connectors → **Add custom connector** 1. Paste the URL from the top of this page 1. Click **Add**, sign in to Speak AI, click **Allow** on the permission popup ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect Claude.ai (web) to Speak AI > Set up the Speak AI MCP server in Claude.ai (web). Browser-based, works on any computer. Source: https://docs.speakai.co/mcp/setup/claude-web/ · Markdown: https://docs.speakai.co/mcp/setup/claude-web/index.md Claude.ai (web) reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and Claude.ai (web). Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect Claude.ai (web)? > **Tip** > > [Install in Claude.ai](https://claude.ai/settings/connectors) opens the right screen directly. 1. Open [claude.ai/settings/connectors](https://claude.ai/settings/connectors) 1. Click **Add custom connector** 1. Name it **Speak AI**, paste the URL above, click **Add** ![Claude add custom connector dialog with Speak AI filled in](/mcp-setup/claude-web/1.connector.png) 1. Sign in to Speak AI, click **Allow** on the permission popup ![Speak AI connected in Claude with tools listed](/mcp-setup/claude-web/2.connected.png) ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude Desktop to Speak AI](/mcp/setup/claude-desktop/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect Cursor to Speak AI > Set up the Speak AI MCP server in Cursor. One-click install via deeplink. Source: https://docs.speakai.co/mcp/setup/cursor/ · Markdown: https://docs.speakai.co/mcp/setup/cursor/index.md Cursor reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and Cursor. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect Cursor? > **Tip** > > [Install in Cursor](cursor://anysphere.cursor-deeplink/mcp/install?name=speakai&config=eyJ1cmwiOiJodHRwczovL2FwaS5zcGVha2FpLmNvL3YxL21jcCJ9) opens the right screen directly. 1. Click the button, Cursor registers and opens the permission popup 1. Sign in to Speak AI and click **Allow** ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect OpenClaw to Speak AI > Set up the Speak AI MCP server in OpenClaw. Use Speak AI as a skill in OpenClaw-compatible agents. Source: https://docs.speakai.co/mcp/setup/openclaw/ · Markdown: https://docs.speakai.co/mcp/setup/openclaw/index.md OpenClaw reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and OpenClaw. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect OpenClaw? > **Tip** > > [View on ClawHub](https://clawhub.ai/skills/speakai) opens the right screen directly. 1. Visit the [Speak AI skill page on ClawHub](https://clawhub.ai/skills/speakai) 1. Follow the install instructions for your agent, e.g. `clawhub install speakai` from the ClawHub CLI 1. Set your `SPEAK_API_KEY` environment variable. Generate one at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys) ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect VS Code to Speak AI > Set up the Speak AI MCP server in VS Code. One-click install via deeplink. Source: https://docs.speakai.co/mcp/setup/vscode/ · Markdown: https://docs.speakai.co/mcp/setup/vscode/index.md VS Code reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and VS Code. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect VS Code? > **Tip** > > [Install in VS Code](https://vscode.dev/redirect/mcp/install?name=speakai&config=%7B%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.speakai.co%2Fv1%2Fmcp%22%7D) opens the right screen directly. 1. Click the button, VS Code registers and opens the permission popup 1. Sign in to Speak AI and click **Allow** ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Connect Windsurf to Speak AI > Set up the Speak AI MCP server in Windsurf. HTTP transport, config file. Source: https://docs.speakai.co/mcp/setup/windsurf/ · Markdown: https://docs.speakai.co/mcp/setup/windsurf/index.md Windsurf reaches your Speak AI workspace through the MCP server, so it can read your recordings, transcripts and insights while you work. ## What you need A Speak AI account, and Windsurf. Some setup paths also need an API key, which you create at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys). Every client connects to the same address: ```text https://api.speakai.co/v1/mcp ``` ## How do you connect Windsurf? 1. Get your API key at [app.speakai.co/developers/apikeys](https://app.speakai.co/developers/apikeys) 1. Add the config below to `~/.codeium/windsurf/mcp_config.json` 1. Restart Windsurf. The Speak AI tools appear in the **Cascade** panel ## What does the config look like? ```json { "mcpServers": { "speakai": { "serverUrl": "https://api.speakai.co/v1/mcp", "headers": { "Authorization": "Bearer your-api-key-here" } } } } ``` ## What can you ask for once it is connected? Ask in your own words. The server exposes 112 tools, so most questions about your workspace resolve without naming one: - "Summarise my last customer interview." - "Find every mention of pricing across this month's calls." - "Upload this recording and tell me the main themes." ## Related guides - [Connect your AI tool](/mcp) covers every supported client. - [Connect Claude.ai (web) to Speak AI](/mcp/setup/claude-web/) - [Speak AI MCP server](/mcp) explains what the server exposes. - [MCP authentication and rate limits](/mcp/authentication) # Tool reference > Every tool in the Speak AI MCP server, grouped by category, with its parameters and behaviour hints on one page each. Source: https://docs.speakai.co/mcp/tools/ · Markdown: https://docs.speakai.co/mcp/tools/index.md The Speak AI MCP server exposes 112 tools across 15 categories. Every tool has its own page with a plain-language summary, its parameters, and its behaviour hints. Every page here is generated from the server itself, so the parameters and descriptions match the tools your assistant actually calls. ## What does the Media library category cover? Upload audio or video, fetch transcripts, get AI insights, organize, favorite, export. The Media library category has 17 tools, each on its own page under [Media library](/mcp/tools/media/).
- [`update_transcription`](/mcp/tools/media/update_transcription/): Edit the official transcript text of a single media file by finding and replacing text. - [`get_signed_upload_url`](/mcp/tools/media/get_signed_upload_url/): Get a pre-signed S3 URL for direct file upload to Speak AI storage. - [`upload_media`](/mcp/tools/media/upload_media/): Upload media from a URL: a direct/public file URL, a pre-signed S3 URL, or a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar) which Speak resolves to the underlying media automatically. - [`upload_local_file`](/mcp/tools/media/upload_local_file/): Upload a local file to Speak AI for transcription and analysis. - [`upload_and_analyze`](/mcp/tools/media/upload_and_analyze/): Upload and transcribe media from a URL: a direct/public file URL, OR a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar), which Speak resolves to the underlying media automatically. - [`list_media`](/mcp/tools/media/list_media/): List and search media files in the workspace with filtering, pagination, and sorting. - [`get_media_insights`](/mcp/tools/media/get_media_insights/): Retrieve AI-generated insights for a processed media file: topics, sentiment, keywords, action items, summaries, and more. - [`get_transcript`](/mcp/tools/media/get_transcript/): Retrieve the full transcript for a media file with speaker labels and timestamps. - [`get_captions`](/mcp/tools/media/get_captions/): Get captions for a media file. - [`update_transcript_speakers`](/mcp/tools/media/update_transcript_speakers/): Update or rename speaker labels in a media transcript. - [`bulk_update_transcript_speakers`](/mcp/tools/media/bulk_update_transcript_speakers/): Update or rename speaker labels across multiple media files in a single operation. - [`get_media_status`](/mcp/tools/media/get_media_status/): Check the processing status of a media file. - [`update_media_metadata`](/mcp/tools/media/update_media_metadata/): Update metadata fields (name, description, tags, status) for an existing media file. - [`delete_media`](/mcp/tools/media/delete_media/): Permanently delete a media file and all associated transcripts and insights. - [`toggle_media_favorite`](/mcp/tools/media/toggle_media_favorite/): Mark or unmark media files as favorites for quick access. - [`reanalyze_media`](/mcp/tools/media/reanalyze_media/): Re-run AI analysis on a media file using the latest models. - [`bulk_move_media`](/mcp/tools/media/bulk_move_media/): Move multiple media files to a folder in a single operation.
## What does the Ask AI Chat category cover? Run AI prompts across one file, a folder, or your whole workspace. Save favorites. The Ask AI Chat category has 12 tools, each on its own page under [Ask AI Chat](/mcp/tools/magic-prompt/).
- [`ask_ai_chat`](/mcp/tools/magic-prompt/ask_ai_chat/): Ask an AI-powered question about your media using Speak AI's AI Chat. - [`retry_ai_chat`](/mcp/tools/magic-prompt/retry_ai_chat/): Retry a failed or incomplete AI Chat response. - [`get_chat_history`](/mcp/tools/magic-prompt/get_chat_history/): Get a list of recent AI Chat conversations. - [`get_chat_messages`](/mcp/tools/magic-prompt/get_chat_messages/): Get full message history for conversations. - [`delete_chat_message`](/mcp/tools/magic-prompt/delete_chat_message/): Delete a specific chat message from conversation history. - [`list_prompts`](/mcp/tools/magic-prompt/list_prompts/): List all available AI Chat templates. - [`get_favorite_prompts`](/mcp/tools/magic-prompt/get_favorite_prompts/): Get all prompts and answers that have been marked as favorites. - [`toggle_prompt_favorite`](/mcp/tools/magic-prompt/toggle_prompt_favorite/): Mark or unmark a chat message as a favorite for easy retrieval later. - [`update_chat_title`](/mcp/tools/magic-prompt/update_chat_title/): Update the title of a chat conversation for easier identification in history. - [`submit_chat_feedback`](/mcp/tools/magic-prompt/submit_chat_feedback/): Submit feedback on a chat response (thumbs up/down). - [`get_chat_statistics`](/mcp/tools/magic-prompt/get_chat_statistics/): Get usage statistics for AI Chat / chat. - [`export_chat_answer`](/mcp/tools/magic-prompt/export_chat_answer/): Export a specific AI Chat answer.
## What does the Search & analytics category cover? Full-text search across transcripts, insights, and metadata. Workspace-level stats. The Search & analytics category has 3 tools, each on its own page under [Search & analytics](/mcp/tools/search-analytics/).
- [`search_media`](/mcp/tools/search-analytics/search_media/): Deep search across all media transcripts, insights, and metadata. - [`get_media_statistics`](/mcp/tools/search-analytics/get_media_statistics/): Get workspace-level media statistics: total counts, processing status breakdown, storage usage, etc. - [`list_supported_languages`](/mcp/tools/search-analytics/list_supported_languages/): List all languages supported for transcription.
## What does the Folders & views category cover? Create folders, save filtered views, bulk move files, share read-only collections. The Folders & views category has 11 tools, each on its own page under [Folders & views](/mcp/tools/folders-views/).
- [`list_folders`](/mcp/tools/folders-views/list_folders/): List all folders in the workspace with pagination and sorting. - [`get_folder_info`](/mcp/tools/folders-views/get_folder_info/): Get detailed information about a specific folder including its contents. - [`create_folder`](/mcp/tools/folders-views/create_folder/): Create a new folder in the workspace. - [`clone_folder`](/mcp/tools/folders-views/clone_folder/): Duplicate an existing folder and all of its contents. - [`update_folder`](/mcp/tools/folders-views/update_folder/): Update a folder. - [`delete_folder`](/mcp/tools/folders-views/delete_folder/): Permanently delete a folder. - [`get_all_folder_views`](/mcp/tools/folders-views/get_all_folder_views/): Retrieve all saved views across all folders. - [`get_folder_views`](/mcp/tools/folders-views/get_folder_views/): Retrieve all saved views for a specific folder. - [`create_folder_view`](/mcp/tools/folders-views/create_folder_view/): Create a new saved view for a folder with a custom set of display columns. - [`update_folder_view`](/mcp/tools/folders-views/update_folder_view/): Update an existing saved view. - [`clone_folder_view`](/mcp/tools/folders-views/clone_folder_view/): Duplicate an existing folder view into a target folder.
## What does the Recorders & surveys category cover? Public recording links for clients, prompted question sets, branded submission pages. The Recorders & surveys category has 10 tools, each on its own page under [Recorders & surveys](/mcp/tools/recorders-surveys/).
- [`create_recorder`](/mcp/tools/recorders-surveys/create_recorder/): Create a new recorder or survey for collecting audio/video submissions. - [`list_recorders`](/mcp/tools/recorders-surveys/list_recorders/): List all recorders/surveys in the workspace. - [`get_recorder_info`](/mcp/tools/recorders-surveys/get_recorder_info/): Get detailed information about a specific recorder including its settings and questions. - [`clone_recorder`](/mcp/tools/recorders-surveys/clone_recorder/): Duplicate an existing recorder including all its settings and questions. - [`get_recorder_recordings`](/mcp/tools/recorders-surveys/get_recorder_recordings/): List all submissions/recordings collected by a specific recorder. - [`generate_recorder_url`](/mcp/tools/recorders-surveys/generate_recorder_url/): Generate a shareable public URL for a recorder/survey. - [`update_recorder_settings`](/mcp/tools/recorders-surveys/update_recorder_settings/): Update configuration settings for a recorder (branding, capture options, etc.). - [`update_recorder_questions`](/mcp/tools/recorders-surveys/update_recorder_questions/): Update the survey questions and respondent-info settings for a recorder. - [`check_recorder_status`](/mcp/tools/recorders-surveys/check_recorder_status/): Check whether a recorder/survey is active and accepting submissions. - [`delete_recorder`](/mcp/tools/recorders-surveys/delete_recorder/): Permanently delete a recorder/survey.
## What does the Clips category cover? Highlight clips from any time range. Export PDF, DOCX, SRT, VTT, TXT, CSV. The Clips category has 4 tools, each on its own page under [Clips](/mcp/tools/clips/).
- [`create_clip`](/mcp/tools/clips/create_clip/): Create a highlight clip from one or more media files by specifying time ranges. - [`get_clips`](/mcp/tools/clips/get_clips/): List clips, optionally filtered by folder or media files. - [`update_clip`](/mcp/tools/clips/update_clip/): Update a clip's title, description, or tags. - [`delete_clip`](/mcp/tools/clips/delete_clip/): Permanently delete a clip and its associated media file.
## What does the Exports category cover? Highlight clips from any time range. Export PDF, DOCX, SRT, VTT, TXT, CSV. The Exports category has 2 tools, each on its own page under [Exports](/mcp/tools/exports/).
- [`export_media`](/mcp/tools/exports/export_media/): Export a media file's transcript or insights in various formats (pdf, docx, srt, vtt, txt, csv). - [`export_multiple_media`](/mcp/tools/exports/export_multiple_media/): Export multiple media files at once, optionally merged into a single file.
## What does the Meeting bot category cover? Schedule Speak AI to join a Zoom / Google Meet / Teams call and transcribe automatically. The Meeting bot category has 5 tools, each on its own page under [Meeting bot](/mcp/tools/meeting-bot/).
- [`list_meeting_events`](/mcp/tools/meeting-bot/list_meeting_events/): List scheduled or completed meeting assistant events with filtering and pagination. - [`schedule_meeting_event`](/mcp/tools/meeting-bot/schedule_meeting_event/): Schedule the Speak AI meeting assistant to join and record an upcoming meeting. - [`remove_assistant_from_meeting`](/mcp/tools/meeting-bot/remove_assistant_from_meeting/): Remove the Speak AI assistant from an active or scheduled meeting. - [`delete_scheduled_assistant`](/mcp/tools/meeting-bot/delete_scheduled_assistant/): Cancel and delete a scheduled meeting assistant event. - [`get_live_meeting_transcript`](/mcp/tools/meeting-bot/get_live_meeting_transcript/): Fetch new sentences from an in-progress or just-ended meeting transcript.
## What does the Automations category cover? Trigger actions on new recordings. Send events to your own backend. The Automations category has 15 tools, each on its own page under [Automations](/mcp/tools/automations/).
- [`list_automations`](/mcp/tools/automations/list_automations/): List automation rules in the workspace, with paging and filters. - [`get_automation`](/mcp/tools/automations/get_automation/): Get detailed information about a specific automation rule, including its trigger and step graph. - [`create_automation`](/mcp/tools/automations/create_automation/): Create a new automation rule using the V2 graph model (trigger + ordered steps). - [`update_automation`](/mcp/tools/automations/update_automation/): Update an existing automation rule. - [`toggle_automation_status`](/mcp/tools/automations/toggle_automation_status/): Toggle an automation rule between active and inactive. - [`list_automation_names`](/mcp/tools/automations/list_automation_names/): List automations as lightweight \{ name, id \} pairs: useful for pickers without fetching full configs. - [`get_automation_runs`](/mcp/tools/automations/get_automation_runs/): Get the run history (executions) for an automation, with paging and optional status filter. - [`bulk_update_automation_status`](/mcp/tools/automations/bulk_update_automation_status/): Activate or deactivate multiple automations at once. - [`bulk_assign_automation_folders`](/mcp/tools/automations/bulk_assign_automation_folders/): Set the folder scope for multiple automations at once. - [`run_automations`](/mcp/tools/automations/run_automations/): Manually run one or more automations against one or more media items now (outside the normal trigger). - [`delete_automation`](/mcp/tools/automations/delete_automation/): Permanently delete an automation rule. - [`list_automation_apps`](/mcp/tools/automations/list_automation_apps/): List the apps available in the automation catalog (e.g. Speak native + connected integrations). - [`list_automation_triggers`](/mcp/tools/automations/list_automation_triggers/): List the trigger types available in the automation catalog. - [`list_automation_actions`](/mcp/tools/automations/list_automation_actions/): List the action/step types available in the automation catalog. - [`build_automation`](/mcp/tools/automations/build_automation/): High-level automation builder: create (or update) a Speak automation from a friendly spec without knowing the wire format.
## What does the Webhooks category cover? Trigger actions on new recordings. Send events to your own backend. The Webhooks category has 7 tools, each on its own page under [Webhooks](/mcp/tools/webhooks/).
- [`create_webhook`](/mcp/tools/webhooks/create_webhook/): Create a new webhook to receive real-time notifications when events occur in Speak AI. - [`list_webhooks`](/mcp/tools/webhooks/list_webhooks/): List all configured webhooks in the workspace. - [`update_webhook`](/mcp/tools/webhooks/update_webhook/): Update an existing webhook. - [`delete_webhook`](/mcp/tools/webhooks/delete_webhook/): Delete a webhook and stop receiving notifications at its endpoint. - [`provision_inbound_webhook`](/mcp/tools/webhooks/provision_inbound_webhook/): Provision a standalone inbound webhook and get its public receive URL (inboundUrl) BEFORE creating an automation. - [`get_inbound_webhook`](/mcp/tools/webhooks/get_inbound_webhook/): Get an inbound webhook's public receive URL, captured sample payload, and the ready-to-paste \{\{trigger.payload.*\}\} tokens for mapping payload values into automation steps (speak-upload name/sourceUrl, fieldsMap custom-field values, notify/outbound-webhook templates). - [`get_webhook_attempts`](/mcp/tools/webhooks/get_webhook_attempts/): Get the delivery log for an inbound webhook: each received request with its HTTP acknowledgement status (200 = sample captured, 202 = accepted and run started, 401/403 = rejected) and the automation run it started.
## What does the Text notes category cover? Standalone AI-analyzed text notes plus custom fields you can tag any media file with. The Text notes category has 4 tools, each on its own page under [Text notes](/mcp/tools/text-notes/).
- [`create_text_note`](/mcp/tools/text-notes/create_text_note/): Create a new text note in Speak AI for analysis. - [`get_text_insight`](/mcp/tools/text-notes/get_text_insight/): Retrieve AI-generated insights for a text note, including topics, sentiment, summaries, and action items. - [`reanalyze_text`](/mcp/tools/text-notes/reanalyze_text/): Trigger a re-analysis of an existing text note to regenerate insights with the latest AI models. - [`update_text_note`](/mcp/tools/text-notes/update_text_note/): Update an existing text note's name, content, or metadata.
## What does the Custom fields category cover? Standalone AI-analyzed text notes plus custom fields you can tag any media file with. The Custom fields category has 4 tools, each on its own page under [Custom fields](/mcp/tools/custom-fields/).
- [`list_fields`](/mcp/tools/custom-fields/list_fields/): List all custom fields defined in the workspace. - [`create_field`](/mcp/tools/custom-fields/create_field/): Create a new custom field for categorizing and tagging media. - [`update_field`](/mcp/tools/custom-fields/update_field/): Update a specific custom field by ID. - [`update_multiple_fields`](/mcp/tools/custom-fields/update_multiple_fields/): Set custom field values across media in a single batch operation.
## What does the Embed players category cover? Embeddable player widgets for media on your own website. The Embed players category has 4 tools, each on its own page under [Embed players](/mcp/tools/embed-other/).
- [`create_embed`](/mcp/tools/embed-other/create_embed/): Create an embeddable player/transcript widget for a media file or a set of folders. - [`update_embed`](/mcp/tools/embed-other/update_embed/): Update an existing embed widget: appearance/feature toggles via `meta`, plus scope and privacy. - [`check_embed`](/mcp/tools/embed-other/check_embed/): Check if an embed exists for a media file and retrieve its configuration. - [`get_embed_iframe_url`](/mcp/tools/embed-other/get_embed_iframe_url/): Get the iframe URL for embedding a media player/transcript on a webpage.
## What does the Users & teams category cover? List workspace members and manage user groups. The Users & teams category has 5 tools, each on its own page under [Users & teams](/mcp/tools/users-team/).
- [`list_users`](/mcp/tools/users-team/list_users/): List the users (members) in the workspace/company, with their ids, names, emails, and permissions. - [`list_user_groups`](/mcp/tools/users-team/list_user_groups/): List all user groups in the company. - [`create_user_group`](/mcp/tools/users-team/create_user_group/): Create a new user group and assign members. - [`update_user_group`](/mcp/tools/users-team/update_user_group/): Update a user group's name and member list. - [`delete_user_group`](/mcp/tools/users-team/delete_user_group/): Delete a user group.
## What does the Dashboards category cover? Create and manage analytics dashboards, widgets, and public sharing. The Dashboards category has 9 tools, each on its own page under [Dashboards](/mcp/tools/dashboards/).
- [`list_dashboard_widgets`](/mcp/tools/dashboards/list_dashboard_widgets/): Discovery + how-to helper for building and customizing dashboards. - [`list_dashboards`](/mcp/tools/dashboards/list_dashboards/): List all analytics dashboards the caller can access, including share state and each dashboard's current `revision` (needed for `update_dashboard`). - [`get_dashboard`](/mcp/tools/dashboards/get_dashboard/): Get a single dashboard's full spec: title, description, source, date range, sections, widgets, and the current `revision` (pass that revision back to `update_dashboard`). - [`create_dashboard`](/mcp/tools/dashboards/create_dashboard/): Create an analytics dashboard. - [`update_dashboard`](/mcp/tools/dashboards/update_dashboard/): Update a dashboard. - [`delete_dashboard`](/mcp/tools/dashboards/delete_dashboard/): Soft-delete a dashboard. - [`duplicate_dashboard`](/mcp/tools/dashboards/duplicate_dashboard/): Clone an existing dashboard. - [`share_dashboard`](/mcp/tools/dashboards/share_dashboard/): Enable public sharing for a dashboard and return its share token + embed id. - [`get_dashboard_speakers_insight`](/mcp/tools/dashboards/get_dashboard_speakers_insight/): Compute a speakers breakdown for a given folder scope, date range, and field filters.
## Related - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Automations tools in the Speak AI MCP server reference > Trigger actions on new recordings. Send events to your own backend. All 15 Automations tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/automations/ · Markdown: https://docs.speakai.co/mcp/tools/automations/index.md The Automations category groups 15 of the Speak AI MCP server's tools. Trigger actions on new recordings. Send events to your own backend. ## Which Automations tools does the Speak AI MCP server have? The Speak AI MCP server has 15 Automations tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`list_automations`](/mcp/tools/automations/list_automations/): List automation rules in the workspace, with paging and filters. - [`get_automation`](/mcp/tools/automations/get_automation/): Get detailed information about a specific automation rule, including its trigger and step graph. - [`create_automation`](/mcp/tools/automations/create_automation/): Create a new automation rule using the V2 graph model (trigger + ordered steps). - [`update_automation`](/mcp/tools/automations/update_automation/): Update an existing automation rule. - [`toggle_automation_status`](/mcp/tools/automations/toggle_automation_status/): Toggle an automation rule between active and inactive. - [`list_automation_names`](/mcp/tools/automations/list_automation_names/): List automations as lightweight \{ name, id \} pairs: useful for pickers without fetching full configs. - [`get_automation_runs`](/mcp/tools/automations/get_automation_runs/): Get the run history (executions) for an automation, with paging and optional status filter. - [`bulk_update_automation_status`](/mcp/tools/automations/bulk_update_automation_status/): Activate or deactivate multiple automations at once. - [`bulk_assign_automation_folders`](/mcp/tools/automations/bulk_assign_automation_folders/): Set the folder scope for multiple automations at once. - [`run_automations`](/mcp/tools/automations/run_automations/): Manually run one or more automations against one or more media items now (outside the normal trigger). - [`delete_automation`](/mcp/tools/automations/delete_automation/): Permanently delete an automation rule. - [`list_automation_apps`](/mcp/tools/automations/list_automation_apps/): List the apps available in the automation catalog (e.g. Speak native + connected integrations). - [`list_automation_triggers`](/mcp/tools/automations/list_automation_triggers/): List the trigger types available in the automation catalog. - [`list_automation_actions`](/mcp/tools/automations/list_automation_actions/): List the action/step types available in the automation catalog. - [`build_automation`](/mcp/tools/automations/build_automation/): High-level automation builder: create (or update) a Speak automation from a friendly spec without knowing the wire format. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Build Automation > High-level automation builder: create (or update) a Speak automation from a friendly spec without knowing the wire format. Source: https://docs.speakai.co/mcp/tools/automations/build_automation/ · Markdown: https://docs.speakai.co/mcp/tools/automations/build_automation/index.md `build_automation` is a tool in the Speak AI MCP server. High-level automation builder: create (or update) a Speak automation from a friendly spec without knowing the wire format. ## What does it do? High-level automation builder: create (or update) a Speak automation from a friendly spec without knowing the wire format. Accepts folder/custom-field NAMES (resolved to ids; missing folders are auto-created), payload.\ shorthand for webhook tokens, and simple step types (filter, branch, upload, ai_chat, translate, notify, call_webhook). For inbound-webhook automations the result includes the receive URL and mappable payload tokens. Prefer this over `create_automation` unless you need raw control. ## Parameters `build_automation` takes 7 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Display name for the automation | | `trigger` | object | Yes | What starts the automation. Object with: • on (required): "media_analyzed" \| "inbound_webhook" \| "field_updated" • folders: array of folder names or ids (required for media_analyzed; missing folders are created) • childKey: dot-path narrowing the webhook payload root, e.g. "data" (inbound_webhook only) • webhookId: reuse a webhook from `provision_inbound_webhook` (inbound_webhook only; omit to auto-provision) • watchFields: array of \{ field: name-or-id, values?: string[] \} (required for field_updated. Fires when the field changes; values restricts to specific new values) • matchLogic: "AND"\|"OR" for combining multiple watchFields value matches (default OR) | | `steps` | array of object | Yes | Ordered actions. Each step is an object with a `do` key plus its options. String values may be literals, "payload.\" shorthand (converted to \{\{trigger.payload.\\}\} only when it is the ENTIRE value), or raw \{\{...\}\} tokens: inside longer text, write the full \{\{trigger.payload.\\}\} form. • \{ do: "filter", rules: [\{ field, op, value? \}], logic?: "AND"\|"OR" \}. Continue only if rules match. Fields: media flows use name\|duration\|sourceLanguage\|tags\|transcript\|speakers or a custom field name; webhook payloads use payload paths like "contact.status". Ops: eq\|neq\|contains\|ncontains\|startsWith\|gt\|lt\|exists • \{ do: "branch", rules, logic? \}. Like filter but routes instead of stopping; later steps with runWhen: "true"\|"false" only run on that outcome. NOTE: branch routing requires the server's DAG runner (feature-flagged); when it is off, steps run in order and runWhen markers are ignored. Prefer filter for guaranteed gating • \{ do: "upload", source (URL or payload.\, required), name?, language? (e.g. "en-US"), folder? (name or id; created if missing), folderFromPayload? (payload key holding the destination folder name. Dynamic routing), onNoFolderMatch?: "create"\|"default", mapFields?: \{ \: \\> \} (writes payload values into custom fields on the uploaded media) \} • \{ do: "ai_chat", prompt? (required unless saveToFields given), title?, saveToFields?: [field names or ids] (max 10. Values are extracted into these custom fields; prompt may be omitted for extraction-only steps), model? (a Speak-supported LLM id, e.g. "gemini-2.5-flash", "claude-sonnet-4-6"; omit for the workspace default) \} • \{ do: "translate", language: region-qualified code like "es-ES", "fr-FR" \} • \{ do: "notify", message (required, tokens allowed), channel?: "in_app"\|"email"\|"slack" (default in_app; email currently falls back to an in-app notification), target? (reserved. Not yet used for delivery) \} • \{ do: "call_webhook", url (required), method?, headers?, body? (string or object template, tokens allowed) \} Steps may also set runWhen (after a branch step). Composio app actions (Google Drive, Slack apps, …) are not supported by this builder yet: use `create_automation` directly for those. | | `automationId` | string | No | Update this existing automation instead of creating a new one (full replace) | | `description` | string | No | Optional description | | `isActive` | boolean | No | Whether the automation is active (default true) | | `orTriggers` | array of object | No | Additional "Or" triggers (same shape as trigger, but inbound_webhook is not allowed here). The automation runs when ANY trigger fires. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `build_automation`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Bulk Assign Automation Folders > Set the folder scope for multiple automations at once. Source: https://docs.speakai.co/mcp/tools/automations/bulk_assign_automation_folders/ · Markdown: https://docs.speakai.co/mcp/tools/automations/bulk_assign_automation_folders/index.md Use the Speak AI MCP server tool `bulk_assign_automation_folders` to set the folder scope for multiple automations at once. ## What does it do? Set the folder scope for multiple automations at once. Pass an empty folderIds array to remove the folder restriction (run on all folders). ## Parameters `bulk_assign_automation_folders` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationIds` | array of string | Yes | Automation ids to update | | `folderIds` | array of string | Yes | Folder ids to scope the automations to. Empty array = all folders. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `bulk_assign_automation_folders`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Bulk Update Automation Status > Activate or deactivate multiple automations at once. Source: https://docs.speakai.co/mcp/tools/automations/bulk_update_automation_status/ · Markdown: https://docs.speakai.co/mcp/tools/automations/bulk_update_automation_status/index.md Use the Speak AI MCP server tool `bulk_update_automation_status` to activate or deactivate multiple automations at once. ## What does it do? Activate or deactivate multiple automations at once. ## Parameters `bulk_update_automation_status` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationIds` | array of string | Yes | Automation ids to update | | `isActive` | boolean | Yes | true to activate, false to deactivate, for all listed automations | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `bulk_update_automation_status`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Automation > Create a new automation rule using the V2 graph model (trigger + ordered steps). Source: https://docs.speakai.co/mcp/tools/automations/create_automation/ · Markdown: https://docs.speakai.co/mcp/tools/automations/create_automation/index.md Use the Speak AI MCP server tool `create_automation` to create a new automation rule using the V2 graph model (trigger + ordered steps). ## What does it do? Create a new automation rule using the V2 graph model (trigger + ordered steps). Fetch valid step/trigger options with `list_automation_triggers` / `list_automation_actions` if unsure. For inbound-webhook automations the response includes inboundWebhook.inboundUrl (where to POST payloads). Recommended flow: create, send a test payload to the URL with ?test=1, call `get_inbound_webhook` to see mappable payload tokens, then `update_automation` to wire tokens/fieldsMap. ## Parameters `create_automation` takes 8 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Display name for the automation | | `trigger` | object | Yes | Trigger object (the automation's root). Always include triggerSlug. Supported shapes: • Media analyzed in folder(s): \{ type: "folders", triggerSlug: "media_analyzed", folderIds: string[] (min 1) \} • Inbound webhook (receive external payloads): \{ type: "folders", triggerSlug: "inbound_webhook", webhookId? (from `provision_inbound_webhook`; omit to auto-provision a new one on create), childKey? (dot-path narrowing which part of the payload feeds the automation, e.g. "data") \}. The create/update response includes inboundWebhook.inboundUrl: the public URL to POST payloads to. • Custom field updated: \{ type: "folders", triggerSlug: "field_updated", values: string[] (watched custom field ids, min 1), fieldValueMatches?: [\{ fieldId, values: string[] \}] (fire only when the field changes TO one of these values; empty values = any change), fieldMatchLogic?: "AND"\|"OR" (how multiple fieldValueMatches combine, default "OR") \} • Composio app event: \{ type: "composio", provider: "composio", app, triggerSlug, connectedAccountId \} (requires a connected account; may be behind a server flag) Notes: "tags"/"keywords" trigger types are rejected for graph automations. The server stores inbound-webhook triggers with type "webhook" internally: send type "folders" plus the slug as shown above. | | `triggers` | array of object | No | Optional additional "Or" triggers (max 10): the automation runs when ANY of them fires, sharing the same steps. Each entry mirrors the trigger shapes above but cannot be an inbound webhook and carries no webhookId/childKey. Example: [\{ type: "folders", triggerSlug: "field_updated", values: ["\"] \}] | | `steps` | array of object | Yes | Ordered array of graph steps (1-20). Each step is an object: \{ stepId: string (unique within the array), stepType: one of "speak-upload" \| "magic-prompt" \| "translation" \| "filter" \| "condition" \| "notify" \| "outbound-webhook" \| "composio-action", dependsOn?: string[] (stepIds this step runs after), branch?: "true"\|"false" (which outcome of an upstream condition step this step belongs to) \} plus ONE config key matching stepType: • speak-upload -\> speakUpload: \{ sourceMode: "url"\|"file", sourceUrl (required when sourceMode="url"; tokens allowed. If the token resolves to an object, the first http(s) URL inside it is used), folderId (required, unless folderRouting.mode="dynamic" where it becomes the optional fallback), name? (tokens allowed, mixable with static text), language? (language code or token), fieldsMap?: \{ \: "\" \} (writes payload values into Speak custom fields on the uploaded media; values are usually \{\{trigger.payload.\\}\} tokens. Get field ids from `list_fields`), folderRouting?: \{ mode: "static"\|"dynamic", sourceKey (payload key holding the destination folder name, required when dynamic), onNoMatch: "create"\|"default" (create a folder named after the value, or fall back to folderId) \} \} • magic-prompt -\> magicPrompt: \{ prompt (required unless fieldIds given, max 20000), title?, assistantType? ("general"\|"researcher"\|"marketer"\|"sales"\|"recruiter"\|"custom", default "general"), assistantTemplateId? (required if assistantType="custom"), fieldIds?: string[] (max 10. Extract answers into these custom fields) \} • translation -\> translation: \{ targetLanguage: region-qualified locale code, e.g. "es-ES", "fr-FR" (bare codes like "es" are rejected) \} • filter -\> filter: \{ logic: "AND"\|"OR" (default "AND"), rules: [\{ field, op, value? \}] (1-20) \}. The run continues only when the rules match, otherwise it stops silently • condition -\> condition: same \{ logic, rules \} shape as filter, but instead of stopping it routes: downstream steps marked branch:"true"/"false" run according to the outcome • notify -\> notify: \{ channel: "in_app"\|"email"\|"slack", target?, message (required, tokens allowed) \} • outbound-webhook -\> outboundWebhook: \{ url (required, tokens allowed), method? ("GET"\|"POST"\|"PUT"\|"PATCH"\|"DELETE", default "POST"), headers?: \{ \: \ \}, bodyTemplate?: string \| object (tokens allowed) \} • composio-action -\> composio: \{ app, action, connectedAccountId?, argsTemplate? \} (Composio is currently behind a server flag and may be unavailable) Filter/condition rule fields depend on what flows into the step: MEDIA -\> name\|duration\|sourceLanguage\|tags\|transcript\|speakers or a custom field id; INSIGHT -\> answer; inbound-webhook DATA -\> any payload path (e.g. "contact.status"). Ops by field type. Text: eq\|neq\|contains\|ncontains\|startsWith\|exists; number: eq\|neq\|gt\|lt\|exists; array: contains\|ncontains\|exists ("exists" takes no value; gt/lt values are numbers). Token syntax (usable in fields marked 'tokens allowed'): \{\{trigger.payload.\\}\} reads the inbound webhook payload (dot paths and [n] array indices; paths are relative to trigger.childKey when set. Discover valid paths with `get_inbound_webhook` after sending a test payload); \{\{step.\.\\}\} or \{\{step.\.\\}\} reads a previous step's output (speak-upload -\> mediaId, magic-prompt -\> answer, outbound-webhook -\> status/response). | | `description` | string | No | Optional description | | `isActive` | boolean | No | Whether the automation is active (defaults to true) | | `runType` | enum: instant, schedule | No | Run type: "instant" (default, runs on trigger) or "schedule" (cron) | | `schedule` | object | No | Required when runType="schedule": \{ timePeriod: "today"\|"yesterday"\|"last7days"\|"last14days"\|"thisWeek", repeatAt: string \} | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_automation`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Automation > Permanently delete an automation rule. Source: https://docs.speakai.co/mcp/tools/automations/delete_automation/ · Markdown: https://docs.speakai.co/mcp/tools/automations/delete_automation/index.md Use the Speak AI MCP server tool `delete_automation` to permanently delete an automation rule. ## What does it do? Permanently delete an automation rule. ## Parameters `delete_automation` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationId` | string | Yes | Unique identifier of the automation to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_automation`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Automation Runs > Get the run history (executions) for an automation, with paging and optional status filter. Source: https://docs.speakai.co/mcp/tools/automations/get_automation_runs/ · Markdown: https://docs.speakai.co/mcp/tools/automations/get_automation_runs/index.md Use the Speak AI MCP server tool `get_automation_runs` to get the run history (executions) for an automation, with paging and optional status filter. ## What does it do? Get the run history (executions) for an automation, with paging and optional status filter. ## Parameters `get_automation_runs` takes 4 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationId` | string | Yes | Unique identifier of the automation | | `page` | number | No | 0-based page index | | `pageSize` | number | No | Results per page | | `status` | enum: pending, running, completed, failed, killed | No | Filter runs by status | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_automation_runs`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Automation Details > Get detailed information about a specific automation rule, including its trigger and step graph. Source: https://docs.speakai.co/mcp/tools/automations/get_automation/ · Markdown: https://docs.speakai.co/mcp/tools/automations/get_automation/index.md Use the Speak AI MCP server tool `get_automation` to get detailed information about a specific automation rule, including its trigger and step graph. ## What does it do? Get detailed information about a specific automation rule, including its trigger and step graph. ## Parameters `get_automation` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationId` | string | Yes | Unique identifier of the automation | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_automation`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Automation Actions > List the action/step types available in the automation catalog. Source: https://docs.speakai.co/mcp/tools/automations/list_automation_actions/ · Markdown: https://docs.speakai.co/mcp/tools/automations/list_automation_actions/index.md Use the Speak AI MCP server tool `list_automation_actions` to list the action/step types available in the automation catalog. ## What does it do? List the action/step types available in the automation catalog. Optionally filter by app. ## Parameters `list_automation_actions` takes 1 parameter, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `app` | string | No | Filter actions to a specific app slug | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_automation_actions`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Automation Apps > List the apps available in the automation catalog (e.g. Speak native + connected integrations). Source: https://docs.speakai.co/mcp/tools/automations/list_automation_apps/ · Markdown: https://docs.speakai.co/mcp/tools/automations/list_automation_apps/index.md Use the Speak AI MCP server tool `list_automation_apps` to list the apps available in the automation catalog (e.g. Speak native + connected integrations). ## What does it do? List the apps available in the automation catalog (e.g. Speak native + connected integrations). Use to discover what triggers/actions exist before building an automation. ## Parameters `list_automation_apps` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_automation_apps`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Automation Names > List automations as lightweight { name, id } pairs: useful for pickers without fetching full configs. Source: https://docs.speakai.co/mcp/tools/automations/list_automation_names/ · Markdown: https://docs.speakai.co/mcp/tools/automations/list_automation_names/index.md Use the Speak AI MCP server tool `list_automation_names` to list automations as lightweight \{ name, id \} pairs: useful for pickers without fetching full configs. ## What does it do? List automations as lightweight \{ name, id \} pairs: useful for pickers without fetching full configs. ## Parameters `list_automation_names` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_automation_names`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Automation Triggers > List the trigger types available in the automation catalog. Source: https://docs.speakai.co/mcp/tools/automations/list_automation_triggers/ · Markdown: https://docs.speakai.co/mcp/tools/automations/list_automation_triggers/index.md Use the Speak AI MCP server tool `list_automation_triggers` to list the trigger types available in the automation catalog. ## What does it do? List the trigger types available in the automation catalog. Optionally filter by app. ## Parameters `list_automation_triggers` takes 1 parameter, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `app` | string | No | Filter triggers to a specific app slug | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_automation_triggers`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Automations > List automation rules in the workspace, with paging and filters. Source: https://docs.speakai.co/mcp/tools/automations/list_automations/ · Markdown: https://docs.speakai.co/mcp/tools/automations/list_automations/index.md Use the Speak AI MCP server tool `list_automations` to list automation rules in the workspace, with paging and filters. ## What does it do? List automation rules in the workspace, with paging and filters. ## Parameters `list_automations` takes 7 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `page` | number | No | 0-based page index | | `pageSize` | number | No | Results per page | | `sortBy` | string | No | Sort expression, e.g. "createdAt:desc" | | `query` | string | No | Free-text search over automation names | | `folderIds` | string | No | Comma-separated folder ids to filter by | | `isActive` | boolean | No | Filter by active state | | `runType` | enum: instant, schedule | No | Filter by run type | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_automations`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Run Automations > Manually run one or more automations against one or more media items now (outside the normal trigger). Source: https://docs.speakai.co/mcp/tools/automations/run_automations/ · Markdown: https://docs.speakai.co/mcp/tools/automations/run_automations/index.md Use the Speak AI MCP server tool `run_automations` to manually run one or more automations against one or more media items now (outside the normal trigger). ## What does it do? Manually run one or more automations against one or more media items now (outside the normal trigger). ## Parameters `run_automations` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaIds` | array of string | Yes | Media ids to run the automations against | | `automationIds` | array of string | Yes | Automation ids to run | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `run_automations`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Toggle Automation Status > Toggle an automation rule between active and inactive. Source: https://docs.speakai.co/mcp/tools/automations/toggle_automation_status/ · Markdown: https://docs.speakai.co/mcp/tools/automations/toggle_automation_status/index.md Use the Speak AI MCP server tool `toggle_automation_status` to toggle an automation rule between active and inactive. ## What does it do? Toggle an automation rule between active and inactive. This flips the current state: call `get_automation` first if you need to know which way it will flip. ## Parameters `toggle_automation_status` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationId` | string | Yes | Unique identifier of the automation | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `toggle_automation_status`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Automation > Update an existing automation rule. Source: https://docs.speakai.co/mcp/tools/automations/update_automation/ · Markdown: https://docs.speakai.co/mcp/tools/automations/update_automation/index.md Use the Speak AI MCP server tool `update_automation` to update an existing automation rule. ## What does it do? Update an existing automation rule. This replaces the whole automation (name, trigger, and steps), so fetch the current values with `get_automation` first and pass them all back with your changes. ## Parameters `update_automation` takes 9 parameters, 4 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `automationId` | string | Yes | Unique identifier of the automation | | `name` | string | Yes | Display name for the automation | | `trigger` | object | Yes | Trigger object (the automation's root). Always include triggerSlug. Supported shapes: • Media analyzed in folder(s): \{ type: "folders", triggerSlug: "media_analyzed", folderIds: string[] (min 1) \} • Inbound webhook (receive external payloads): \{ type: "folders", triggerSlug: "inbound_webhook", webhookId? (from `provision_inbound_webhook`; omit to auto-provision a new one on create), childKey? (dot-path narrowing which part of the payload feeds the automation, e.g. "data") \}. The create/update response includes inboundWebhook.inboundUrl: the public URL to POST payloads to. • Custom field updated: \{ type: "folders", triggerSlug: "field_updated", values: string[] (watched custom field ids, min 1), fieldValueMatches?: [\{ fieldId, values: string[] \}] (fire only when the field changes TO one of these values; empty values = any change), fieldMatchLogic?: "AND"\|"OR" (how multiple fieldValueMatches combine, default "OR") \} • Composio app event: \{ type: "composio", provider: "composio", app, triggerSlug, connectedAccountId \} (requires a connected account; may be behind a server flag) Notes: "tags"/"keywords" trigger types are rejected for graph automations. The server stores inbound-webhook triggers with type "webhook" internally: send type "folders" plus the slug as shown above. | | `triggers` | array of object | No | Optional additional "Or" triggers (max 10): the automation runs when ANY of them fires, sharing the same steps. Each entry mirrors the trigger shapes above but cannot be an inbound webhook and carries no webhookId/childKey. Example: [\{ type: "folders", triggerSlug: "field_updated", values: ["\"] \}] | | `steps` | array of object | Yes | Ordered array of graph steps (1-20). Each step is an object: \{ stepId: string (unique within the array), stepType: one of "speak-upload" \| "magic-prompt" \| "translation" \| "filter" \| "condition" \| "notify" \| "outbound-webhook" \| "composio-action", dependsOn?: string[] (stepIds this step runs after), branch?: "true"\|"false" (which outcome of an upstream condition step this step belongs to) \} plus ONE config key matching stepType: • speak-upload -\> speakUpload: \{ sourceMode: "url"\|"file", sourceUrl (required when sourceMode="url"; tokens allowed. If the token resolves to an object, the first http(s) URL inside it is used), folderId (required, unless folderRouting.mode="dynamic" where it becomes the optional fallback), name? (tokens allowed, mixable with static text), language? (language code or token), fieldsMap?: \{ \: "\" \} (writes payload values into Speak custom fields on the uploaded media; values are usually \{\{trigger.payload.\\}\} tokens. Get field ids from `list_fields`), folderRouting?: \{ mode: "static"\|"dynamic", sourceKey (payload key holding the destination folder name, required when dynamic), onNoMatch: "create"\|"default" (create a folder named after the value, or fall back to folderId) \} \} • magic-prompt -\> magicPrompt: \{ prompt (required unless fieldIds given, max 20000), title?, assistantType? ("general"\|"researcher"\|"marketer"\|"sales"\|"recruiter"\|"custom", default "general"), assistantTemplateId? (required if assistantType="custom"), fieldIds?: string[] (max 10. Extract answers into these custom fields) \} • translation -\> translation: \{ targetLanguage: region-qualified locale code, e.g. "es-ES", "fr-FR" (bare codes like "es" are rejected) \} • filter -\> filter: \{ logic: "AND"\|"OR" (default "AND"), rules: [\{ field, op, value? \}] (1-20) \}. The run continues only when the rules match, otherwise it stops silently • condition -\> condition: same \{ logic, rules \} shape as filter, but instead of stopping it routes: downstream steps marked branch:"true"/"false" run according to the outcome • notify -\> notify: \{ channel: "in_app"\|"email"\|"slack", target?, message (required, tokens allowed) \} • outbound-webhook -\> outboundWebhook: \{ url (required, tokens allowed), method? ("GET"\|"POST"\|"PUT"\|"PATCH"\|"DELETE", default "POST"), headers?: \{ \: \ \}, bodyTemplate?: string \| object (tokens allowed) \} • composio-action -\> composio: \{ app, action, connectedAccountId?, argsTemplate? \} (Composio is currently behind a server flag and may be unavailable) Filter/condition rule fields depend on what flows into the step: MEDIA -\> name\|duration\|sourceLanguage\|tags\|transcript\|speakers or a custom field id; INSIGHT -\> answer; inbound-webhook DATA -\> any payload path (e.g. "contact.status"). Ops by field type. Text: eq\|neq\|contains\|ncontains\|startsWith\|exists; number: eq\|neq\|gt\|lt\|exists; array: contains\|ncontains\|exists ("exists" takes no value; gt/lt values are numbers). Token syntax (usable in fields marked 'tokens allowed'): \{\{trigger.payload.\\}\} reads the inbound webhook payload (dot paths and [n] array indices; paths are relative to trigger.childKey when set. Discover valid paths with `get_inbound_webhook` after sending a test payload); \{\{step.\.\\}\} or \{\{step.\.\\}\} reads a previous step's output (speak-upload -\> mediaId, magic-prompt -\> answer, outbound-webhook -\> status/response). | | `description` | string | No | Optional description | | `isActive` | boolean | No | Whether the automation is active (defaults to true) | | `runType` | enum: instant, schedule | No | Run type: "instant" (default, runs on trigger) or "schedule" (cron) | | `schedule` | object | No | Required when runType="schedule": \{ timePeriod: "today"\|"yesterday"\|"last7days"\|"last14days"\|"thisWeek", repeatAt: string \} | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_automation`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Automations](/mcp/tools/automations/) lists the rest of the Automations category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Clips tools in the Speak AI MCP server reference > Highlight clips from any time range. Export PDF, DOCX, SRT, VTT, TXT, CSV. All 4 Clips tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/clips/ · Markdown: https://docs.speakai.co/mcp/tools/clips/index.md The Clips category groups 4 of the Speak AI MCP server's tools. Highlight clips from any time range. Export PDF, DOCX, SRT, VTT, TXT, CSV. ## Which Clips tools does the Speak AI MCP server have? The Speak AI MCP server has 4 Clips tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`create_clip`](/mcp/tools/clips/create_clip/): Create a highlight clip from one or more media files by specifying time ranges. - [`get_clips`](/mcp/tools/clips/get_clips/): List clips, optionally filtered by folder or media files. - [`update_clip`](/mcp/tools/clips/update_clip/): Update a clip's title, description, or tags. - [`delete_clip`](/mcp/tools/clips/delete_clip/): Permanently delete a clip and its associated media file. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Highlight Clip > Create a highlight clip from one or more media files by specifying time ranges. Source: https://docs.speakai.co/mcp/tools/clips/create_clip/ · Markdown: https://docs.speakai.co/mcp/tools/clips/create_clip/index.md Use the Speak AI MCP server tool `create_clip` to create a highlight clip from one or more media files by specifying time ranges. ## What does it do? Create a highlight clip from one or more media files by specifying time ranges. Clips are processed asynchronously (states: queued, processing, completed, failed). Use `get_clips` to check status. Maximum total clip duration is 30 minutes. Use multiple timeRanges to stitch segments from different media files together. ## Parameters `create_clip` takes 6 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `title` | string | Yes | Title for the clip | | `mediaType` | enum | Yes | Output media type | | `timeRanges` | array of object | Yes | Array of time ranges to include in the clip. Each specifies a source media and start/end times. | | `description` | string | No | Description of the clip | | `tags` | array of string | No | Tags for the clip | | `mergeStrategy` | enum: CONCATENATE | No | How to merge multiple segments (default: CONCATENATE) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_clip`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Clips](/mcp/tools/clips/) lists the rest of the Clips category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Clip > Permanently delete a clip and its associated media file. Source: https://docs.speakai.co/mcp/tools/clips/delete_clip/ · Markdown: https://docs.speakai.co/mcp/tools/clips/delete_clip/index.md Use the Speak AI MCP server tool `delete_clip` to permanently delete a clip and its associated media file. ## What does it do? Permanently delete a clip and its associated media file. ## Parameters `delete_clip` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `clipId` | string | Yes | ID of the clip to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_clip`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Clips](/mcp/tools/clips/) lists the rest of the Clips category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Clips > List clips, optionally filtered by folder or media files. Source: https://docs.speakai.co/mcp/tools/clips/get_clips/ · Markdown: https://docs.speakai.co/mcp/tools/clips/get_clips/index.md Use the Speak AI MCP server tool `get_clips` to list clips, optionally filtered by folder or media files. ## What does it do? List clips, optionally filtered by folder or media files. If clipId is provided, returns a single clip with its download URL (when processed). ## Parameters `get_clips` takes 3 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `clipId` | string | No | Get a specific clip by ID | | `folderId` | string | No | Filter clips by folder ID | | `mediaIds` | array of string | No | Filter clips by source media file IDs | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_clips`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Clips](/mcp/tools/clips/) lists the rest of the Clips category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Clip > Update a clip's title, description, or tags. Source: https://docs.speakai.co/mcp/tools/clips/update_clip/ · Markdown: https://docs.speakai.co/mcp/tools/clips/update_clip/index.md Use the Speak AI MCP server tool `update_clip` to update a clip's title, description, or tags. ## What does it do? Update a clip's title, description, or tags. ## Parameters `update_clip` takes 4 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `clipId` | string | Yes | ID of the clip to update | | `title` | string | No | New title | | `description` | string | No | New description | | `tags` | array of string | No | New tags | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_clip`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Clips](/mcp/tools/clips/) lists the rest of the Clips category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Custom fields tools in the Speak AI MCP server reference > Standalone AI-analyzed text notes plus custom fields you can tag any media file with. All 4 Custom fields tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/custom-fields/ · Markdown: https://docs.speakai.co/mcp/tools/custom-fields/index.md The Custom fields category groups 4 of the Speak AI MCP server's tools. Standalone AI-analyzed text notes plus custom fields you can tag any media file with. ## Which Custom fields tools does the Speak AI MCP server have? The Speak AI MCP server has 4 Custom fields tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`list_fields`](/mcp/tools/custom-fields/list_fields/): List all custom fields defined in the workspace. - [`create_field`](/mcp/tools/custom-fields/create_field/): Create a new custom field for categorizing and tagging media. - [`update_field`](/mcp/tools/custom-fields/update_field/): Update a specific custom field by ID. - [`update_multiple_fields`](/mcp/tools/custom-fields/update_multiple_fields/): Set custom field values across media in a single batch operation. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Custom Field > Create a new custom field for categorizing and tagging media. Source: https://docs.speakai.co/mcp/tools/custom-fields/create_field/ · Markdown: https://docs.speakai.co/mcp/tools/custom-fields/create_field/index.md Use the Speak AI MCP server tool `create_field` to create a new custom field for categorizing and tagging media. ## What does it do? Create a new custom field for categorizing and tagging media. ## Parameters `create_field` takes 9 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Display name for the field | | `type` | string | Yes | Field type (text, number, select, etc.) | | `description` | string | No | Optional description for the field | | `prompt` | string | No | AI prompt used to auto-populate the field | | `allowedValues` | array of string | No | Allowed values for select/multi-select field types | | `allowedValuesMode` | enum | No | Whether one or multiple allowed values can be selected | | `otherValues` | boolean | No | Whether values outside allowedValues are permitted | | `notApplicableValues` | string | No | Value(s) treated as not-applicable | | `privacyMode` | string | No | Privacy mode for the field | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_field`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Custom fields](/mcp/tools/custom-fields/) lists the rest of the Custom fields category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Custom Fields > List all custom fields defined in the workspace. Source: https://docs.speakai.co/mcp/tools/custom-fields/list_fields/ · Markdown: https://docs.speakai.co/mcp/tools/custom-fields/list_fields/index.md Use the Speak AI MCP server tool `list_fields` to list all custom fields defined in the workspace. ## What does it do? List all custom fields defined in the workspace. ## Parameters `list_fields` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_fields`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Custom fields](/mcp/tools/custom-fields/) lists the rest of the Custom fields category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Custom Field > Update a specific custom field by ID. Source: https://docs.speakai.co/mcp/tools/custom-fields/update_field/ · Markdown: https://docs.speakai.co/mcp/tools/custom-fields/update_field/index.md Use the Speak AI MCP server tool `update_field` to update a specific custom field by ID. ## What does it do? Update a specific custom field by ID. `name` must always be supplied (the server replaces the field config). ## Parameters `update_field` takes 10 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `id` | string | Yes | Unique identifier of the field | | `name` | string | Yes | Display name for the field | | `type` | string | No | Field type | | `description` | string | No | Optional description for the field | | `prompt` | string | No | AI prompt used to auto-populate the field | | `allowedValues` | array of string | No | Allowed values for select/multi-select field types | | `allowedValuesMode` | enum | No | Whether one or multiple allowed values can be selected | | `otherValues` | boolean | No | Whether values outside allowedValues are permitted | | `notApplicableValues` | string | No | Value(s) treated as not-applicable | | `privacyMode` | string | No | Privacy mode for the field | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_field`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Custom fields](/mcp/tools/custom-fields/) lists the rest of the Custom fields category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Bulk Update Custom Field Values > Set custom field values across media in a single batch operation. Source: https://docs.speakai.co/mcp/tools/custom-fields/update_multiple_fields/ · Markdown: https://docs.speakai.co/mcp/tools/custom-fields/update_multiple_fields/index.md Use the Speak AI MCP server tool `update_multiple_fields` to set custom field values across media in a single batch operation. ## What does it do? Set custom field values across media in a single batch operation. Scope the update with `folderId` (all media in a folder) and/or `mediaIds`. ## Parameters `update_multiple_fields` takes 3 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | No | Apply the field values to all media in this folder | | `mediaIds` | array of string | No | Apply the field values to these specific media files | | `fields` | array | Yes | Array of field id/value pairs to set | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_multiple_fields`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Custom fields](/mcp/tools/custom-fields/) lists the rest of the Custom fields category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Dashboards tools in the Speak AI MCP server reference > Create and manage analytics dashboards, widgets, and public sharing. All 9 Dashboards tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/dashboards/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/index.md The Dashboards category groups 9 of the Speak AI MCP server's tools. Create and manage analytics dashboards, widgets, and public sharing. ## Which Dashboards tools does the Speak AI MCP server have? The Speak AI MCP server has 9 Dashboards tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`list_dashboard_widgets`](/mcp/tools/dashboards/list_dashboard_widgets/): Discovery + how-to helper for building and customizing dashboards. - [`list_dashboards`](/mcp/tools/dashboards/list_dashboards/): List all analytics dashboards the caller can access, including share state and each dashboard's current `revision` (needed for `update_dashboard`). - [`get_dashboard`](/mcp/tools/dashboards/get_dashboard/): Get a single dashboard's full spec: title, description, source, date range, sections, widgets, and the current `revision` (pass that revision back to `update_dashboard`). - [`create_dashboard`](/mcp/tools/dashboards/create_dashboard/): Create an analytics dashboard. - [`update_dashboard`](/mcp/tools/dashboards/update_dashboard/): Update a dashboard. - [`delete_dashboard`](/mcp/tools/dashboards/delete_dashboard/): Soft-delete a dashboard. - [`duplicate_dashboard`](/mcp/tools/dashboards/duplicate_dashboard/): Clone an existing dashboard. - [`share_dashboard`](/mcp/tools/dashboards/share_dashboard/): Enable public sharing for a dashboard and return its share token + embed id. - [`get_dashboard_speakers_insight`](/mcp/tools/dashboards/get_dashboard_speakers_insight/): Compute a speakers breakdown for a given folder scope, date range, and field filters. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Dashboard > Create an analytics dashboard. Source: https://docs.speakai.co/mcp/tools/dashboards/create_dashboard/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/create_dashboard/index.md Use the Speak AI MCP server tool `create_dashboard` to create an analytics dashboard. ## What does it do? Create an analytics dashboard. Only `title` is required: source defaults to the whole workspace and dateRange to last30days. Add widgets by listing their types (the MCP assigns ids and lays them out automatically), scope with source (\{type:"folders",folderIds\} | \{type:"team"\} | \{type:"workspace"\}) and dateRange (\{preset\}), and optionally group widgets into sections. Design guidance: lead with a narrative widget as the first widget; group sections by the QUESTION they answer, not by widget type; don't pad. Every widget earns its place (aim for 4-16 widgets on a full build); if something can't be expressed by the widget catalog, put it in a narrative widget's focus instead of faking it. Call `list_dashboard_widgets` first for the widget catalog, config vocabulary, design rules, and full examples. ## Parameters `create_dashboard` takes 10 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `title` | string | Yes | Dashboard name, max 60 chars (the only required field) | | `description` | string | No | Dashboard description, max 280 chars | | `source` | object | No | Data source: \{type:"folders", folderIds:[...]\} \| \{type:"team"\} \| \{type:"workspace"\} | | `dateRange` | object | No | Date range: strict preset only, no free-form start/end dates | | `sections` | array of object | No | Optional named widget groups (tabs). Each references widgets by their explicit ids; widgets in no section form the implicit Overview group. | | `widgets` | array of object | No | Widgets to place on the dashboard, in order (max 24). The MCP assigns ids and computes a tidy two-per-row grid layout matching the Speak UI unless you pass explicit id/layout. | | `icon` | string | No | Icon identifier | | `assignTo` | array of string | No | User ids, or group ids in the "\ (G)" convention, to share view access with | | `filters` | object | No | Field filters. filters.filterList is an array of \{ fieldName, fieldOperator?, fieldValue?: string[], fieldCondition? \}. Other keys pass through but only filterList is enforced. | | `isDefault` | boolean | No | Make this the company default dashboard | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_dashboard`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Dashboard > Soft-delete a dashboard. Source: https://docs.speakai.co/mcp/tools/dashboards/delete_dashboard/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/delete_dashboard/index.md Use the Speak AI MCP server tool `delete_dashboard` to soft-delete a dashboard. ## What does it do? Soft-delete a dashboard. This also deactivates its public share link. ## Parameters `delete_dashboard` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `dashboardId` | string | Yes | Dashboard business id to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_dashboard`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Duplicate Dashboard > Clone an existing dashboard. Source: https://docs.speakai.co/mcp/tools/dashboards/duplicate_dashboard/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/duplicate_dashboard/index.md Use the Speak AI MCP server tool `duplicate_dashboard` to clone an existing dashboard. ## What does it do? Clone an existing dashboard. The copy gets fresh widget ids, a "\ (copy)" title, cleared sharing, and its revision reset to 0. Ideal for cloning a fully-configured dashboard, then tweaking it via `update_dashboard`. ## Parameters `duplicate_dashboard` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `dashboardId` | string | Yes | Source dashboard business id to clone | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `duplicate_dashboard`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Dashboard Speakers Insight > Compute a speakers breakdown for a given folder scope, date range, and field filters. Source: https://docs.speakai.co/mcp/tools/dashboards/get_dashboard_speakers_insight/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/get_dashboard_speakers_insight/index.md Use the Speak AI MCP server tool `get_dashboard_speakers_insight` to compute a speakers breakdown for a given folder scope, date range, and field filters. ## What does it do? Compute a speakers breakdown for a given folder scope, date range, and field filters. Standalone analytics: does not require a dashboard to exist. ## Parameters `get_dashboard_speakers_insight` takes 4 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderScope` | array of string | No | Folder ids to scope to | | `startDate` | string | No | ISO start date | | `endDate` | string | No | ISO end date | | `filterList` | array | No | Field filter rules | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_dashboard_speakers_insight`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Dashboard > Get a single dashboard's full spec: title, description, source, date range, sections, widgets, and the current `revision` (pass that revision back to update_dashboard). Source: https://docs.speakai.co/mcp/tools/dashboards/get_dashboard/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/get_dashboard/index.md Use the Speak AI MCP server tool `get_dashboard` to get a single dashboard's full spec: title, description, source, date range, sections, widgets, and the current `revision` (pass that revision back to `update_dashboard`). ## What does it do? Get a single dashboard's full spec: title, description, source, date range, sections, widgets, and the current `revision` (pass that revision back to `update_dashboard`). ## Parameters `get_dashboard` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `dashboardId` | string | Yes | Dashboard business id (the dashboardId field from `list_dashboards`, not the Mongo _id) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_dashboard`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Dashboard Widgets > Discovery + how-to helper for building and customizing dashboards. Source: https://docs.speakai.co/mcp/tools/dashboards/list_dashboard_widgets/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/list_dashboard_widgets/index.md `list_dashboard_widgets` is a tool in the Speak AI MCP server. Discovery + how-to helper for building and customizing dashboards. ## What does it do? Discovery + how-to helper for building and customizing dashboards. Returns every widget type with what it shows and the exact strict `config` shape it accepts, the shared vocabulary (metric grammar, groupBy, per-widget binding, filters, thresholds, sources, date-range presets, sections), design rules for composing a dashboard that reads well, two complete worked example payloads, and tips for managing dashboards. Call this before `create_dashboard` / `update_dashboard`. ## Parameters `list_dashboard_widgets` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_dashboard_widgets`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Dashboards > List all analytics dashboards the caller can access, including share state and each dashboard's current `revision` (needed for update_dashboard). Source: https://docs.speakai.co/mcp/tools/dashboards/list_dashboards/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/list_dashboards/index.md Use the Speak AI MCP server tool `list_dashboards` to list all analytics dashboards the caller can access, including share state and each dashboard's current `revision` (needed for `update_dashboard`). ## What does it do? List all analytics dashboards the caller can access, including share state and each dashboard's current `revision` (needed for `update_dashboard`). ## Parameters `list_dashboards` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_dashboards`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Share Dashboard > Enable public sharing for a dashboard and return its share token + embed id. Source: https://docs.speakai.co/mcp/tools/dashboards/share_dashboard/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/share_dashboard/index.md Use the Speak AI MCP server tool `share_dashboard` to enable public sharing for a dashboard and return its share token + embed id. ## What does it do? Enable public sharing for a dashboard and return its share token + embed id. WARNING: by default the public link resolves with no passphrase, so anyone with the token can view the dashboard data until an owner sets one. ## Parameters `share_dashboard` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `dashboardId` | string | Yes | Dashboard business id to share | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `share_dashboard`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Dashboard > Update a dashboard. Source: https://docs.speakai.co/mcp/tools/dashboards/update_dashboard/ · Markdown: https://docs.speakai.co/mcp/tools/dashboards/update_dashboard/index.md Use the Speak AI MCP server tool `update_dashboard` to update a dashboard. ## What does it do? Update a dashboard. Two modes. (1) Metadata-only: pass just icon/assignTo/filters/isDefault. No spec fields, no revision needed. (2) Spec update: pass the FULL spec (title, source, dateRange, sections, widgets) plus `revision`. Widgets and sections are REPLACED, not merged, so call `get_dashboard` first and resend everything you want to keep. `revision` is the optimistic-concurrency token from `get_dashboard`/`list_dashboards`: the server accepts the write only if it still matches, then increments it. A 409 conflict means another writer saved first: re-fetch with `get_dashboard`, rebuild your changes on the fresh spec, and retry with the new revision. ## Parameters `update_dashboard` takes 12 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `dashboardId` | string | Yes | Dashboard business id | | `title` | string | No | Dashboard name: required (with revision) when updating the spec | | `revision` | number | No | The revision loaded from `get_dashboard`. Required for spec updates; mismatch returns a 409 conflict. | | `description` | string | No | Dashboard description, max 280 chars | | `source` | object | No | Data source: \{type:"folders", folderIds:[...]\} \| \{type:"team"\} \| \{type:"workspace"\} | | `dateRange` | object | No | Date range: strict preset only, no free-form start/end dates | | `sections` | array of object | No | Optional named widget groups (tabs). Each references widgets by their explicit ids; widgets in no section form the implicit Overview group. | | `widgets` | array of object | No | Widgets to place on the dashboard, in order (max 24). The MCP assigns ids and computes a tidy two-per-row grid layout matching the Speak UI unless you pass explicit id/layout. | | `icon` | string | No | Icon identifier | | `assignTo` | array of string | No | User ids, or group ids in the "\ (G)" convention, to share view access with | | `filters` | object | No | Field filters. filters.filterList is an array of \{ fieldName, fieldOperator?, fieldValue?: string[], fieldCondition? \}. Other keys pass through but only filterList is enforced. | | `isDefault` | boolean | No | Make this the company default dashboard | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_dashboard`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Dashboards](/mcp/tools/dashboards/) lists the rest of the Dashboards category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Embed players tools in the Speak AI MCP server reference > Embeddable player widgets for media on your own website. All 4 Embed players tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/embed-other/ · Markdown: https://docs.speakai.co/mcp/tools/embed-other/index.md The Embed players category groups 4 of the Speak AI MCP server's tools. Embeddable player widgets for media on your own website. ## Which Embed players tools does the Speak AI MCP server have? The Speak AI MCP server has 4 Embed players tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`create_embed`](/mcp/tools/embed-other/create_embed/): Create an embeddable player/transcript widget for a media file or a set of folders. - [`update_embed`](/mcp/tools/embed-other/update_embed/): Update an existing embed widget: appearance/feature toggles via `meta`, plus scope and privacy. - [`check_embed`](/mcp/tools/embed-other/check_embed/): Check if an embed exists for a media file and retrieve its configuration. - [`get_embed_iframe_url`](/mcp/tools/embed-other/get_embed_iframe_url/): Get the iframe URL for embedding a media player/transcript on a webpage. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Check Embed Exists > Check if an embed exists for a media file and retrieve its configuration. Source: https://docs.speakai.co/mcp/tools/embed-other/check_embed/ · Markdown: https://docs.speakai.co/mcp/tools/embed-other/check_embed/index.md Use the Speak AI MCP server tool `check_embed` to check if an embed exists for a media file and retrieve its configuration. ## What does it do? Check if an embed exists for a media file and retrieve its configuration. ## Parameters `check_embed` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `check_embed`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Embed players](/mcp/tools/embed-other/) lists the rest of the Embed players category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Embed Widget > Create an embeddable player/transcript widget for a media file or a set of folders. Source: https://docs.speakai.co/mcp/tools/embed-other/create_embed/ · Markdown: https://docs.speakai.co/mcp/tools/embed-other/create_embed/index.md Use the Speak AI MCP server tool `create_embed` to create an embeddable player/transcript widget for a media file or a set of folders. ## What does it do? Create an embeddable player/transcript widget for a media file or a set of folders. Provide `mediaId` for a single-media embed, or `folderIds` for a folder/library embed. ## Parameters `create_embed` takes 2 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | No | Media file to embed (for a single-media embed) | | `folderIds` | array of string | No | Folder IDs to embed (for a folder/library embed) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_embed`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Embed players](/mcp/tools/embed-other/) lists the rest of the Embed players category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Embed Iframe URL > Get the iframe URL for embedding a media player/transcript on a webpage. Source: https://docs.speakai.co/mcp/tools/embed-other/get_embed_iframe_url/ · Markdown: https://docs.speakai.co/mcp/tools/embed-other/get_embed_iframe_url/index.md Use the Speak AI MCP server tool `get_embed_iframe_url` to get the iframe URL for embedding a media player/transcript on a webpage. ## What does it do? Get the iframe URL for embedding a media player/transcript on a webpage. ## Parameters `get_embed_iframe_url` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_embed_iframe_url`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Embed players](/mcp/tools/embed-other/) lists the rest of the Embed players category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Embed Widget > Update an existing embed widget: appearance/feature toggles via `meta`, plus scope and privacy. Source: https://docs.speakai.co/mcp/tools/embed-other/update_embed/ · Markdown: https://docs.speakai.co/mcp/tools/embed-other/update_embed/index.md Use the Speak AI MCP server tool `update_embed` to update an existing embed widget: appearance/feature toggles via `meta`, plus scope and privacy. ## What does it do? Update an existing embed widget: appearance/feature toggles via `meta`, plus scope and privacy. ## Parameters `update_embed` takes 6 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `embedId` | string | Yes | Unique identifier of the embed | | `mediaId` | string | No | Media file the embed points to | | `folderIds` | array of string | No | Folder IDs the embed covers | | `privacyMode` | string | No | Privacy mode for the embed | | `embedType` | string | No | Embed type | | `meta` | object | No | Embed appearance & feature toggles: \{ backgroundImg, logo, primaryColor, titleColor, chatWelcomeMessage, assistantTemplateId, isTitle, isDescription, isRemarks, isDataVizDownloadable, isSEOIndexing, isPromptAsk, isPromptHistory, isMediaExport, callToActionButtons:[\{ url, label \}], features:[\{ name, isActive, isCustom? \}] \} | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_embed`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Embed players](/mcp/tools/embed-other/) lists the rest of the Embed players category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Exports tools in the Speak AI MCP server reference > Highlight clips from any time range. Export PDF, DOCX, SRT, VTT, TXT, CSV. All 2 Exports tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/exports/ · Markdown: https://docs.speakai.co/mcp/tools/exports/index.md The Exports category groups 2 of the Speak AI MCP server's tools. Highlight clips from any time range. Export PDF, DOCX, SRT, VTT, TXT, CSV. ## Which Exports tools does the Speak AI MCP server have? The Speak AI MCP server has 2 Exports tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`export_media`](/mcp/tools/exports/export_media/): Export a media file's transcript or insights in various formats (pdf, docx, srt, vtt, txt, csv). - [`export_multiple_media`](/mcp/tools/exports/export_multiple_media/): Export multiple media files at once, optionally merged into a single file. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Export Media Transcript > Export a media file's transcript or insights in various formats (pdf, docx, srt, vtt, txt, csv). Source: https://docs.speakai.co/mcp/tools/exports/export_media/ · Markdown: https://docs.speakai.co/mcp/tools/exports/export_media/index.md Use the Speak AI MCP server tool `export_media` to export a media file's transcript or insights in various formats (pdf, docx, srt, vtt, txt, csv). ## What does it do? Export a media file's transcript or insights in various formats (pdf, docx, srt, vtt, txt, csv). ## Parameters `export_media` takes 8 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | | `fileType` | enum | Yes | Desired export format | | `isSpeakerNames` | boolean | No | Include speaker names in export | | `isSpeakerEmail` | boolean | No | Include speaker emails in export | | `isTimeStamps` | boolean | No | Include timestamps in export | | `isInsightVisualized` | boolean | No | Include insight visualizations | | `isRedacted` | boolean | No | Apply PII redaction to export | | `redactedCategories` | array of string | No | Specific categories to redact | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `export_media`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Exports](/mcp/tools/exports/) lists the rest of the Exports category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Export Multiple Media Files > Export multiple media files at once, optionally merged into a single file. Source: https://docs.speakai.co/mcp/tools/exports/export_multiple_media/ · Markdown: https://docs.speakai.co/mcp/tools/exports/export_multiple_media/index.md Use the Speak AI MCP server tool `export_multiple_media` to export multiple media files at once, optionally merged into a single file. ## What does it do? Export multiple media files at once, optionally merged into a single file. ## Parameters `export_multiple_media` takes 9 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaIds` | array of string | Yes | Array of media IDs to export | | `fileType` | enum | Yes | Desired export format | | `isSpeakerNames` | boolean | No | Include speaker names in export | | `isSpeakerEmail` | boolean | No | Include speaker emails in export | | `isTimeStamps` | boolean | No | Include timestamps in export | | `isInsightVisualized` | boolean | No | Include insight visualizations | | `isRedacted` | boolean | No | Apply PII redaction to export | | `isMerged` | boolean | No | Merge all exports into a single file | | `folderId` | string | No | Folder ID for the merged export | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `export_multiple_media`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Exports](/mcp/tools/exports/) lists the rest of the Exports category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Folders & views tools in the Speak AI MCP server reference > Create folders, save filtered views, bulk move files, share read-only collections. All 11 Folders & views tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/folders-views/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/index.md The Folders & views category groups 11 of the Speak AI MCP server's tools. Create folders, save filtered views, bulk move files, share read-only collections. ## Which Folders & views tools does the Speak AI MCP server have? The Speak AI MCP server has 11 Folders & views tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`list_folders`](/mcp/tools/folders-views/list_folders/): List all folders in the workspace with pagination and sorting. - [`get_folder_info`](/mcp/tools/folders-views/get_folder_info/): Get detailed information about a specific folder including its contents. - [`create_folder`](/mcp/tools/folders-views/create_folder/): Create a new folder in the workspace. - [`clone_folder`](/mcp/tools/folders-views/clone_folder/): Duplicate an existing folder and all of its contents. - [`update_folder`](/mcp/tools/folders-views/update_folder/): Update a folder. - [`delete_folder`](/mcp/tools/folders-views/delete_folder/): Permanently delete a folder. - [`get_all_folder_views`](/mcp/tools/folders-views/get_all_folder_views/): Retrieve all saved views across all folders. - [`get_folder_views`](/mcp/tools/folders-views/get_folder_views/): Retrieve all saved views for a specific folder. - [`create_folder_view`](/mcp/tools/folders-views/create_folder_view/): Create a new saved view for a folder with a custom set of display columns. - [`update_folder_view`](/mcp/tools/folders-views/update_folder_view/): Update an existing saved view. - [`clone_folder_view`](/mcp/tools/folders-views/clone_folder_view/): Duplicate an existing folder view into a target folder. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Clone Folder View > Duplicate an existing folder view into a target folder. Source: https://docs.speakai.co/mcp/tools/folders-views/clone_folder_view/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/clone_folder_view/index.md Use the Speak AI MCP server tool `clone_folder_view` to duplicate an existing folder view into a target folder. ## What does it do? Duplicate an existing folder view into a target folder. ## Parameters `clone_folder_view` takes 5 parameters, 4 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `sourceFolderId` | string | Yes | Folder that currently holds the view | | `targetFolderId` | string | Yes | Folder to copy the view into (must differ from sourceFolderId) | | `viewId` | string | Yes | Unique identifier of the view to clone | | `name` | string | Yes | Display name for the cloned view | | `isDefault` | boolean | No | Whether the cloned view becomes the target folder's default | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `clone_folder_view`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Clone Folder > Duplicate an existing folder and all of its contents. Source: https://docs.speakai.co/mcp/tools/folders-views/clone_folder/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/clone_folder/index.md Use the Speak AI MCP server tool `clone_folder` to duplicate an existing folder and all of its contents. ## What does it do? Duplicate an existing folder and all of its contents. ## Parameters `clone_folder` takes 5 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | ID of the folder to clone | | `name` | string | No | Name for the cloned folder | | `description` | string | No | Description for the cloned folder | | `assignTo` | array of string | No | User IDs to assign the cloned folder to | | `isSaveDefaultView` | boolean | No | Whether to copy the source folder's default view | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `clone_folder`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Folder View > Create a new saved view for a folder with a custom set of display columns. Source: https://docs.speakai.co/mcp/tools/folders-views/create_folder_view/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/create_folder_view/index.md Use the Speak AI MCP server tool `create_folder_view` to create a new saved view for a folder with a custom set of display columns. ## What does it do? Create a new saved view for a folder with a custom set of display columns. ## Parameters `create_folder_view` takes 4 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Unique identifier of the folder | | `name` | string | Yes | Display name for the view | | `isDefault` | boolean | No | Whether this view is the folder's default view | | `columns` | array | Yes | Ordered list of columns shown in the view | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_folder_view`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Folder > Create a new folder in the workspace. Source: https://docs.speakai.co/mcp/tools/folders-views/create_folder/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/create_folder/index.md Use the Speak AI MCP server tool `create_folder` to create a new folder in the workspace. ## What does it do? Create a new folder in the workspace. ## Parameters `create_folder` takes 2 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Display name for the new folder | | `description` | string | No | Optional folder description | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_folder`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Folder > Permanently delete a folder. Source: https://docs.speakai.co/mcp/tools/folders-views/delete_folder/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/delete_folder/index.md Use the Speak AI MCP server tool `delete_folder` to permanently delete a folder. ## What does it do? Permanently delete a folder. Media within the folder will be moved, not deleted. ## Parameters `delete_folder` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Unique identifier of the folder to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_folder`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get All Folder Views > Retrieve all saved views across all folders. Source: https://docs.speakai.co/mcp/tools/folders-views/get_all_folder_views/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/get_all_folder_views/index.md Use the Speak AI MCP server tool `get_all_folder_views` to retrieve all saved views across all folders. ## What does it do? Retrieve all saved views across all folders. ## Parameters `get_all_folder_views` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_all_folder_views`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Folder Info > Get detailed information about a specific folder including its contents. Source: https://docs.speakai.co/mcp/tools/folders-views/get_folder_info/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/get_folder_info/index.md Use the Speak AI MCP server tool `get_folder_info` to get detailed information about a specific folder including its contents. ## What does it do? Get detailed information about a specific folder including its contents. ## Parameters `get_folder_info` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Unique identifier of the folder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_folder_info`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Folder Views > Retrieve all saved views for a specific folder. Source: https://docs.speakai.co/mcp/tools/folders-views/get_folder_views/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/get_folder_views/index.md Use the Speak AI MCP server tool `get_folder_views` to retrieve all saved views for a specific folder. ## What does it do? Retrieve all saved views for a specific folder. ## Parameters `get_folder_views` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Unique identifier of the folder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_folder_views`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Folders > List all folders in the workspace with pagination and sorting. Source: https://docs.speakai.co/mcp/tools/folders-views/list_folders/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/list_folders/index.md Use the Speak AI MCP server tool `list_folders` to list all folders in the workspace with pagination and sorting. ## What does it do? List all folders in the workspace with pagination and sorting. ## Parameters `list_folders` takes 3 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `page` | number | No | Page number (0-based, default: 0) | | `pageSize` | number | No | Results per page (default: 20, max: 500) | | `sortBy` | string | No | Sort field and direction, e.g. "createdAt:desc" | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_folders`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Folder View > Update an existing saved view. Source: https://docs.speakai.co/mcp/tools/folders-views/update_folder_view/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/update_folder_view/index.md Use the Speak AI MCP server tool `update_folder_view` to update an existing saved view. ## What does it do? Update an existing saved view. Replaces the whole view, so `name`, `isDefault` and `columns` must all be supplied. ## Parameters `update_folder_view` takes 5 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Unique identifier of the folder | | `viewId` | string | Yes | Unique identifier of the view to update | | `name` | string | Yes | Display name for the view | | `isDefault` | boolean | Yes | Whether this view is the folder's default view | | `columns` | array | Yes | Ordered list of columns shown in the view | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_folder_view`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Folder > Update a folder. Source: https://docs.speakai.co/mcp/tools/folders-views/update_folder/ · Markdown: https://docs.speakai.co/mcp/tools/folders-views/update_folder/index.md Use the Speak AI MCP server tool `update_folder` to update a folder. ## What does it do? Update a folder. `name` must always be supplied (the server replaces the folder config). ## Parameters `update_folder` takes 3 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Unique identifier of the folder | | `name` | string | Yes | Display name for the folder | | `description` | string | No | Optional folder description | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_folder`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Folders & views](/mcp/tools/folders-views/) lists the rest of the Folders & views category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Ask AI Chat tools in the Speak AI MCP server reference > Run AI prompts across one file, a folder, or your whole workspace. Save favorites. All 12 Ask AI Chat tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/magic-prompt/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/index.md The Ask AI Chat category groups 12 of the Speak AI MCP server's tools. Run AI prompts across one file, a folder, or your whole workspace. Save favorites. ## Which Ask AI Chat tools does the Speak AI MCP server have? The Speak AI MCP server has 12 Ask AI Chat tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`ask_ai_chat`](/mcp/tools/magic-prompt/ask_ai_chat/): Ask an AI-powered question about your media using Speak AI's AI Chat. - [`retry_ai_chat`](/mcp/tools/magic-prompt/retry_ai_chat/): Retry a failed or incomplete AI Chat response. - [`get_chat_history`](/mcp/tools/magic-prompt/get_chat_history/): Get a list of recent AI Chat conversations. - [`get_chat_messages`](/mcp/tools/magic-prompt/get_chat_messages/): Get full message history for conversations. - [`delete_chat_message`](/mcp/tools/magic-prompt/delete_chat_message/): Delete a specific chat message from conversation history. - [`list_prompts`](/mcp/tools/magic-prompt/list_prompts/): List all available AI Chat templates. - [`get_favorite_prompts`](/mcp/tools/magic-prompt/get_favorite_prompts/): Get all prompts and answers that have been marked as favorites. - [`toggle_prompt_favorite`](/mcp/tools/magic-prompt/toggle_prompt_favorite/): Mark or unmark a chat message as a favorite for easy retrieval later. - [`update_chat_title`](/mcp/tools/magic-prompt/update_chat_title/): Update the title of a chat conversation for easier identification in history. - [`submit_chat_feedback`](/mcp/tools/magic-prompt/submit_chat_feedback/): Submit feedback on a chat response (thumbs up/down). - [`get_chat_statistics`](/mcp/tools/magic-prompt/get_chat_statistics/): Get usage statistics for AI Chat / chat. - [`export_chat_answer`](/mcp/tools/magic-prompt/export_chat_answer/): Export a specific AI Chat answer. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Ask AI Chat > Ask an AI-powered question about your media using Speak AI's AI Chat. Source: https://docs.speakai.co/mcp/tools/magic-prompt/ask_ai_chat/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/ask_ai_chat/index.md Use the Speak AI MCP server tool `ask_ai_chat` to ask an AI-powered question about your media using Speak AI's AI Chat. ## What does it do? Ask an AI-powered question about your media using Speak AI's AI Chat. Supports querying a single file, multiple files, entire folders, or your whole workspace. Pass mediaIds for specific files, folderIds for entire folders, or omit both to search across all media. Use assistantType to get specialized responses (e.g., 'researcher' for academic analysis, 'sales' for deal insights). To continue a conversation, pass the promptId from a previous response. Returns a promptId: save it to continue the conversation with follow-up questions. ## Parameters `ask_ai_chat` takes 15 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `prompt` | string | Yes | The question or prompt to ask about the media | | `mediaIds` | array of string | No | Array of media IDs to query. Omit along with folderIds to search across all media in your workspace. | | `folderIds` | array of string | No | Array of folder IDs to scope the query to. Omit along with mediaIds to search across all media. | | `folderId` | string | No | Single folder ID to scope the query to. Use folderIds for multiple folders. | | `assistantType` | enum | No | Assistant persona: 'general' (default), 'researcher' (academic), 'marketer' (content), 'sales' (deals), 'recruiter' (hiring). Use 'custom' with assistantTemplateId. | | `assistantTemplateId` | string | No | Required when assistantType is 'custom'. ID of a custom assistant template from `list_prompts`. | | `promptId` | string | No | ID of an existing conversation to continue. Pass this to maintain chat context across multiple questions. | | `speakers` | array of string | No | Filter to specific speaker IDs from the transcript | | `tags` | array of string | No | Filter media by tags | | `startDate` | string | No | Start date for date range filter (ISO 8601, e.g., '2025-01-01') | | `endDate` | string | No | End date for date range filter (ISO 8601, e.g., '2025-03-31') | | `isIndividualPrompt` | boolean | No | When true, processes each media file separately instead of combining context. Useful for comparing responses across files. | | `fieldId` | string | No | Scope the prompt to a single custom field | | `fieldIds` | array of string | No | Scope the prompt to multiple custom fields (max 10) | | `filters` | object | No | Advanced filter object to scope which media the prompt runs over | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `ask_ai_chat`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Chat Message > Delete a specific chat message from conversation history. Source: https://docs.speakai.co/mcp/tools/magic-prompt/delete_chat_message/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/delete_chat_message/index.md Use the Speak AI MCP server tool `delete_chat_message` to delete a specific chat message from conversation history. ## What does it do? Delete a specific chat message from conversation history. ## Parameters `delete_chat_message` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | Yes | ID of the message to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_chat_message`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Export Chat Answer > Export a specific AI Chat answer. Source: https://docs.speakai.co/mcp/tools/magic-prompt/export_chat_answer/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/export_chat_answer/index.md Use the Speak AI MCP server tool `export_chat_answer` to export a specific AI Chat answer. ## What does it do? Export a specific AI Chat answer. Useful for saving AI-generated summaries, reports, or analysis results. ## Parameters `export_chat_answer` takes 3 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | Yes | ID of the conversation to export | | `messageId` | string | Yes | ID of the specific message/answer to export | | `fileType` | enum: txt, docx, pdf, md | Yes | Export file format | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `export_chat_answer`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Chat History > Get a list of recent AI Chat conversations. Source: https://docs.speakai.co/mcp/tools/magic-prompt/get_chat_history/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/get_chat_history/index.md Use the Speak AI MCP server tool `get_chat_history` to get a list of recent AI Chat conversations. ## What does it do? Get a list of recent AI Chat conversations. Returns conversation summaries with promptIds that can be used to continue conversations via `ask_ai_chat` or retrieve full messages via `get_chat_messages`. ## Parameters `get_chat_history` takes 1 parameter, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `limit` | number | No | Number of recent conversations to return (default: 10) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_chat_history`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Chat Messages > Get full message history for conversations. Source: https://docs.speakai.co/mcp/tools/magic-prompt/get_chat_messages/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/get_chat_messages/index.md Use the Speak AI MCP server tool `get_chat_messages` to get full message history for conversations. ## What does it do? Get full message history for conversations. Can filter by promptId for a specific conversation, by media/folder, or search across all chat messages. Returns questions, answers, references, and metadata. ## Parameters `get_chat_messages` takes 6 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | No | Filter to a specific conversation by its ID | | `folderId` | string | No | Filter messages by folder ID | | `mediaIds` | string | No | Filter by media IDs (comma-separated) | | `query` | string | No | Search text in prompts and answers | | `page` | number | No | Page number for pagination (0-based, default: 0) | | `pageSize` | number | No | Results per page (default: 25, max: 500) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_chat_messages`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Chat Statistics > Get usage statistics for AI Chat / chat. Source: https://docs.speakai.co/mcp/tools/magic-prompt/get_chat_statistics/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/get_chat_statistics/index.md Use the Speak AI MCP server tool `get_chat_statistics` to get usage statistics for AI Chat / chat. ## What does it do? Get usage statistics for AI Chat / chat. Returns metrics on prompt usage, optionally filtered by date range. ## Parameters `get_chat_statistics` takes 2 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `startDate` | string | No | Start date for stats (ISO 8601) | | `endDate` | string | No | End date for stats (ISO 8601) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_chat_statistics`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Favorite Prompts > Get all prompts and answers that have been marked as favorites. Source: https://docs.speakai.co/mcp/tools/magic-prompt/get_favorite_prompts/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/get_favorite_prompts/index.md Use the Speak AI MCP server tool `get_favorite_prompts` to get all prompts and answers that have been marked as favorites. ## What does it do? Get all prompts and answers that have been marked as favorites. Useful for finding saved insights and important AI-generated analysis. ## Parameters `get_favorite_prompts` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_favorite_prompts`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Prompt Templates > List all available AI Chat templates. Source: https://docs.speakai.co/mcp/tools/magic-prompt/list_prompts/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/list_prompts/index.md Use the Speak AI MCP server tool `list_prompts` to list all available AI Chat templates. ## What does it do? List all available AI Chat templates. Use template IDs with `ask_ai_chat`'s assistantTemplateId parameter when using assistantType 'custom'. ## Parameters `list_prompts` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_prompts`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Retry AI Chat > Retry a failed or incomplete AI Chat response. Source: https://docs.speakai.co/mcp/tools/magic-prompt/retry_ai_chat/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/retry_ai_chat/index.md Use the Speak AI MCP server tool `retry_ai_chat` to retry a failed or incomplete AI Chat response. ## What does it do? Retry a failed or incomplete AI Chat response. Use when a previous `ask_ai_chat` call returned an error or incomplete answer. ## Parameters `retry_ai_chat` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | Yes | ID of the conversation containing the failed message | | `messageId` | string | Yes | ID of the specific message to retry | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `retry_ai_chat`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Submit Chat Feedback > Submit feedback on a chat response (thumbs up/down). Source: https://docs.speakai.co/mcp/tools/magic-prompt/submit_chat_feedback/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/submit_chat_feedback/index.md Use the Speak AI MCP server tool `submit_chat_feedback` to submit feedback on a chat response (thumbs up/down). ## What does it do? Submit feedback on a chat response (thumbs up/down). Helps improve AI answer quality. ## Parameters `submit_chat_feedback` takes 4 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | Yes | ID of the conversation | | `messageId` | string | Yes | ID of the message to rate | | `score` | union | Yes | Feedback score: 1 for thumbs up, -1 for thumbs down | | `reason` | string | No | Optional explanation for the feedback | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `submit_chat_feedback`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Toggle Prompt Favorite > Mark or unmark a chat message as a favorite for easy retrieval later. Source: https://docs.speakai.co/mcp/tools/magic-prompt/toggle_prompt_favorite/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/toggle_prompt_favorite/index.md Use the Speak AI MCP server tool `toggle_prompt_favorite` to mark or unmark a chat message as a favorite for easy retrieval later. ## What does it do? Mark or unmark a chat message as a favorite for easy retrieval later. ## Parameters `toggle_prompt_favorite` takes 3 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | Yes | ID of the conversation | | `messageId` | string | Yes | ID of the specific message to favorite/unfavorite | | `isFavorite` | boolean | Yes | true to mark as favorite, false to remove | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `toggle_prompt_favorite`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Rename Chat > Update the title of a chat conversation for easier identification in history. Source: https://docs.speakai.co/mcp/tools/magic-prompt/update_chat_title/ · Markdown: https://docs.speakai.co/mcp/tools/magic-prompt/update_chat_title/index.md Use the Speak AI MCP server tool `update_chat_title` to update the title of a chat conversation for easier identification in history. ## What does it do? Update the title of a chat conversation for easier identification in history. ## Parameters `update_chat_title` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `promptId` | string | Yes | ID of the conversation to rename | | `title` | string | Yes | New title for the conversation | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_chat_title`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Ask AI Chat](/mcp/tools/magic-prompt/) lists the rest of the Ask AI Chat category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Media library tools in the Speak AI MCP server reference > Upload audio or video, fetch transcripts, get AI insights, organize, favorite, export. All 17 Media library tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/media/ · Markdown: https://docs.speakai.co/mcp/tools/media/index.md The Media library category groups 17 of the Speak AI MCP server's tools. Upload audio or video, fetch transcripts, get AI insights, organize, favorite, export. ## Which Media library tools does the Speak AI MCP server have? The Speak AI MCP server has 17 Media library tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`update_transcription`](/mcp/tools/media/update_transcription/): Edit the official transcript text of a single media file by finding and replacing text. - [`get_signed_upload_url`](/mcp/tools/media/get_signed_upload_url/): Get a pre-signed S3 URL for direct file upload to Speak AI storage. - [`upload_media`](/mcp/tools/media/upload_media/): Upload media from a URL: a direct/public file URL, a pre-signed S3 URL, or a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar) which Speak resolves to the underlying media automatically. - [`upload_local_file`](/mcp/tools/media/upload_local_file/): Upload a local file to Speak AI for transcription and analysis. - [`upload_and_analyze`](/mcp/tools/media/upload_and_analyze/): Upload and transcribe media from a URL: a direct/public file URL, OR a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar), which Speak resolves to the underlying media automatically. - [`list_media`](/mcp/tools/media/list_media/): List and search media files in the workspace with filtering, pagination, and sorting. - [`get_media_insights`](/mcp/tools/media/get_media_insights/): Retrieve AI-generated insights for a processed media file: topics, sentiment, keywords, action items, summaries, and more. - [`get_transcript`](/mcp/tools/media/get_transcript/): Retrieve the full transcript for a media file with speaker labels and timestamps. - [`get_captions`](/mcp/tools/media/get_captions/): Get captions for a media file. - [`update_transcript_speakers`](/mcp/tools/media/update_transcript_speakers/): Update or rename speaker labels in a media transcript. - [`bulk_update_transcript_speakers`](/mcp/tools/media/bulk_update_transcript_speakers/): Update or rename speaker labels across multiple media files in a single operation. - [`get_media_status`](/mcp/tools/media/get_media_status/): Check the processing status of a media file. - [`update_media_metadata`](/mcp/tools/media/update_media_metadata/): Update metadata fields (name, description, tags, status) for an existing media file. - [`delete_media`](/mcp/tools/media/delete_media/): Permanently delete a media file and all associated transcripts and insights. - [`toggle_media_favorite`](/mcp/tools/media/toggle_media_favorite/): Mark or unmark media files as favorites for quick access. - [`reanalyze_media`](/mcp/tools/media/reanalyze_media/): Re-run AI analysis on a media file using the latest models. - [`bulk_move_media`](/mcp/tools/media/bulk_move_media/): Move multiple media files to a folder in a single operation. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Bulk Move Media Files > Move multiple media files to a folder in a single operation. Source: https://docs.speakai.co/mcp/tools/media/bulk_move_media/ · Markdown: https://docs.speakai.co/mcp/tools/media/bulk_move_media/index.md Use the Speak AI MCP server tool `bulk_move_media` to move multiple media files to a folder in a single operation. ## What does it do? Move multiple media files to a folder in a single operation. Use this for batch reorganization instead of updating media one by one. ## Parameters `bulk_move_media` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `folderId` | string | Yes | Target folder ID to move media into | | `mediaIds` | array of string | Yes | Array of media IDs to move | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `bulk_move_media`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Bulk Rename Speakers Across Files > Update or rename speaker labels across multiple media files in a single operation. Source: https://docs.speakai.co/mcp/tools/media/bulk_update_transcript_speakers/ · Markdown: https://docs.speakai.co/mcp/tools/media/bulk_update_transcript_speakers/index.md Use the Speak AI MCP server tool `bulk_update_transcript_speakers` to update or rename speaker labels across multiple media files in a single operation. ## What does it do? Update or rename speaker labels across multiple media files in a single operation. Applies the same speaker mappings to every specified media file. Use this instead of calling `update_transcript_speakers` repeatedly when renaming speakers across a project or folder. ## Parameters `bulk_update_transcript_speakers` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaIds` | array of string | Yes | Array of media IDs to update speakers for (max 500 per call) | | `speakers` | array of object | Yes | Speaker mappings applied to every file in mediaIds. Speakers not listed, and files with no matching speaker, are left untouched. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `bulk_update_transcript_speakers`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Media File > Permanently delete a media file and all associated transcripts and insights. Source: https://docs.speakai.co/mcp/tools/media/delete_media/ · Markdown: https://docs.speakai.co/mcp/tools/media/delete_media/index.md Use the Speak AI MCP server tool `delete_media` to permanently delete a media file and all associated transcripts and insights. ## What does it do? Permanently delete a media file and all associated transcripts and insights. ## Parameters `delete_media` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_media`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Captions > Get captions for a media file. Source: https://docs.speakai.co/mcp/tools/media/get_captions/ · Markdown: https://docs.speakai.co/mcp/tools/media/get_captions/index.md Use the Speak AI MCP server tool `get_captions` to get captions for a media file. ## What does it do? Get captions for a media file. Captions are separate from full transcripts and are formatted for display/subtitles. ## Parameters `get_captions` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_captions`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Media Insights > Retrieve AI-generated insights for a processed media file: topics, sentiment, keywords, action items, summaries, and more. Source: https://docs.speakai.co/mcp/tools/media/get_media_insights/ · Markdown: https://docs.speakai.co/mcp/tools/media/get_media_insights/index.md Use the Speak AI MCP server tool `get_media_insights` to retrieve AI-generated insights for a processed media file: topics, sentiment, keywords, action items, summaries, and more. ## What does it do? Retrieve AI-generated insights for a processed media file: topics, sentiment, keywords, action items, summaries, and more. The media must be in 'processed' state (check with `get_media_status` first). For asking custom questions about a media file, use `ask_ai_chat` instead. ## Parameters `get_media_insights` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_media_insights`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Media Status > Check the processing status of a media file. Source: https://docs.speakai.co/mcp/tools/media/get_media_status/ · Markdown: https://docs.speakai.co/mcp/tools/media/get_media_status/index.md Use the Speak AI MCP server tool `get_media_status` to check the processing status of a media file. ## What does it do? Check the processing status of a media file. States: pending → transcribing → analyzing → processed (or failed). Poll this after `upload_media` until state is 'processed', then use `get_transcript` and `get_media_insights` to retrieve results. ## Parameters `get_media_status` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_media_status`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Signed Upload URL > Get a pre-signed S3 URL for direct file upload to Speak AI storage. Source: https://docs.speakai.co/mcp/tools/media/get_signed_upload_url/ · Markdown: https://docs.speakai.co/mcp/tools/media/get_signed_upload_url/index.md Use the Speak AI MCP server tool `get_signed_upload_url` to get a pre-signed S3 URL for direct file upload to Speak AI storage. ## What does it do? Get a pre-signed S3 URL for direct file upload to Speak AI storage. After getting the URL, PUT your file to it, then call `upload_media` with the S3 URL. For a simpler workflow, use `upload_local_file` instead which handles all steps automatically. ## Parameters `get_signed_upload_url` takes 3 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `isVideo` | boolean | Yes | Set true for video files, false for audio files | | `filename` | string | Yes | Original filename including extension | | `mimeType` | string | Yes | MIME type of the file, e.g. "audio/mp4" or "video/mp4" | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_signed_upload_url`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Transcript > Retrieve the full transcript for a media file with speaker labels and timestamps. Source: https://docs.speakai.co/mcp/tools/media/get_transcript/ · Markdown: https://docs.speakai.co/mcp/tools/media/get_transcript/index.md Use the Speak AI MCP server tool `get_transcript` to retrieve the full transcript for a media file with speaker labels and timestamps. ## What does it do? Retrieve the full transcript for a media file with speaker labels and timestamps. Works on processed media and also returns the partial, in-progress transcript while a meeting bot is still recording (LIVE_TRANSCRIPT state). To fetch only the new sentences added since your previous call during a live meeting, use `get_live_meeting_transcript` instead. Use `update_transcript_speakers` to rename speaker labels after reviewing. For subtitle-formatted output, use `get_captions` instead. ## Parameters `get_transcript` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_transcript`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Media Files > List and search media files in the workspace with filtering, pagination, and sorting. Source: https://docs.speakai.co/mcp/tools/media/list_media/ · Markdown: https://docs.speakai.co/mcp/tools/media/list_media/index.md Use the Speak AI MCP server tool `list_media` to list and search media files in the workspace with filtering, pagination, and sorting. ## What does it do? List and search media files in the workspace with filtering, pagination, and sorting. Use filterName for text search, mediaType to filter by audio/video/text, folderId for folder-specific results, and from/to for date ranges. Use the include param to embed additional data (transcripts, speakers, keywords) inline with each result, avoiding N+1 API calls. Returns mediaIds you can pass to `get_transcript`, `get_media_insights`, or `ask_ai_chat`. For deep full-text search across transcripts, use `search_media` instead. ## Parameters `list_media` takes 11 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaType` | enum | No | Filter by media type: "audio", "video", or "text" | | `page` | number | No | Page number for pagination (0-based, default: 0) | | `pageSize` | number | No | Number of results per page (default: 25, max: 100). Page through larger sets rather than raising this. With include: ['transcription'] each result carries a full transcript, and an oversized response is rejected outright. | | `sortBy` | string | No | Sort field and direction, e.g. "createdAt:desc" or "name:asc" | | `filterMedia` | number | No | Filter: 0=Uploaded, 1=Assigned, 2=Both (default: 2) | | `filterName` | string | No | Filter media by partial name match | | `folderId` | string | No | Filter media within a specific folder | | `from` | string | No | Start date for date range filter (ISO 8601) | | `to` | string | No | End date for date range filter (ISO 8601) | | `isFavorites` | boolean | No | Filter to only show favorited media | | `include` | array of enum: transcription, keywords, speakers, sentiment, custom, fields | No | Additional data to include with each media item. Without this, only metadata is returned. Use 'transcription' to include full transcripts inline, 'speakers' for speaker details, 'keywords' for extracted keywords, etc. Avoids N+1 API calls when you need data for multiple files. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_media`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Re-analyze Media > Re-run AI analysis on a media file using the latest models. Source: https://docs.speakai.co/mcp/tools/media/reanalyze_media/ · Markdown: https://docs.speakai.co/mcp/tools/media/reanalyze_media/index.md Use the Speak AI MCP server tool `reanalyze_media` to re-run AI analysis on a media file using the latest models. ## What does it do? Re-run AI analysis on a media file using the latest models. Choose which parts to re-run via the flags below. ## Parameters `reanalyze_media` takes 5 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file to re-analyze | | `isInsights` | boolean | No | Re-run insights analysis | | `isSentiment` | boolean | No | Re-run sentiment analysis | | `isFillerWords` | boolean | No | Re-run filler-word detection | | `isEmbeddings` | boolean | No | Re-generate embeddings | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `reanalyze_media`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Toggle Media Favorite > Mark or unmark media files as favorites for quick access. Source: https://docs.speakai.co/mcp/tools/media/toggle_media_favorite/ · Markdown: https://docs.speakai.co/mcp/tools/media/toggle_media_favorite/index.md Use the Speak AI MCP server tool `toggle_media_favorite` to mark or unmark media files as favorites for quick access. ## What does it do? Mark or unmark media files as favorites for quick access. ## Parameters `toggle_media_favorite` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaIds` | array of string | Yes | Media file IDs to update | | `isFavorite` | boolean | Yes | true to mark as favorite, false to unmark | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `toggle_media_favorite`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Media Metadata > Update metadata fields (name, description, tags, status) for an existing media file. Source: https://docs.speakai.co/mcp/tools/media/update_media_metadata/ · Markdown: https://docs.speakai.co/mcp/tools/media/update_media_metadata/index.md Use the Speak AI MCP server tool `update_media_metadata` to update metadata fields (name, description, tags, status) for an existing media file. ## What does it do? Update metadata fields (name, description, tags, status) for an existing media file. ## Parameters `update_media_metadata` takes 8 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | | `name` | string | Yes | Display name for the media (required: the server replaces the metadata) | | `description` | string | No | Description or notes for the media | | `folderId` | string | No | Move media to this folder ID | | `tags` | array of string | No | Array of tags to assign to the media | | `status` | string | No | Media status value | | `remark` | string | No | Internal remark or note | | `manageBy` | string | No | User ID to assign management of this media to | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_media_metadata`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Rename Transcript Speakers > Update or rename speaker labels in a media transcript. Source: https://docs.speakai.co/mcp/tools/media/update_transcript_speakers/ · Markdown: https://docs.speakai.co/mcp/tools/media/update_transcript_speakers/index.md Use the Speak AI MCP server tool `update_transcript_speakers` to update or rename speaker labels in a media transcript. ## What does it do? Update or rename speaker labels in a media transcript. ## Parameters `update_transcript_speakers` takes 2 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | | `speakers` | array of object | Yes | Speakers to rename. Each entry maps one existing speaker to its new name; speakers not listed are left untouched. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_transcript_speakers`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Transcription Text > Edit the official transcript text of a single media file by finding and replacing text. Source: https://docs.speakai.co/mcp/tools/media/update_transcription/ · Markdown: https://docs.speakai.co/mcp/tools/media/update_transcription/index.md Use the Speak AI MCP server tool `update_transcription` to edit the official transcript text of a single media file by finding and replacing text. ## What does it do? Edit the official transcript text of a single media file by finding and replacing text. Replaces every occurrence of the original text with the replacement (leave replacement empty to delete the text) and reports how many occurrences were replaced. Use `update_transcript_speakers` to rename speaker labels instead. ## Parameters `update_transcription` takes 4 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the media file | | `original` | string | Yes | Text to find in the transcript | | `replacement` | string | Yes | Text to replace it with (empty string deletes the matched text) | | `caseSensitive` | boolean | No | Match case exactly when finding the original text | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_transcription`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Upload and Analyze Media > Upload and transcribe media from a URL: a direct/public file URL, OR a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar), which Speak resolves to the underlying media automatically. Source: https://docs.speakai.co/mcp/tools/media/upload_and_analyze/ · Markdown: https://docs.speakai.co/mcp/tools/media/upload_and_analyze/index.md Use the Speak AI MCP server tool `upload_and_analyze` to upload and transcribe media from a URL: a direct/public file URL, OR a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar), which Speak resolves to the underlying media automatically. ## What does it do? Upload and transcribe media from a URL: a direct/public file URL, OR a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar), which Speak resolves to the underlying media automatically. Returns media_id immediately; after this returns, poll `get_media_status` until state is 'processed' (typically 1-3 min for under 60min audio), then call `get_media_insights` for AI summaries. This async pattern is required for remote MCP transports: long blocking calls die at proxy idle timeouts. (Vimeo links are not yet supported.) ## Parameters `upload_and_analyze` takes 6 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `url` | string | Yes | Direct/public media file URL, or a shareable social/video page link (e.g. an Instagram reel, TikTok, YouTube, or X post URL): page links are resolved to the underlying media server-side. Pass the URL the user gave you as-is. | | `name` | string | No | Display name for the media (defaults to filename from URL) | | `mediaType` | enum | No | Media type (default: audio) | | `sourceLanguage` | string | No | BCP-47 language code (e.g., 'en-US', 'he-IL') | | `folderId` | string | No | Folder ID to place the media in | | `tags` | string | No | Comma-separated tags | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `upload_and_analyze`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Upload Local File > Upload a local file to Speak AI for transcription and analysis. Source: https://docs.speakai.co/mcp/tools/media/upload_local_file/ · Markdown: https://docs.speakai.co/mcp/tools/media/upload_local_file/index.md Use the Speak AI MCP server tool `upload_local_file` to upload a local file to Speak AI for transcription and analysis. ## What does it do? Upload a local file to Speak AI for transcription and analysis. Reads the file from disk, gets a pre-signed S3 URL, uploads the file, then creates the media entry. Works with any audio or video file on the local filesystem. After upload, use `get_media_status` to poll for completion, then `get_transcript` and `get_media_insights`. ## Parameters `upload_local_file` takes 6 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `filePath` | string | Yes | Absolute path to the local audio or video file | | `name` | string | No | Display name (defaults to filename) | | `mediaType` | enum | No | Media type (auto-detected from extension if omitted) | | `sourceLanguage` | string | No | BCP-47 language code (e.g., 'en-US') | | `folderId` | string | No | Folder ID to place the media in | | `tags` | string | No | Comma-separated tags | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `upload_local_file`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Upload Media from URL > Upload media from a URL: a direct/public file URL, a pre-signed S3 URL, or a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar) which Speak resolves to the underlying media automatically. Source: https://docs.speakai.co/mcp/tools/media/upload_media/ · Markdown: https://docs.speakai.co/mcp/tools/media/upload_media/index.md Use the Speak AI MCP server tool `upload_media` to upload media from a URL: a direct/public file URL, a pre-signed S3 URL, or a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar) which Speak resolves to the underlying media automatically. ## What does it do? Upload media from a URL: a direct/public file URL, a pre-signed S3 URL, or a shareable social/video link (YouTube, Instagram, TikTok, X, Facebook, Reddit, SoundCloud, and similar) which Speak resolves to the underlying media automatically. Processing is asynchronous: after uploading, use `get_media_status` to poll until state is 'processed' (typically 1-3 minutes for audio under 60 min), then use `get_transcript` and `get_media_insights` to retrieve results. For a single call that handles everything, use `upload_and_analyze` instead. For local files, use `upload_local_file`. (Vimeo links are not yet supported.) ## Parameters `upload_media` takes 9 parameters, 3 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Display name for the media file | | `url` | string | Yes | Direct/public media file URL, pre-signed S3 URL, or a shareable social/video page link (e.g. an Instagram reel or TikTok URL): page links are resolved to the underlying media server-side. | | `mediaType` | enum | Yes | Type of media: "audio" or "video" | | `description` | string | No | Description of the media file | | `sourceLanguage` | string | No | BCP-47 language code for transcription, e.g. "en-US" or "he-IL" | | `tags` | string | No | Comma-separated tags for the media | | `folderId` | string | No | ID of the folder to place the media in | | `callbackUrl` | string | No | Webhook callback URL for this specific upload | | `fields` | array of object | No | Custom field values to attach to the media | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `upload_media`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Media library](/mcp/tools/media/) lists the rest of the Media library category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Meeting bot tools in the Speak AI MCP server reference > Schedule Speak AI to join a Zoom / Google Meet / Teams call and transcribe automatically. All 5 Meeting bot tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/meeting-bot/ · Markdown: https://docs.speakai.co/mcp/tools/meeting-bot/index.md The Meeting bot category groups 5 of the Speak AI MCP server's tools. Schedule Speak AI to join a Zoom / Google Meet / Teams call and transcribe automatically. ## Which Meeting bot tools does the Speak AI MCP server have? The Speak AI MCP server has 5 Meeting bot tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`list_meeting_events`](/mcp/tools/meeting-bot/list_meeting_events/): List scheduled or completed meeting assistant events with filtering and pagination. - [`schedule_meeting_event`](/mcp/tools/meeting-bot/schedule_meeting_event/): Schedule the Speak AI meeting assistant to join and record an upcoming meeting. - [`remove_assistant_from_meeting`](/mcp/tools/meeting-bot/remove_assistant_from_meeting/): Remove the Speak AI assistant from an active or scheduled meeting. - [`delete_scheduled_assistant`](/mcp/tools/meeting-bot/delete_scheduled_assistant/): Cancel and delete a scheduled meeting assistant event. - [`get_live_meeting_transcript`](/mcp/tools/meeting-bot/get_live_meeting_transcript/): Fetch new sentences from an in-progress or just-ended meeting transcript. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Cancel Scheduled Meeting Assistant > Cancel and delete a scheduled meeting assistant event. Source: https://docs.speakai.co/mcp/tools/meeting-bot/delete_scheduled_assistant/ · Markdown: https://docs.speakai.co/mcp/tools/meeting-bot/delete_scheduled_assistant/index.md Use the Speak AI MCP server tool `delete_scheduled_assistant` to cancel and delete a scheduled meeting assistant event. ## What does it do? Cancel and delete a scheduled meeting assistant event. ## Parameters `delete_scheduled_assistant` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `meetingAssistantEventId` | string | Yes | Unique identifier of the meeting assistant event to cancel | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_scheduled_assistant`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Meeting bot](/mcp/tools/meeting-bot/) lists the rest of the Meeting bot category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Live Meeting Transcript > Fetch new sentences from an in-progress or just-ended meeting transcript. Source: https://docs.speakai.co/mcp/tools/meeting-bot/get_live_meeting_transcript/ · Markdown: https://docs.speakai.co/mcp/tools/meeting-bot/get_live_meeting_transcript/index.md Use the Speak AI MCP server tool `get_live_meeting_transcript` to fetch new sentences from an in-progress or just-ended meeting transcript. ## What does it do? Fetch new sentences from an in-progress or just-ended meeting transcript. Identify the meeting via meetingAssistantEventId (preferred) or mediaId. Pass back the previous response's nextCursor as sinceEndInSec to receive only what's been added since. ## Parameters `get_live_meeting_transcript` takes 3 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `meetingAssistantEventId` | string | No | Meeting assistant event id from `list_meeting_events`. Either this or mediaId is required. | | `mediaId` | string | No | Media id of the live meeting. Either this or meetingAssistantEventId is required. | | `sinceEndInSec` | number | No | Pass the nextCursor value from your previous response to skip already-seen sentences. Omit on the first call. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_live_meeting_transcript`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Meeting bot](/mcp/tools/meeting-bot/) lists the rest of the Meeting bot category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Meeting Events > List scheduled or completed meeting assistant events with filtering and pagination. Source: https://docs.speakai.co/mcp/tools/meeting-bot/list_meeting_events/ · Markdown: https://docs.speakai.co/mcp/tools/meeting-bot/list_meeting_events/index.md Use the Speak AI MCP server tool `list_meeting_events` to list scheduled or completed meeting assistant events with filtering and pagination. ## What does it do? List scheduled or completed meeting assistant events with filtering and pagination. ## Parameters `list_meeting_events` takes 4 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `platformType` | string | No | Filter by platform. Allowed values: zoom, googleMeet, microsoftTeams, webex. Comma-separate for multiple. Must match these exact strings: server validates strictly. | | `meetingStatus` | string | No | Filter by status (e.g. scheduled, completed, cancelled) | | `page` | number | No | Page number (0-based, default: 0) | | `pageSize` | number | No | Results per page (default: 20, max: 500) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_meeting_events`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Meeting bot](/mcp/tools/meeting-bot/) lists the rest of the Meeting bot category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Remove Assistant from Meeting > Remove the Speak AI assistant from an active or scheduled meeting. Source: https://docs.speakai.co/mcp/tools/meeting-bot/remove_assistant_from_meeting/ · Markdown: https://docs.speakai.co/mcp/tools/meeting-bot/remove_assistant_from_meeting/index.md Use the Speak AI MCP server tool `remove_assistant_from_meeting` to remove the Speak AI assistant from an active or scheduled meeting. ## What does it do? Remove the Speak AI assistant from an active or scheduled meeting. ## Parameters `remove_assistant_from_meeting` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `meetingAssistantEventId` | string | Yes | Unique identifier of the meeting assistant event | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `remove_assistant_from_meeting`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Meeting bot](/mcp/tools/meeting-bot/) lists the rest of the Meeting bot category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Schedule AI Meeting Assistant > Schedule the Speak AI meeting assistant to join and record an upcoming meeting. Source: https://docs.speakai.co/mcp/tools/meeting-bot/schedule_meeting_event/ · Markdown: https://docs.speakai.co/mcp/tools/meeting-bot/schedule_meeting_event/index.md Use the Speak AI MCP server tool `schedule_meeting_event` to schedule the Speak AI meeting assistant to join and record an upcoming meeting. ## What does it do? Schedule the Speak AI meeting assistant to join and record an upcoming meeting. ## Parameters `schedule_meeting_event` takes 5 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `title` | string | Yes | Display title for the event | | `meetingURL` | string | Yes | URL of the meeting to join | | `meetingDate` | string | No | ISO 8601 datetime for when the meeting starts | | `meetingLanguage` | string | No | Transcription language code for the meeting (e.g. en-US) | | `folderId` | string | No | Folder ID to store the recording in | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `schedule_meeting_event`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Meeting bot](/mcp/tools/meeting-bot/) lists the rest of the Meeting bot category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Recorders & surveys tools in the Speak AI MCP server > Public recording links for clients, prompted question sets, branded submission pages. All 10 Recorders & surveys tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/index.md The Recorders & surveys category groups 10 of the Speak AI MCP server's tools. Public recording links for clients, prompted question sets, branded submission pages. ## Which Recorders & surveys tools does the Speak AI MCP server have? The Speak AI MCP server has 10 Recorders & surveys tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`create_recorder`](/mcp/tools/recorders-surveys/create_recorder/): Create a new recorder or survey for collecting audio/video submissions. - [`list_recorders`](/mcp/tools/recorders-surveys/list_recorders/): List all recorders/surveys in the workspace. - [`get_recorder_info`](/mcp/tools/recorders-surveys/get_recorder_info/): Get detailed information about a specific recorder including its settings and questions. - [`clone_recorder`](/mcp/tools/recorders-surveys/clone_recorder/): Duplicate an existing recorder including all its settings and questions. - [`get_recorder_recordings`](/mcp/tools/recorders-surveys/get_recorder_recordings/): List all submissions/recordings collected by a specific recorder. - [`generate_recorder_url`](/mcp/tools/recorders-surveys/generate_recorder_url/): Generate a shareable public URL for a recorder/survey. - [`update_recorder_settings`](/mcp/tools/recorders-surveys/update_recorder_settings/): Update configuration settings for a recorder (branding, capture options, etc.). - [`update_recorder_questions`](/mcp/tools/recorders-surveys/update_recorder_questions/): Update the survey questions and respondent-info settings for a recorder. - [`check_recorder_status`](/mcp/tools/recorders-surveys/check_recorder_status/): Check whether a recorder/survey is active and accepting submissions. - [`delete_recorder`](/mcp/tools/recorders-surveys/delete_recorder/): Permanently delete a recorder/survey. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Check Recorder Status > Check whether a recorder/survey is active and accepting submissions. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/check_recorder_status/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/check_recorder_status/index.md Use the Speak AI MCP server tool `check_recorder_status` to check whether a recorder/survey is active and accepting submissions. ## What does it do? Check whether a recorder/survey is active and accepting submissions. ## Parameters `check_recorder_status` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `token` | string | Yes | Unique token identifying the recorder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `check_recorder_status`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Clone Recorder > Duplicate an existing recorder including all its settings and questions. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/clone_recorder/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/clone_recorder/index.md Use the Speak AI MCP server tool `clone_recorder` to duplicate an existing recorder including all its settings and questions. ## What does it do? Duplicate an existing recorder including all its settings and questions. ## Parameters `clone_recorder` takes 4 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | ID of the recorder to clone | | `name` | string | No | Name for the cloned recorder | | `description` | string | No | Description for the cloned recorder | | `folderId` | string | No | Folder for the cloned recorder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `clone_recorder`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Recorder > Create a new recorder or survey for collecting audio/video submissions. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/create_recorder/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/create_recorder/index.md Use the Speak AI MCP server tool `create_recorder` to create a new recorder or survey for collecting audio/video submissions. ## What does it do? Create a new recorder or survey for collecting audio/video submissions. ## Parameters `create_recorder` takes 11 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Display name for the recorder | | `description` | string | No | Recorder description | | `sourceLanguage` | string | No | Transcription language code (e.g. en-US) | | `folderId` | string | No | Folder to store recordings in | | `isAutoAnalyze` | boolean | No | Whether to auto-analyze submissions | | `notifyUsers` | array of string | No | User IDs to notify on new submissions | | `duration` | object | No | Recording duration: \{ minDuration, maxDuration \} in seconds | | `options` | object | No | Capture options: \{ audio, video, screenShare, liveTranscription, upload:\{ file, text, multiple, url \} \}. All booleans | | `notification` | object | No | Notification toggles: \{ upload, client \}. Booleans | | `meta` | object | No | Branding/customization: \{ primaryColor, backgroundImg, logo, fontColor, fontFamily, theme, customCSS, hideWaveform, hideTitle, hideDescription, hideSubmitButton, submitButtonLabel, countdown, hideImages \} | | `clientInformation` | object | No | Respondent info & questions: \{ name:boolean, email:boolean, questions:[…], consent?:\{ isEnabled, title, description, yesButtonLabel, noButtonLabel, isRequired, fieldId? \} \}. Question shape. Each: \{ question, isRequired, answerType, options?, includeOther?, fieldId? \}. answerType must be one of: "single", "multiple", "checkbox", "radiobutton", "dropdownlist", "date", "time", "datetime". Choice types (single, multiple, checkbox, radiobutton, dropdownlist) take options:string[] and includeOther:boolean (adds a free-text "Other"). date/time/datetime take no options. There is no free-text/rating/number answerType. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_recorder`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Recorder > Permanently delete a recorder/survey. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/delete_recorder/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/delete_recorder/index.md Use the Speak AI MCP server tool `delete_recorder` to permanently delete a recorder/survey. ## What does it do? Permanently delete a recorder/survey. Existing recordings are preserved. ## Parameters `delete_recorder` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | Unique identifier of the recorder to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_recorder`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Generate Recorder Share URL > Generate a shareable public URL for a recorder/survey. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/generate_recorder_url/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/generate_recorder_url/index.md Use the Speak AI MCP server tool `generate_recorder_url` to generate a shareable public URL for a recorder/survey. ## What does it do? Generate a shareable public URL for a recorder/survey. ## Parameters `generate_recorder_url` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | Unique identifier of the recorder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `generate_recorder_url`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Recorder Info > Get detailed information about a specific recorder including its settings and questions. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/get_recorder_info/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/get_recorder_info/index.md Use the Speak AI MCP server tool `get_recorder_info` to get detailed information about a specific recorder including its settings and questions. ## What does it do? Get detailed information about a specific recorder including its settings and questions. ## Parameters `get_recorder_info` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | Unique identifier of the recorder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_recorder_info`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Recorder Submissions > List all submissions/recordings collected by a specific recorder. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/get_recorder_recordings/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/get_recorder_recordings/index.md Use the Speak AI MCP server tool `get_recorder_recordings` to list all submissions/recordings collected by a specific recorder. ## What does it do? List all submissions/recordings collected by a specific recorder. ## Parameters `get_recorder_recordings` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | Unique identifier of the recorder | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_recorder_recordings`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Recorders > List all recorders/surveys in the workspace. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/list_recorders/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/list_recorders/index.md Use the Speak AI MCP server tool `list_recorders` to list all recorders/surveys in the workspace. ## What does it do? List all recorders/surveys in the workspace. ## Parameters `list_recorders` takes 3 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `page` | number | No | Page number (0-based, default: 0) | | `pageSize` | number | No | Results per page (default: 20, max: 500) | | `sortBy` | string | No | Sort field, e.g. "createdAt:desc" | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_recorders`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Recorder Questions > Update the survey questions and respondent-info settings for a recorder. Source: https://docs.speakai.co/mcp/tools/recorders-surveys/update_recorder_questions/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/update_recorder_questions/index.md Use the Speak AI MCP server tool `update_recorder_questions` to update the survey questions and respondent-info settings for a recorder. ## What does it do? Update the survey questions and respondent-info settings for a recorder. ## Parameters `update_recorder_questions` takes 5 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | Unique identifier of the recorder | | `name` | boolean | No | Whether to collect the respondent's name | | `email` | boolean | No | Whether to collect the respondent's email | | `questions` | array of object | Yes | Survey questions. Each: \{ question, isRequired, answerType, options?, includeOther?, fieldId? \}. answerType must be one of: "single", "multiple", "checkbox", "radiobutton", "dropdownlist", "date", "time", "datetime". Choice types (single, multiple, checkbox, radiobutton, dropdownlist) take options:string[] and includeOther:boolean (adds a free-text "Other"). date/time/datetime take no options. There is no free-text/rating/number answerType. (id? may also be passed to update an existing question.) | | `consent` | object | No | Consent screen: \{ isEnabled, title, description, yesButtonLabel, noButtonLabel, isRequired, fieldId? \} | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_recorder_questions`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Recorder Settings > Update configuration settings for a recorder (branding, capture options, etc.). Source: https://docs.speakai.co/mcp/tools/recorders-surveys/update_recorder_settings/ · Markdown: https://docs.speakai.co/mcp/tools/recorders-surveys/update_recorder_settings/index.md Use the Speak AI MCP server tool `update_recorder_settings` to update configuration settings for a recorder (branding, capture options, etc.). ## What does it do? Update configuration settings for a recorder (branding, capture options, etc.). `name` must always be supplied. ## Parameters `update_recorder_settings` takes 11 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `recorderId` | string | Yes | Unique identifier of the recorder | | `name` | string | Yes | Display name for the recorder | | `description` | string | No | Recorder description | | `sourceLanguage` | string | No | Transcription language code (e.g. en-US) | | `folderId` | string | No | Folder to store recordings in | | `isAutoAnalyze` | boolean | No | Whether to auto-analyze submissions | | `notifyUsers` | array of string | No | User IDs to notify on new submissions | | `duration` | object | No | Recording duration: \{ minDuration, maxDuration \} in seconds | | `options` | object | No | Capture options: \{ audio, video, screenShare, liveTranscription, upload:\{ file, text, multiple, url \} \}. All booleans | | `notification` | object | No | Notification toggles: \{ upload, client \}. Booleans | | `meta` | object | No | Branding/customization: \{ primaryColor, backgroundImg, logo, fontColor, fontFamily, theme, customCSS, hideWaveform, hideTitle, hideDescription, hideSubmitButton, submitButtonLabel, countdown, hideImages \} | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_recorder_settings`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Recorders & surveys](/mcp/tools/recorders-surveys/) lists the rest of the Recorders & surveys category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Search & analytics tools in the Speak AI MCP server > Full-text search across transcripts, insights, and metadata. Workspace-level stats. All 3 Search & analytics tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/search-analytics/ · Markdown: https://docs.speakai.co/mcp/tools/search-analytics/index.md The Search & analytics category groups 3 of the Speak AI MCP server's tools. Full-text search across transcripts, insights, and metadata. Workspace-level stats. ## Which Search & analytics tools does the Speak AI MCP server have? The Speak AI MCP server has 3 Search & analytics tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`search_media`](/mcp/tools/search-analytics/search_media/): Deep search across all media transcripts, insights, and metadata. - [`get_media_statistics`](/mcp/tools/search-analytics/get_media_statistics/): Get workspace-level media statistics: total counts, processing status breakdown, storage usage, etc. - [`list_supported_languages`](/mcp/tools/search-analytics/list_supported_languages/): List all languages supported for transcription. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Media Statistics > Get workspace-level media statistics: total counts, processing status breakdown, storage usage, etc. Source: https://docs.speakai.co/mcp/tools/search-analytics/get_media_statistics/ · Markdown: https://docs.speakai.co/mcp/tools/search-analytics/get_media_statistics/index.md Use the Speak AI MCP server tool `get_media_statistics` to get workspace-level media statistics: total counts, processing status breakdown, storage usage, etc. ## What does it do? Get workspace-level media statistics: total counts, processing status breakdown, storage usage, etc. ## Parameters `get_media_statistics` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_media_statistics`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Search & analytics](/mcp/tools/search-analytics/) lists the rest of the Search & analytics category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Supported Languages > List all languages supported for transcription. Source: https://docs.speakai.co/mcp/tools/search-analytics/list_supported_languages/ · Markdown: https://docs.speakai.co/mcp/tools/search-analytics/list_supported_languages/index.md Use the Speak AI MCP server tool `list_supported_languages` to list all languages supported for transcription. ## What does it do? List all languages supported for transcription. Use the language codes when uploading media with a specific sourceLanguage. ## Parameters `list_supported_languages` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_supported_languages`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Search & analytics](/mcp/tools/search-analytics/) lists the rest of the Search & analytics category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Search Media Library > Deep search across all media transcripts, insights, and metadata. Source: https://docs.speakai.co/mcp/tools/search-analytics/search_media/ · Markdown: https://docs.speakai.co/mcp/tools/search-analytics/search_media/index.md `search_media` is a tool in the Speak AI MCP server. Deep search across all media transcripts, insights, and metadata. ## What does it do? Deep search across all media transcripts, insights, and metadata. Returns matching media with sentiment data, tags, and content excerpts. Use this to find specific topics, keywords, or themes across your entire library. For filtering by media type, folder, tags, or speakers, use the filterList parameter. Results are scoped by date range: defaults to current year if not specified. ## Parameters `search_media` takes 4 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `query` | string | Yes | Search query: searches across transcripts, insights, and metadata | | `startDate` | string | No | Start date for search range (ISO 8601). Defaults to start of current year. | | `endDate` | string | No | End date for search range (ISO 8601). Defaults to now. | | `filterList` | array of object | No | Advanced filters for narrowing search results by tags, speakers, media type, sentiment, folder, etc. | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `search_media`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Search & analytics](/mcp/tools/search-analytics/) lists the rest of the Search & analytics category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Text notes tools in the Speak AI MCP server reference > Standalone AI-analyzed text notes plus custom fields you can tag any media file with. All 4 Text notes tools, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/text-notes/ · Markdown: https://docs.speakai.co/mcp/tools/text-notes/index.md The Text notes category groups 4 of the Speak AI MCP server's tools. Standalone AI-analyzed text notes plus custom fields you can tag any media file with. ## Which Text notes tools does the Speak AI MCP server have? The Speak AI MCP server has 4 Text notes tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`create_text_note`](/mcp/tools/text-notes/create_text_note/): Create a new text note in Speak AI for analysis. - [`get_text_insight`](/mcp/tools/text-notes/get_text_insight/): Retrieve AI-generated insights for a text note, including topics, sentiment, summaries, and action items. - [`reanalyze_text`](/mcp/tools/text-notes/reanalyze_text/): Trigger a re-analysis of an existing text note to regenerate insights with the latest AI models. - [`update_text_note`](/mcp/tools/text-notes/update_text_note/): Update an existing text note's name, content, or metadata. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Text Note > Create a new text note in Speak AI for analysis. Source: https://docs.speakai.co/mcp/tools/text-notes/create_text_note/ · Markdown: https://docs.speakai.co/mcp/tools/text-notes/create_text_note/index.md Use the Speak AI MCP server tool `create_text_note` to create a new text note in Speak AI for analysis. ## What does it do? Create a new text note in Speak AI for analysis. The content will be analyzed for insights, topics, and sentiment. ## Parameters `create_text_note` takes 7 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `name` | string | Yes | Title/name for the text note | | `text` | string | No | Full text content to analyze | | `description` | string | No | Description for the text note | | `folderId` | string | No | ID of the folder to place the note in | | `tags` | string | No | Comma-separated tags or array of tag strings | | `callbackUrl` | string | No | Webhook callback URL for completion notification | | `fields` | array of object | No | Custom field values to attach to the text note | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_text_note`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Text notes](/mcp/tools/text-notes/) lists the rest of the Text notes category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Text Note Insights > Retrieve AI-generated insights for a text note, including topics, sentiment, summaries, and action items. Source: https://docs.speakai.co/mcp/tools/text-notes/get_text_insight/ · Markdown: https://docs.speakai.co/mcp/tools/text-notes/get_text_insight/index.md Use the Speak AI MCP server tool `get_text_insight` to retrieve AI-generated insights for a text note, including topics, sentiment, summaries, and action items. ## What does it do? Retrieve AI-generated insights for a text note, including topics, sentiment, summaries, and action items. ## Parameters `get_text_insight` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the text note | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_text_insight`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Text notes](/mcp/tools/text-notes/) lists the rest of the Text notes category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Re-analyze Text Note > Trigger a re-analysis of an existing text note to regenerate insights with the latest AI models. Source: https://docs.speakai.co/mcp/tools/text-notes/reanalyze_text/ · Markdown: https://docs.speakai.co/mcp/tools/text-notes/reanalyze_text/index.md Use the Speak AI MCP server tool `reanalyze_text` to trigger a re-analysis of an existing text note to regenerate insights with the latest AI models. ## What does it do? Trigger a re-analysis of an existing text note to regenerate insights with the latest AI models. ## Parameters `reanalyze_text` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the text note to reanalyze | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `reanalyze_text`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Text notes](/mcp/tools/text-notes/) lists the rest of the Text notes category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Text Note > Update an existing text note's name, content, or metadata. Source: https://docs.speakai.co/mcp/tools/text-notes/update_text_note/ · Markdown: https://docs.speakai.co/mcp/tools/text-notes/update_text_note/index.md Use the Speak AI MCP server tool `update_text_note` to update an existing text note's name, content, or metadata. ## What does it do? Update an existing text note's name, content, or metadata. Updating text content will trigger re-analysis. ## Parameters `update_text_note` takes 6 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `mediaId` | string | Yes | Unique identifier of the text note | | `name` | string | No | New name for the text note | | `text` | string | No | New text content (will trigger re-analysis) | | `description` | string | No | Updated description | | `folderId` | string | No | Move to a different folder | | `tags` | string | No | Updated comma-separated tags | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_text_note`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Text notes](/mcp/tools/text-notes/) lists the rest of the Text notes category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Users & teams tools in the Speak AI MCP server reference > List workspace members and manage user groups. All 5 Users & teams tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/users-team/ · Markdown: https://docs.speakai.co/mcp/tools/users-team/index.md The Users & teams category groups 5 of the Speak AI MCP server's tools. List workspace members and manage user groups. ## Which Users & teams tools does the Speak AI MCP server have? The Speak AI MCP server has 5 Users & teams tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`list_users`](/mcp/tools/users-team/list_users/): List the users (members) in the workspace/company, with their ids, names, emails, and permissions. - [`list_user_groups`](/mcp/tools/users-team/list_user_groups/): List all user groups in the company. - [`create_user_group`](/mcp/tools/users-team/create_user_group/): Create a new user group and assign members. - [`update_user_group`](/mcp/tools/users-team/update_user_group/): Update a user group's name and member list. - [`delete_user_group`](/mcp/tools/users-team/delete_user_group/): Delete a user group. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create User Group > Create a new user group and assign members. Source: https://docs.speakai.co/mcp/tools/users-team/create_user_group/ · Markdown: https://docs.speakai.co/mcp/tools/users-team/create_user_group/index.md Use the Speak AI MCP server tool `create_user_group` to create a new user group and assign members. ## What does it do? Create a new user group and assign members. Member ids come from `list_users`. Fails with a 409 if a group with the same name already exists in the company. ## Parameters `create_user_group` takes 2 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `description` | string | Yes | Group name | | `users` | array of string | No | User _id strings to add as members (fetch via `list_users`) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_user_group`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Stays inside Speak AI. Does not reach other systems. ## Related - [Users & teams](/mcp/tools/users-team/) lists the rest of the Users & teams category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete User Group > Delete a user group. Source: https://docs.speakai.co/mcp/tools/users-team/delete_user_group/ · Markdown: https://docs.speakai.co/mcp/tools/users-team/delete_user_group/index.md Use the Speak AI MCP server tool `delete_user_group` to delete a user group. ## What does it do? Delete a user group. This removes the group only; it does not delete the users themselves. ## Parameters `delete_user_group` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `id` | string | Yes | Group _id to delete (from `list_user_groups`) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_user_group`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Users & teams](/mcp/tools/users-team/) lists the rest of the Users & teams category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List User Groups > List all user groups in the company. Source: https://docs.speakai.co/mcp/tools/users-team/list_user_groups/ · Markdown: https://docs.speakai.co/mcp/tools/users-team/list_user_groups/index.md Use the Speak AI MCP server tool `list_user_groups` to list all user groups in the company. ## What does it do? List all user groups in the company. Each group includes its members (hydrated names/emails) and member ids. Use this to discover group ids and current membership before updating or deleting a group. ## Parameters `list_user_groups` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_user_groups`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Users & teams](/mcp/tools/users-team/) lists the rest of the Users & teams category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Users > List the users (members) in the workspace/company, with their ids, names, emails, and permissions. Source: https://docs.speakai.co/mcp/tools/users-team/list_users/ · Markdown: https://docs.speakai.co/mcp/tools/users-team/list_users/index.md Use the Speak AI MCP server tool `list_users` to list the users (members) in the workspace/company, with their ids, names, emails, and permissions. ## What does it do? List the users (members) in the workspace/company, with their ids, names, emails, and permissions. Use the returned _id values when assigning members to user groups. ## Parameters `list_users` takes 4 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `filterName` | string | No | Search text. Plain text matches first/last name or email; prefix with "email:" or "name:" to scope, e.g. "email:jane@acme.com". | | `sortBy` | string | No | Sort expression "field:asc" or "field:desc", e.g. "createdAt:desc", "email:asc" | | `page` | number | No | 0-based page index (default 0) | | `pageSize` | number | No | Results per page (default 50) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_users`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Users & teams](/mcp/tools/users-team/) lists the rest of the Users & teams category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update User Group > Update a user group's name and member list. Source: https://docs.speakai.co/mcp/tools/users-team/update_user_group/ · Markdown: https://docs.speakai.co/mcp/tools/users-team/update_user_group/index.md Use the Speak AI MCP server tool `update_user_group` to update a user group's name and member list. ## What does it do? Update a user group's name and member list. NOTE: the users array is a FULL REPLACEMENT, not a delta. Any member id you omit is removed from the group. Fetch the current members with `list_user_groups` first and send the complete list. ## Parameters `update_user_group` takes 3 parameters, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `_id` | string | Yes | Group _id to update (from `list_user_groups`) | | `description` | string | Yes | New group name | | `users` | array of string | Yes | Full replacement list of member _id strings (omitted users are removed) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_user_group`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Users & teams](/mcp/tools/users-team/) lists the rest of the Users & teams category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Webhooks tools in the Speak AI MCP server reference > Trigger actions on new recordings. Send events to your own backend. All 7 Webhooks tools in the Speak AI MCP server, with parameters and behaviour hints. Source: https://docs.speakai.co/mcp/tools/webhooks/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/index.md The Webhooks category groups 7 of the Speak AI MCP server's tools. Trigger actions on new recordings. Send events to your own backend. ## Which Webhooks tools does the Speak AI MCP server have? The Speak AI MCP server has 7 Webhooks tools. Each one has its own page with a plain-language summary, its parameters, and its behaviour hints. - [`create_webhook`](/mcp/tools/webhooks/create_webhook/): Create a new webhook to receive real-time notifications when events occur in Speak AI. - [`list_webhooks`](/mcp/tools/webhooks/list_webhooks/): List all configured webhooks in the workspace. - [`update_webhook`](/mcp/tools/webhooks/update_webhook/): Update an existing webhook. - [`delete_webhook`](/mcp/tools/webhooks/delete_webhook/): Delete a webhook and stop receiving notifications at its endpoint. - [`provision_inbound_webhook`](/mcp/tools/webhooks/provision_inbound_webhook/): Provision a standalone inbound webhook and get its public receive URL (inboundUrl) BEFORE creating an automation. - [`get_inbound_webhook`](/mcp/tools/webhooks/get_inbound_webhook/): Get an inbound webhook's public receive URL, captured sample payload, and the ready-to-paste \{\{trigger.payload.*\}\} tokens for mapping payload values into automation steps (speak-upload name/sourceUrl, fieldsMap custom-field values, notify/outbound-webhook templates). - [`get_webhook_attempts`](/mcp/tools/webhooks/get_webhook_attempts/): Get the delivery log for an inbound webhook: each received request with its HTTP acknowledgement status (200 = sample captured, 202 = accepted and run started, 401/403 = rejected) and the automation run it started. ## Related - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool across every category. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Create Webhook > Create a new webhook to receive real-time notifications when events occur in Speak AI. Source: https://docs.speakai.co/mcp/tools/webhooks/create_webhook/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/create_webhook/index.md Use the Speak AI MCP server tool `create_webhook` to create a new webhook to receive real-time notifications when events occur in Speak AI. ## What does it do? Create a new webhook to receive real-time notifications when events occur in Speak AI. ## Parameters `create_webhook` takes 3 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `callbackUrl` | string | Yes | HTTPS endpoint URL to receive webhook payloads | | `events` | array of string | No | Array of event types to subscribe to | | `description` | string | No | Optional description for the webhook | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `create_webhook`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Delete Webhook > Delete a webhook and stop receiving notifications at its endpoint. Source: https://docs.speakai.co/mcp/tools/webhooks/delete_webhook/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/delete_webhook/index.md Use the Speak AI MCP server tool `delete_webhook` to delete a webhook and stop receiving notifications at its endpoint. ## What does it do? Delete a webhook and stop receiving notifications at its endpoint. ## Parameters `delete_webhook` takes 1 parameter, all of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `webhookId` | string | Yes | Unique identifier of the webhook to delete | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `delete_webhook`. - Can change data in your workspace. - Can delete or overwrite data. Use with care. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Inbound Webhook > Get an inbound webhook's public receive URL, captured sample payload, and the ready-to-paste {{trigger.payload.*}} tokens for mapping payload values into automation steps (speak-upload name/sourceUrl, fieldsMap custom-field values, notify/outbound-webhook templates). Source: https://docs.speakai.co/mcp/tools/webhooks/get_inbound_webhook/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/get_inbound_webhook/index.md Use the Speak AI MCP server tool `get_inbound_webhook` to get an inbound webhook's public receive URL, captured sample payload, and the ready-to-paste \{\{trigger.payload.*\}\} tokens for mapping payload values into automation steps (speak-upload name/sourceUrl, fieldsMap custom-field values, notify/outbound-webhook templates). ## What does it do? Get an inbound webhook's public receive URL, captured sample payload, and the ready-to-paste \{\{trigger.payload.*\}\} tokens for mapping payload values into automation steps (speak-upload name/sourceUrl, fieldsMap custom-field values, notify/outbound-webhook templates). Pass either the webhookId or the automationId of an inbound-webhook automation. If no sample has been captured yet, send a test payload to the inboundUrl first (append ?test=1 to capture without running the automation). ## Parameters `get_inbound_webhook` takes 3 parameters, all of them optional. | Name | Type | Required | Description | | --- | --- | --- | --- | | `webhookId` | string | No | Inbound webhook id (from `provision_inbound_webhook` or an automation's trigger.webhookId) | | `automationId` | string | No | Automation id: resolves the bound webhookId and childKey automatically | | `childKey` | string | No | Override the dot-path used to narrow mappable payload paths (defaults to the automation's trigger.childKey) | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_inbound_webhook`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Get Webhook Attempts > Get the delivery log for an inbound webhook: each received request with its HTTP acknowledgement status (200 = sample captured, 202 = accepted and run started, 401/403 = rejected) and the automation run it started. Source: https://docs.speakai.co/mcp/tools/webhooks/get_webhook_attempts/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/get_webhook_attempts/index.md Use the Speak AI MCP server tool `get_webhook_attempts` to get the delivery log for an inbound webhook: each received request with its HTTP acknowledgement status (200 = sample captured, 202 = accepted and run started, 401/403 = rejected) and the automation run it started. ## What does it do? Get the delivery log for an inbound webhook: each received request with its HTTP acknowledgement status (200 = sample captured, 202 = accepted and run started, 401/403 = rejected) and the automation run it started. Use `get_automation_runs` for the run outcomes themselves. ## Parameters `get_webhook_attempts` takes 3 parameters, 1 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `webhookId` | string | Yes | Unique identifier of the inbound webhook | | `page` | number | No | 0-based page index | | `pageSize` | number | No | Results per page | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `get_webhook_attempts`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # List Webhooks > List all configured webhooks in the workspace. Source: https://docs.speakai.co/mcp/tools/webhooks/list_webhooks/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/list_webhooks/index.md Use the Speak AI MCP server tool `list_webhooks` to list all configured webhooks in the workspace. ## What does it do? List all configured webhooks in the workspace. ## Parameters `list_webhooks` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `list_webhooks`. - Only reads data. Does not modify your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Stays inside Speak AI. Does not reach other systems. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Provision Inbound Webhook > Provision a standalone inbound webhook and get its public receive URL (inboundUrl) BEFORE creating an automation. Source: https://docs.speakai.co/mcp/tools/webhooks/provision_inbound_webhook/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/provision_inbound_webhook/index.md Use the Speak AI MCP server tool `provision_inbound_webhook` to provision a standalone inbound webhook and get its public receive URL (inboundUrl) BEFORE creating an automation. ## What does it do? Provision a standalone inbound webhook and get its public receive URL (inboundUrl) BEFORE creating an automation. Webhook-first flow: provision, send a test payload to the URL (append ?test=1 to only capture a sample without running anything), inspect mappable payload paths with `get_inbound_webhook`, then pass the webhookId as trigger.webhookId to `create_automation`. ## Parameters `provision_inbound_webhook` takes no parameters. ## Behaviour The Speak AI MCP server publishes these behaviour hints for `provision_inbound_webhook`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call can have an extra effect. - Can reach systems outside Speak AI. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Update Webhook > Update an existing webhook. Source: https://docs.speakai.co/mcp/tools/webhooks/update_webhook/ · Markdown: https://docs.speakai.co/mcp/tools/webhooks/update_webhook/index.md Use the Speak AI MCP server tool `update_webhook` to update an existing webhook. ## What does it do? Update an existing webhook. This replaces the webhook config, so `callbackUrl` must always be supplied. ## Parameters `update_webhook` takes 4 parameters, 2 of them required. | Name | Type | Required | Description | | --- | --- | --- | --- | | `webhookId` | string | Yes | Unique identifier of the webhook | | `callbackUrl` | string | Yes | HTTPS endpoint URL to receive webhook payloads | | `events` | array of string | No | Updated array of event types | | `description` | string | No | Optional description for the webhook | ## Behaviour The Speak AI MCP server publishes these behaviour hints for `update_webhook`. - Can change data in your workspace. - Does not delete or overwrite existing data. - Repeating an identical call is safe. - Can reach systems outside Speak AI. ## Related - [Webhooks](/mcp/tools/webhooks/) lists the rest of the Webhooks category. - [Tool reference](/mcp/tools/) lists every Speak AI MCP server tool. - [MCP server](/mcp/) covers setup, supported clients, and what agents can do once connected. # Speak AI Node SDK, use @speakai/mcp-server as a library > Install @speakai/mcp-server as a Node dependency and call registerAllTools, registerResources, registerPrompts, and createSpeakClient directly in your own code. Source: https://docs.speakai.co/sdk/ · Markdown: https://docs.speakai.co/sdk/index.md The `@speakai/mcp-server` package is both a runnable MCP server and a Node library. Install it as a dependency when you want to call Speak AI from your own Node.js code, embed its tools inside another MCP server, or build the same capabilities into a different application. The package requires Node 22 or newer. ## When should you use the SDK instead of connecting through an AI client? Use the SDK when you're writing Node and want Speak AI's tool definitions, resource readers, and prompt templates as functions you call directly, instead of exposing them through a connected AI assistant. Speak AI's own backend, speak-server, uses the package this way, registering its tools on its own `McpServer` instance rather than connecting to the hosted endpoint. If you just want an agent to use Speak AI in conversation, connect through the [MCP server](/mcp) instead. Reach for the SDK when you're building the server side of that connection yourself. ## How do you install it? Add `@speakai/mcp-server` as a dependency with your package manager. ```sh npm install @speakai/mcp-server pnpm add @speakai/mcp-server yarn add @speakai/mcp-server bun add @speakai/mcp-server ``` ## What does the package export? The package exports five functions and a static tool-name manifest for embedding Speak AI's MCP capabilities directly in your own code. ```ts import { registerAllTools, registerResources, registerPrompts, createSpeakClient, formatAxiosError, SPEAK_MCP_TOOL_NAMES, } from "@speakai/mcp-server"; ``` - **`registerAllTools(server, client?)`** registers all 112 tools on an `McpServer` instance. Pass a `client` for server-side use with per-request auth. If you omit it, the tools fall back to a default Axios client that reads `SPEAK_API_KEY` (and optionally `SPEAK_BASE_URL`) from the environment, the same as stdio mode. - **`registerResources(server, client?)`** registers the 5 resources, media library, folders, languages, transcript, and insights, the same way. - **`registerPrompts(server)`** registers the 3 prompt templates: `analyze-meeting`, `research-across-media`, and `meeting-brief`. - **`createSpeakClient({ baseUrl, apiKey, accessToken })`** returns an authenticated Axios instance for services that already manage their own access tokens, instead of letting the package fetch and refresh one for you. - **`formatAxiosError(error)`** formats an Axios error into a readable string, redacting anything that looks like a token, secret, password, cookie, or API key before the message reaches a model's context window. - **`SPEAK_MCP_TOOL_NAMES`** is a static array of every tool name `registerAllTools` registers, useful for validating or routing a tool call without instantiating a server. ## How do you register the tools on your own server? Call `registerAllTools`, `registerResources`, and `registerPrompts` on your own `McpServer` instance to expose the same capabilities the hosted Speak AI MCP server does. ```ts import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; import { registerAllTools, registerResources, registerPrompts } from "@speakai/mcp-server"; const server = new McpServer({ name: "speak-ai", version: "1.0.0" }); registerAllTools(server); registerResources(server); registerPrompts(server); const transport = new StdioServerTransport(); await server.connect(transport); ``` With `SPEAK_API_KEY` set in the environment, this is the same registration sequence the package's own stdio entry point runs. ## How do you pass a client with its own access token? Use `createSpeakClient` when your own service already manages Speak AI access tokens, instead of letting the package authenticate with an API key on first use. ```ts import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { createSpeakClient, registerAllTools } from "@speakai/mcp-server"; const server = new McpServer({ name: "your-app", version: "1.0.0" }); const client = createSpeakClient({ baseUrl: "https://api.speakai.co", apiKey: "sk_test_speak_0000000000000000", accessToken: "your-access-token", }); registerAllTools(server, client); ``` ## Related guides - [MCP server overview](/mcp) - [Connect your AI tool](/mcp) - [Authentication](/mcp/authentication)