← All action domains

Meetings

12 operations. Call each with POST https://app.chirply.io/api/v1/actions/<name> and a bearer token; the response is { "data": { "action", "summary", "result" } }. A read badge means the operation changes nothing; write requires the credential’s write scope.

Delete room

meetings.deletewriteconfirm

Delete a meeting room. Its join link stops working at once for everyone who has it — including invitees holding it in a booking confirmation — and it leaves the Meetings list. The history is kept: every past meeting's attendance, transcript, chat, recap and recording stays on the contacts' timelines and in the account. A member can delete only rooms they host or created; owners and admins can delete any room. Requires the Video Meetings app.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Parameters

FieldTypeRequiredDescription
meeting_idstring (uuid)requiredThe meeting room to delete.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.delete \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "meeting_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_delete at https://app.chirply.io/api/mcp, same bearer token, same input.

Open meeting room

meetings.getread

Fetch one meeting room — its settings, schedule, join link and live status — with its ten most recent meetings (when people were in it, how many came, and whether a recap or recording exists). Read-only. Requires the Video Meetings app.

Parameters

FieldTypeRequiredDescription
meeting_idstring (uuid)requiredThe meeting room's id (from meetings.list, meetings.start or meetings.schedule).

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.get \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "meeting_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_get at https://app.chirply.io/api/mcp, same bearer token, same input.

Meeting defaults

meetings.get_defaultsread

Read the account's default room settings — what every new meeting room starts with: waiting room and its video, lower thirds, timer, branding, guest permissions and live captions. Each room can then change its own. Read-only. Requires the Video Meetings app.

Parameters

No parameters — POST an empty body.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.get_defaults \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{}'
Test with your API key

Over MCP the same operation is the tool meetings_get_defaults at https://app.chirply.io/api/mcp, same bearer token, same input.

Meeting recap

meetings.get_sessionread

Fetch everything recorded about one meeting: who attended (name, email, matched contact, host or guest, minutes in the room), the live-caption transcript, the chat, the AI recap if one has been written, and the recording link if the host recorded it. Read-only. Requires the Video Meetings app.

Also answers to meeting transcript, who attended the meeting.

Parameters

FieldTypeRequiredDescription
session_idstring (uuid)requiredOne meeting's id — a single time people were in a room (from meetings.list_sessions or meetings.get).
include_transcriptbooleanoptionalfalse returns everything except the transcript and chat lines (their counts are still given) — useful for long meetings. Default: true

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.get_session \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "session_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_get_session at https://app.chirply.io/api/mcp, same bearer token, same input.

List meetings

meetings.listread

List the account's meeting rooms with their join links — live rooms first, then the most recently changed. Filter to upcoming rooms (scheduled from six hours ago onward, plus rooms with no set time) or to rooms with people in them right now, and search by title. Read-only. Requires the Video Meetings app.

Parameters

FieldTypeRequiredDescription
filter"all" | "upcoming" | "live"optionalall = every room; upcoming = scheduled from six hours ago onward or never scheduled; live = people are in it now. Default: "all"
searchstringoptionalText to match in the room's title.
limitintegeroptionalMax rooms to return (1–200). Default: 50

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.list \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "filter": "all",
    "search": "example"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_list at https://app.chirply.io/api/mcp, same bearer token, same input.

Meeting history

meetings.list_sessionsread

List past and in-progress meetings, newest first — each one a single time people were in a room: when it started and ended, the peak number of people, how many distinct attendees came, and whether a recap or recording exists. Give a room's id for that room's history, or omit it for recent meetings across every room. Read-only. Requires the Video Meetings app.

Parameters

FieldTypeRequiredDescription
meeting_idstring (uuid)optionalOnly this room's meetings. Omit for recent meetings across all rooms.
limitintegeroptionalMax meetings to return (1–100). Default: 20

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.list_sessions \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "meeting_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11",
    "limit": 20
  }'
Test with your API key

Over MCP the same operation is the tool meetings_list_sessions at https://app.chirply.io/api/mcp, same bearer token, same input.

My personal room

meetings.personal_roomwrite

Return a team member's permanent personal meeting room and its link, creating it the first time it is asked for — the same link every time, for that person's recurring calls. Anyone holding the link can ask to join from a web browser — no download and no account; with the waiting room on (the default) a host admits each guest, while members of this account go straight in. Creating it messages nobody. An API key names the member with user_id. Requires the Video Meetings app.

