---
title: "Send the Speak AI meeting assistant into your calls"
description: "Schedule the Speak AI meeting assistant to join a call, list your scheduled and past meeting events, and remove or delete an assistant booking."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.speakai.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Send the Speak AI meeting assistant into your calls


import EndpointIndex from "@/components/api/EndpointIndex.astro";

The Speak AI API exposes 4 meeting assistant 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 Meeting Assistant Events.

Fetch all your scheduled, complete or pending meeting assistant events.

## What can you do with the meeting assistant endpoints?

Speak AI groups these 4 endpoints under the meeting assistant resource. Each entry below links to the full reference for that endpoint further down this page.

| Method | Path | What it does |
| --- | --- | --- |
| `GET` | [`/meeting-assistant/events`](#get-meeting-assistant-events) | Events List |
| `DELETE` | [`/meeting-assistant/events`](#delete-meeting-assistant-events) | Delete Scheduled Assistant |
| `POST` | [`/meeting-assistant/events/remove`](#post-meeting-assistant-events-remove) | Remove Assistant from Meeting |
| `POST` | [`/meeting-assistant/events/schedule`](#post-meeting-assistant-events-schedule) | Schedule Event |

<h2 id="get-meeting-assistant-events">Events List</h2>

Get All the Meeting Assistants Events.

You can have more flexibily by passing query params.

`page` - Page number. Default is 0.

`pageSize` - Total records per page. Default is 25.

`platformType` - Default value is `""`

Please ensure to pass the correct platformType from the list below:

```text
googleMeet
zoom
microsoftTeams
webex

```

`meetingStatus` - Default value is `""`

Please ensure to pass the correct meetingStatus from the list below:

```text
willJoin
scheduled
cancelled
ready
joiningCall
inCallRecording
callEnded

```

### Parameters

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `platformType` | query | string | No |  |
| `meetingStatus` | query | string | No |  |
| `page` | query | integer | No |  |
| `pageSize` | query | integer | No |  |

<div slot="code">

<CodePanel label="Example request">

```bash
curl -X GET 'https://api.speakai.co/v1/meeting-assistant/events?page=0&pageSize=25' \
  -H 'x-speakai-key: sk_test_speak_0000000000000000' \
  -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000'
```

</CodePanel>

<ResponsePanel id="get-meeting-assistant-events" statuses={[{"code":"200","description":"OK"}]}>

<div slot="status-200">

**`200` OK**

Response body, `application/json`.

| Field | Type |
| --- | --- |
| `status` | string |
| `data` | object |
| `data.totalCount` | integer |
| `data.events` | object[] |

Deeper nested fields are not listed. See the example response below for the full shape.

Example response (Events List), `application/json`. Arrays are shortened to one entry and long strings are cut.

```json
{
  "status": "success",
  "data": {
"totalCount": 1,
"events": [
  {
    "source": "instant",
    "_id": "64d2633e0d3c560cd10c73fd",
    "currentStatus": "callEnded",
    "companyId": "5e21xxxxx772xxxxxxx",
    "userId": "5d0xxxxxxbca272xxxxxx",
    "platform": "zoom",
    "title": "Speak Ai Test Meeting",
    "meetingURL": "ZOOM_MEETING_LINK",
    "startTime": "2023-08-08T15:45:41.629Z",
    "meetingAssistantEventId": "84f8f7d1cb13",
    "attendees": [],
    "history": [
      {
        "status": "joiningCall",
        "createdAt": "2023-08-08T15:46:10.004Z"
      }
    ],
    "createdAt": "2023-08-08T15:46:06.570Z",
    "updatedAt": "2023-08-08T16:31:15.046Z",
    "__v": 0
  }
]
  }
}
```

</div>

</ResponsePanel>

</div>

<h2 id="delete-meeting-assistant-events">Delete Scheduled Assistant</h2>

Delete `scheduled` assistant for an event.

### Parameters

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `meetingAssistantEventId` | query | string | Yes | required field |

<div slot="code">

<CodePanel label="Example request">

```bash
curl -X DELETE 'https://api.speakai.co/v1/meeting-assistant/events?meetingAssistantEventId=7c583b090b1f' \
  -H 'x-speakai-key: sk_test_speak_0000000000000000' \
  -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000'
```

</CodePanel>

<ResponsePanel id="delete-meeting-assistant-events" statuses={[{"code":"200","description":"OK"}]}>

<div slot="status-200">

**`200` OK**

Response body, `application/json`.

| Field | Type |
| --- | --- |
| `status` | string |
| `data` | object |
| `data.status` | string |
| `data.data` | string |

Example response (Delete a Scheduled Meeting Assistant), `application/json`.

```json
{
  "status": "success",
  "data": {
"status": "success",
"data": "Event Deleted Successfully"
  }
}
```

</div>

</ResponsePanel>

</div>

<h2 id="post-meeting-assistant-events-remove">Remove Assistant from Meeting</h2>

Remove the assistant from a meeting. POST with `meetingAssistantEventId` in the JSON body.

### 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 |
| --- | --- |
| `meetingAssistantEventId` | string |

<div slot="code">

<CodePanel label="Example request">

```bash
curl -X POST 'https://api.speakai.co/v1/meeting-assistant/events/remove' \
  -H 'x-speakai-key: sk_test_speak_0000000000000000' \
  -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \
  -H 'Content-Type: application/json' \
  -d '{
  "meetingAssistantEventId": "your_event_id_here"
}'
```

</CodePanel>

<ResponsePanel id="post-meeting-assistant-events-remove" statuses={[{"code":"200","description":"OK"}]}>

<div slot="status-200">

**`200` OK**

Response body, `application/json`.

| Field | Type |
| --- | --- |
| `status` | string |
| `data` | object |
| `data.status` | string |
| `data.data` | string |

Example response (Remove a Assistant From Meeting), `application/json`.

```json
{
  "status": "success",
  "data": {
"status": "success",
"data": "Meeting Assistant Removed Successfully"
  }
}
```

</div>

</ResponsePanel>

</div>

<h2 id="post-meeting-assistant-events-schedule">Schedule Event</h2>

#### Schedule Meeting Event

This endpoint allows you to schedule a meeting event by providing the meeting details.

**Request Body**

- `meetingDate` (optional): The date and time for the scheduled meeting. If not provided, the meeting will be joined instantly.

- `meetingLanguage` (optional): The language for the meeting. Default is en-US.

- `meetingURL` (required): The URL of the meeting.

- `title` (required): The title of the meeting.

- `tags` (optional): You can pass comma seprated values to store as tags for your media files.

**Response**

- `status`: The status of the response.

- `data`: An object containing details of the scheduled meeting event, including the company ID, user ID, meeting assistant ID, platform, source, meeting URL, start time, title, meeting language, current status, event ID, attendees, history, chat messages, creation and update timestamps, and version.

### 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 |
| --- | --- |
| `title` | string |
| `meetingURL` | string |
| `meetingLanguage` | string |
| `meetingDate` | string (date-time) |

<div slot="code">

<CodePanel label="Example request">

```bash
curl -X POST 'https://api.speakai.co/v1/meeting-assistant/events/schedule' \
  -H 'x-speakai-key: sk_test_speak_0000000000000000' \
  -H 'x-access-token: eyJhbGciOiJIUzI1NiJ9.test-access-token.0000000000' \
  -H 'Content-Type: application/json' \
  -d '{
  "title": "Team Standup",
  "meetingURL": "https://meet.google.com/abc-defg-hij",
  "meetingLanguage": "en-US",
  "meetingDate": "2026-06-01T10:00:00.000Z"
}'
```

</CodePanel>

<ResponsePanel id="post-meeting-assistant-events-schedule" statuses={[{"code":"200","description":"OK"}]}>

<div slot="status-200">

**`200` OK**

Response body, `application/json`.

| Field | Type |
| --- | --- |
| `status` | string |
| `data` | object |
| `data.companyId` | string |
| `data.userId` | string |
| `data.platform` | string |
| `data.source` | string |
| `data.meetingURL` | string |
| `data.startTime` | string (date-time) |
| `data.title` | string |
| `data.meetingLanguage` | string |
| `data.currentStatus` | string |
| `data._id` | string |
| `data.meetingAssistantEventId` | string |
| `data.attendees` | any[] |
| `data.history` | any[] |
| `data.createdAt` | string (date-time) |
| `data.updatedAt` | string (date-time) |
| `data.__v` | integer |
| `data.message` | string |

Example response (Schedule Event), `application/json`.

```json
{
  "status": "success",
  "data": {
"companyId": "5e28dd2d77242c222222222",
"userId": "5d03a9d225d42a272e9c229",
"platform": "googleMeet",
"source": "instant",
"meetingURL": "https://meet.google.com/ctg-wcqv-xxxx",
"startTime": "2023-12-19T20:20:06.823Z",
"title": "Meeting Title",
"meetingLanguage": "en-US",
"currentStatus": "scheduled",
"_id": "6581faf3e7435ce0e78ad6b0",
"meetingAssistantEventId": "89c69e5afcc3",
"attendees": [],
"history": [],
"createdAt": "2023-12-19T20:20:03.208Z",
"updatedAt": "2023-12-19T20:20:03.208Z",
"__v": 0,
"message": "Meeting scheduled Successfully"
  }
}
```

</div>

</ResponsePanel>

</div>

## 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-meeting-assistant).

Source: https://docs.speakai.co/api/meeting-assistant/index.mdx
