Skip to content

Send the Speak AI meeting assistant into your calls

Schedule the Speak AI meeting assistant to join a call, list your scheduled and past meeting events, and remove or delete an assistant booking.

Updated View as MarkdownAsk ClaudeOpen in ChatGPTllms.txt

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.

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.

Events List

GET/meeting-assistant/events

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:

googleMeet
zoom
microsoftTeams
webex

meetingStatus - Default value is ""

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

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
Example request
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'
Response

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.

{
  "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
      }
    ]
  }
}

Delete Scheduled Assistant

DELETE/meeting-assistant/events

Delete scheduled assistant for an event.

Parameters

Parameter In Type Required Description
meetingAssistantEventId query string Yes required field
Example request
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'
Response

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.

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

Remove Assistant from Meeting

POST/meeting-assistant/events/remove

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
Example request
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"
}'
Response

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.

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

Schedule Event

POST/meeting-assistant/events/schedule

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)
Example request
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"
}'
Response

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.

{
  "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"
  }
}

Get an API key on the Speak AI developer page.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close