Update Meeting Type
Update an existing meeting type
PATCH
Update Meeting Type
Update an existing meeting type to change its name, duration, or other settings.
When you pass a plain string, it is stored under the meeting type’s default language. When you pass an object, each key is a language code (e.g.
Host:
Meeting:
Endpoint
Request Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer <your-api-key> |
x-meetergo-api-user-id | Yes | UUID of the user who owns the meeting type |
Content-Type | Yes | application/json |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
meetingTypeId | string | Yes | UUID of the meeting type to update |
Request Body
All fields are optional. Only include the fields you want to update.| Field | Type | Description |
|---|---|---|
meetingInfo | object | Core meeting configuration (name, duration, channel, buffers, etc.) |
meetingOptions | object | Meeting options (channels, channel availability, etc.) |
enabled | boolean | Enable or disable the meeting type |
slug | string | URL-friendly identifier |
timeslotInterval | number | Timeslot interval in minutes (5-60) |
spots | number | Available spots per timeslot (1-100) |
bookingMinimum | number | Minimum booking notice in minutes |
locations | string[] | Address(es) for in-person meetings. When multiple are provided, attendee can choose. |
availabilityId | string | ID of an existing availability to associate |
ics | object | Calendar invite settings (title, description, location). See ics below. |
meetingInfo
| Field | Type | Description |
|---|---|---|
name | string | Display name for the meeting type |
description | string | Description shown on the booking page |
duration | number | Meeting duration in minutes (5-480) |
channel | string | Meeting channel type |
customChannelName | string | Display label for a custom meeting channel (used when channel is custom) |
customChannelLink | string | URL for the custom meeting channel (required when channel is custom) |
bufferBefore | number | Minutes blocked before meeting (0-120) |
bufferAfter | number | Minutes blocked after meeting (0-120) |
meetingOptions
| Field | Type | Description |
|---|---|---|
allowedChannels | string[] | Channel options the attendee can choose from. When more than one channel is provided, channel selection is automatically enabled. |
channelAvailabilities | object | Per-channel availability overrides. Each value is a UUID string or an inline availability object. See Create Meeting Type - channelAvailabilities. |
allowedDurations | number[] | Additional duration options in minutes |
allowAddingGuests | boolean | Allow attendees to invite additional guests |
allowPhoneOnlyBooking | boolean | Allow bookings without attendee email (phone as identifier). See Voice AI Bot |
ics
Customize the calendar invite (ICS) that attendees and hosts receive. Each field accepts either a plain string or a multi-language object.| Field | Type | Description |
|---|---|---|
title | string | object | Calendar event title template |
description | string | object | Calendar event description template |
location | string | object | Calendar event location template |
en, de) mapping to the template for that language.
Partial updates are supported: sending only description preserves the existing title and location. Sending { "de": "..." } preserves other languages within that field.
Dynamic Tags
Use these placeholders in your templates — they are replaced with actual values when the calendar invite is generated. Guest:| Tag | Description |
|---|---|
{!M.Guest.Fullname} | Full name |
{!M.Guest.FirstName} | First name |
{!M.Guest.LastName} | Last name |
{!M.Guest.Email} | Email address |
{!M.Guest.Phone} | Phone number |
{!M.Guest.QuestionsAndAnswers} | All form answers |
| Tag | Description |
|---|---|
{!M.Host.Fullname} | Full name |
{!M.Host.Email} | Email address |
| Tag | Description |
|---|---|
{!M.Meeting.Name} | Meeting type name |
{!M.Meeting.Description} | Meeting type description |
{!M.Meeting.Location} | Meeting location |
{!M.Meeting.Link} | Join link |
{!M.Meeting.Venue} | Venue / address |
{!M.Meeting.Start} | Start date and time |
{!M.Meeting.Reschedule} | Reschedule link |
{!M.Meeting.Cancel} | Cancellation link |
Examples
Update Name and Duration
Update Custom Channel
Update In-Person Location
The
locations field is used with the local (in-person at host) channel. When multiple locations are provided, the attendee can choose on the booking page.Update Channel Availabilities
Add or replace per-channel availability overrides:Inline availability objects are created automatically and stored as UUIDs. On subsequent reads,
channelAvailabilities values are always UUID strings.Update Calendar Invite
Customize what appears in the calendar event description:Update Calendar Invite (Multi-Language)
Provide different templates per language:You can mix string and object formats within the same request. In the example above,
location is a plain string while title and description use multi-language objects.Response
Success (200 OK)
Error Responses
404 Not Found
400 Bad Request - Validation Error
Related Endpoints
Create Meeting Type
Create a new meeting type
List Meeting Types
Get all meeting types
Update Meeting Type