Also answers to my meeting link, personal meeting room.

Parameters

FieldTypeRequiredDescription
user_idstring (uuid)optionalWhose personal room. Defaults to the signed-in person; an API key has no person and must name a team member.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.personal_room \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_personal_room at https://app.chirply.io/api/mcp, same bearer token, same input.

Save meeting defaults

meetings.save_defaultswriteadmin only

Change the account's default room settings — the starting point for every meeting room created from now on, including personal rooms and booking-page rooms. Rooms that already exist keep their own settings. Omitted fields are left alone; nobody is notified. Owners and admins only. Requires the Video Meetings app.

Parameters

FieldTypeRequiredDescription
waiting_roombooleanoptionalGuests wait in a waiting room until a host lets them in, one by one or all at once. Members of this account never wait. Default on.
waiting_video_urlstring (uri) (or null)optionalA video guests watch while they wait — a YouTube, Vimeo or Loom link, or a direct https link to an .mp4, .webm, .mov or .m4v file. It plays muted and on a loop. Null removes it. Other links are refused.
waiting_messagestring (or null)optionalThe line shown under the waiting-room video, up to 280 characters. Null shows the standard wording.
lower_thirdsbooleanoptionalBroadcast-style name-and-title captions that slide in over a speaker's video when they join or are introduced. Default on.
lower_third_secondsintegeroptionalHow long a lower third stays on screen, in seconds (3–30). Default 8.
accent_colorstring (or null)optionalThe room's accent colour as #rrggbb. Null uses the account's brand colour.
logo_urlstring (uri) (or null)optionalAn https link to the logo shown in the room and the waiting room. Null uses the account's logo.
timer_minutesinteger (or null)optionalThe countdown a host starts with one click, in minutes (1–600). Everyone in the room sees it. Null hides the timer. Default 30.
guests_can_screen_sharebooleanoptionalGuests may share their screen; hosts always can. Default on.
guests_can_chatbooleanoptionalGuests may post in the room's chat; hosts always can. Default on.
transcribebooleanoptionalLive captions, shown to everyone in the room and saved as the meeting's searchable transcript — the transcript is what the AI recap reads. Default on.
mute_guests_on_entrybooleanoptionalGuests arrive with their microphone off. Default off.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.save_defaults \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "waiting_room": true,
    "waiting_video_url": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_save_defaults at https://app.chirply.io/api/mcp, same bearer token, same input.

Schedule meeting

meetings.schedulewrite

Create a video meeting room for a set time and return its join link — the Schedule meeting form. Give a start and either an end or a length; link a contact to show the meeting on their record. Anyone holding the link can ask to join from a web browser — no download and no account; with the waiting room on (the default) a host admits each guest, while members of this account go straight in. Scheduling messages nobody and adds nothing to any calendar — send the link in an invite or message yourself. (Appointments booked through a booking page get their rooms automatically.) Requires the Video Meetings app.

Also answers to schedule a video call, set up a zoom, book a video meeting.

Parameters

FieldTypeRequiredDescription
titlestringrequiredThe room's name, shown in Meetings and at the top of the room.
start_atstring (date-time)requiredWhen the meeting starts, as an ISO 8601 timestamp, e.g. 2026-11-10T15:00:00Z.
end_atstring (date-time)optionalWhen the meeting ends, as an ISO 8601 timestamp. Must be after the start.
duration_minutesintegeroptionalHow long the meeting runs, in minutes (5–1440), when end_at is not given. Defaults to 30.
contact_idstring (uuid)optionalThe contact this meeting is with. Shows the room on that contact. Guests who give an email in the room are matched to contacts either way.
host_user_idstring (uuid)optionalThe team member who hosts the room. Defaults to the signed-in person; an API key with no person leaves the room without a named host.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.schedule \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Example",
    "start_at": "2026-09-17T15:00:00Z"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_schedule at https://app.chirply.io/api/mcp, same bearer token, same input.

Start meeting

meetings.startwrite

Create an instant video meeting room and return its join link — the Start meeting button. Open the link to go in as the host; the room runs in the browser on the account's own domain, with no time limit. Anyone holding the link can ask to join from a web browser — no download and no account; with the waiting room on (the default) a host admits each guest, while members of this account go straight in. Creating a room messages nobody — share the link yourself. Requires the Video Meetings app.

Also answers to start a video call, new meeting link, instant meeting, zoom meeting.

Parameters

FieldTypeRequiredDescription
titlestringoptionalThe room's name. Defaults to "Meeting".
host_user_idstring (uuid)optionalThe team member who hosts the room. Defaults to the signed-in person; an API key with no person leaves the room without a named host.
contact_idstring (uuid)optionalThe contact this meeting is with. Shows the room on that contact. Guests who give an email in the room are matched to contacts either way.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.start \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Example",
    "host_user_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_start at https://app.chirply.io/api/mcp, same bearer token, same input.

Summarize with AI

meetings.summarize_sessionwriteconfirm

Write the AI recap of one meeting from its transcript and chat — an overview, the decisions, action items with their owners when named, and follow-ups — and save it on the meeting, replacing any earlier recap. Each call is one AI completion billed to the account's own AI connection (OpenRouter key). Refused when the meeting has no transcript or chat, or when the account has no AI connection. Requires the Video Meetings app.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to meeting notes, meeting minutes, meeting summary.

Parameters

FieldTypeRequiredDescription
session_idstring (uuid)requiredThe meeting to summarize.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.summarize_session \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "session_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_summarize_session at https://app.chirply.io/api/mcp, same bearer token, same input.

Save room settings

meetings.updatewrite

Change a meeting room's title, schedule, host, contact or any room setting — waiting room and its video, lower thirds, timer, branding, guest permissions, live captions. Omitted fields are left alone; the join link never changes. Settings apply the next time someone joins, and nobody is notified. A member can change only rooms they host or created; owners and admins can change any room. Requires the Video Meetings app.

Parameters

FieldTypeRequiredDescription
meeting_idstring (uuid)requiredThe meeting room's id (from meetings.list, meetings.start or meetings.schedule).
titlestringoptionalThe room's name, shown in Meetings and at the top of the room.
start_atstring (date-time) (or null)optionalNew start time (ISO 8601), or null to make it a room with no set time.
end_atstring (date-time) (or null)optionalNew end time (ISO 8601), or null to clear it.
host_user_idstring (uuid) (or null)optionalThe team member who hosts the room, or null for no named host.
contact_idstring (uuid) (or null)optionalThe contact this meeting is with, or null to unlink it.
waiting_roombooleanoptionalGuests wait in a waiting room until a host lets them in, one by one or all at once. Members of this account never wait. Default on.
waiting_video_urlstring (uri) (or null)optionalA video guests watch while they wait — a YouTube, Vimeo or Loom link, or a direct https link to an .mp4, .webm, .mov or .m4v file. It plays muted and on a loop. Null removes it. Other links are refused.
waiting_messagestring (or null)optionalThe line shown under the waiting-room video, up to 280 characters. Null shows the standard wording.
lower_thirdsbooleanoptionalBroadcast-style name-and-title captions that slide in over a speaker's video when they join or are introduced. Default on.
lower_third_secondsintegeroptionalHow long a lower third stays on screen, in seconds (3–30). Default 8.
accent_colorstring (or null)optionalThe room's accent colour as #rrggbb. Null uses the account's brand colour.
logo_urlstring (uri) (or null)optionalAn https link to the logo shown in the room and the waiting room. Null uses the account's logo.
timer_minutesinteger (or null)optionalThe countdown a host starts with one click, in minutes (1–600). Everyone in the room sees it. Null hides the timer. Default 30.
guests_can_screen_sharebooleanoptionalGuests may share their screen; hosts always can. Default on.
guests_can_chatbooleanoptionalGuests may post in the room's chat; hosts always can. Default on.
transcribebooleanoptionalLive captions, shown to everyone in the room and saved as the meeting's searchable transcript — the transcript is what the AI recap reads. Default on.
mute_guests_on_entrybooleanoptionalGuests arrive with their microphone off. Default off.

Example

curl -X POST https://app.chirply.io/api/v1/actions/meetings.update \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "meeting_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool meetings_update at https://app.chirply.io/api/mcp, same bearer token, same input.

The machine-readable version of this page is GET https://app.chirply.io/api/v1/actions?domain=meetings — same operations, with full JSON Schemas. Authentication, errors and rate limits are covered in the API documentation home.