Momence MCP by usefulapi
Look up Momence members, class schedules, bookings and memberships, and handle front-desk actions.
Should I use this
Quality & Safety
Findings (3)
- LOWin momence_list_member_session_bookings
- LOWin momence_list_member_appointments
- LOWin momence_list_member_memberships
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"momence": {
"url": "https://momence.usefulapi.io/mcp"
}
}
}Remote endpoints
https://momence.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (23)
🟢momence_get_current_user
Return the staff user the API is acting as (userId, email, name). A cheap way to confirm the credentials work. Momence: GET /api/v2/auth/profile.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_members(query, filterPreset, staticSegmentId, sortBy, sortOrder, ...)
List or search the studio's customers (members), with visit counts, custom fields and tags. Search by name, email or phone with `query`; use filterPreset=with-active-membership for current members. Momence: GET /api/v2/host/members.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Search customers by name, email or phone.",
"type": "string"
},
"filterPreset": {
"description": "Only customers with an active membership.",
"type": "string",
"enum": [
"with-active-membership"
]
},
"staticSegmentId": {
"description": "Only customers in this static segment.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"sortBy": {
"description": "Field to sort by.",
"type": "string",
"enum": [
"lastSeenAt",
"firstSeenAt",
"firstName",
"lastName",
"email"
]
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_get_member(memberId)
Fetch one customer by id: contact details, first/last seen, visit counts, custom fields and tags. Momence: GET /api/v2/host/members/{memberId}.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
}
},
"required": [
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_member_session_bookings(memberId, startAfter, startBefore, endAfter, endBefore, ...)
List the class/session bookings of one member, with the session details and check-in state. Momence: GET /api/v2/host/members/{memberId}/sessions.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"startAfter": {
"description": "Only sessions starting after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"startBefore": {
"description": "Only sessions starting before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endAfter": {
"description": "Only sessions ending after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endBefore": {
"description": "Only sessions ending before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"includeCancelled": {
"description": "Also include cancelled bookings.",
"type": "boolean"
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_member_appointments(memberId, startAfter, startBefore, endAfter, endBefore, ...)
List the appointment reservations (1:1 services) of one member. Momence: GET /api/v2/host/members/{memberId}/appointments.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"startAfter": {
"description": "Only appointments starting after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"startBefore": {
"description": "Only appointments starting before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endAfter": {
"description": "Only appointments ending after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endBefore": {
"description": "Only appointments ending before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"includeCancelled": {
"description": "Also include cancelled appointments.",
"type": "boolean"
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-200 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"required": [
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_member_notes(memberId, sortBy, sortOrder, page, pageSize)
List the staff notes (regular and SOAP) recorded on one member. Momence: GET /api/v2/host/members/{memberId}/notes.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"sortBy": {
"description": "Field to sort by.",
"type": "string",
"enum": [
"createdAt",
"modifiedAt"
]
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_member_memberships(memberId, includeFrozen, page, pageSize)
List one member's active subscriptions and class packs (bought memberships): type, dates, credits left, usage limits and freeze state. Momence: GET /api/v2/host/members/{memberId}/bought-memberships/active.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"includeFrozen": {
"description": "Also include frozen memberships.",
"type": "boolean"
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-200 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"required": [
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_sessions(startAfter, startBefore, endAfter, endBefore, types, ...)
List the studio's scheduled sessions — classes, events, courses — with time, teacher, location, capacity and booking count. Filter by date window, type, teacher or location. Momence: GET /api/v2/host/sessions.
Input Schema
{
"type": "object",
"properties": {
"startAfter": {
"description": "Only sessions starting after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"startBefore": {
"description": "Only sessions starting before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endAfter": {
"description": "Only sessions ending after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endBefore": {
"description": "Only sessions ending before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"types": {
"description": "Only these session types.",
"type": "array",
"items": {
"type": "string",
"enum": [
"private",
"special-event",
"special-event-new",
"retreat",
"fitness",
"course",
"course-class",
"semester",
"recital"
]
}
},
"teacherId": {
"description": "Only sessions taught by this teacher.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"locationId": {
"description": "Only sessions at this location.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"includeChildLocations": {
"description": "With locationId, also include its child locations.",
"type": "boolean"
},
"includeCancelled": {
"description": "Also include cancelled sessions.",
"type": "boolean"
},
"sortBy": {
"description": "Field to sort by.",
"type": "string",
"enum": [
"name",
"startsAt",
"endsAt"
]
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-200 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_get_session(sessionId)
Fetch one session's detail: times, capacity and booking count, waitlist capacity and count, teachers, location, online stream details and tags. Momence: GET /api/v2/host/sessions/{sessionId}.
Input Schema
{
"type": "object",
"properties": {
"sessionId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The session id."
}
},
"required": [
"sessionId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_session_bookings(sessionId, includeCancelled, sortBy, sortOrder, page, ...)
List who is booked into one session — the class roster — with each booking's id, member, check-in state and recurring-booking id. Momence: GET /api/v2/host/sessions/{sessionId}/bookings.
Input Schema
{
"type": "object",
"properties": {
"sessionId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The session id."
},
"includeCancelled": {
"description": "Also include cancelled bookings.",
"type": "boolean"
},
"sortBy": {
"description": "Field to sort by.",
"type": "string",
"enum": [
"createdAt",
"firstName",
"lastName"
]
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"sessionId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_appointments(startAfter, startBefore, endAfter, endBefore, includeCancelled, ...)
List all appointment reservations across the studio (service, teacher, time, price, paid state, attendees). Momence: GET /api/v2/host/appointments/reservations.
Input Schema
{
"type": "object",
"properties": {
"startAfter": {
"description": "Only appointments starting after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"startBefore": {
"description": "Only appointments starting before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endAfter": {
"description": "Only appointments ending after (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"endBefore": {
"description": "Only appointments ending before (ISO 8601 date-time, e.g. 2026-10-01T00:00:00Z).",
"type": "string"
},
"includeCancelled": {
"description": "Also include cancelled appointments.",
"type": "boolean"
},
"includeCancelledAttendees": {
"description": "Also include attendees who cancelled.",
"type": "boolean"
},
"isPaid": {
"description": "Only paid (true) or unpaid (false) appointments.",
"type": "boolean"
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-200 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_memberships(includeDisabled, onlyFeatured, compatibleWithSessionId, compatibleWithAppointmentId, sortBy, ...)
List the membership plans the studio sells (subscriptions, class packs, money packs): pricing, duration, credits, usage limits, trial and intro-offer flags. Optionally only plans usable for a given session or appointment. Momence: GET /api/v2/host/memberships.
Input Schema
{
"type": "object",
"properties": {
"includeDisabled": {
"description": "Also include disabled plans.",
"type": "boolean"
},
"onlyFeatured": {
"description": "Only featured plans.",
"type": "boolean"
},
"compatibleWithSessionId": {
"description": "Only plans that can pay for this session.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"compatibleWithAppointmentId": {
"description": "Only plans that can pay for this appointment.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"sortBy": {
"description": "Field to sort by.",
"type": "string",
"enum": [
"name",
"orderNumber"
]
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-200 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_tags(sortOrder, page, pageSize)
List the customer tags defined for the studio (ids for momence_set_member_tag). Momence: GET /api/v2/host/tags.
Input Schema
{
"type": "object",
"properties": {
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_customer_leads(query, sourceId, stageId, sortOrder, page, ...)
List the studio's sales leads, open and converted (a non-null memberId means converted). Filter by search text, lead source or pipeline stage; resolve the ids with momence_list_lead_sources / momence_list_lead_stages. Momence: GET /api/v2/host/customer-leads.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Search leads by first name, last name, email or phone.",
"type": "string"
},
"sourceId": {
"description": "Only leads from this lead source.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"stageId": {
"description": "Only leads in this lead stage.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_lead_sources(query, sortOrder, page, pageSize)
List lead sources (resolves the sourceId on customer leads). Momence: GET /api/v2/host/customer-lead-sources.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Search lead sources by name.",
"type": "string"
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢momence_list_lead_stages(query, sortBy, sortOrder, page, pageSize)
List lead pipeline stages (resolves the stageId on customer leads). Momence: GET /api/v2/host/customer-lead-stages.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Search lead stages by name.",
"type": "string"
},
"sortBy": {
"description": "Field to sort by.",
"type": "string",
"enum": [
"name",
"order"
]
},
"sortOrder": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
},
"page": {
"description": "Page number, starting at 0 (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pageSize": {
"description": "Rows per page, 1-100 (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_create_member(email, firstName, lastName, phoneNumber, homeLocationId)
Add a new customer to the studio. Returns the new memberId. Momence: POST /api/v2/host/members.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "The customer's email address."
},
"firstName": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "First name."
},
"lastName": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Last name."
},
"phoneNumber": {
"description": "Phone number.",
"type": "string"
},
"homeLocationId": {
"description": "The customer's home location id.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"email",
"firstName",
"lastName"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_update_member(memberId, firstName, lastName, email, phoneNumber)
Correct a customer's contact details. Give firstName+lastName together to rename, and/or email, and/or phoneNumber; each is a separate Momence call (PUT /api/v2/host/members/{memberId}/name, /email, /phone-number) and they run in that order, stopping at the first failure.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"firstName": {
"description": "New first name (requires lastName too).",
"type": "string",
"minLength": 1
},
"lastName": {
"description": "New last name (requires firstName too).",
"type": "string",
"minLength": 1
},
"email": {
"description": "New email address.",
"type": "string",
"minLength": 1
},
"phoneNumber": {
"description": "New phone number.",
"type": "string",
"minLength": 1
}
},
"required": [
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_set_member_tag(memberId, tagId, assigned)
Assign a customer tag to a member (assigned=true) or remove it (assigned=false). Fully reversible. Tag ids come from momence_list_tags. Momence: POST / DELETE /api/v2/host/members/{memberId}/tags/{tagId}.
Input Schema
{
"type": "object",
"properties": {
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"tagId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The tag id."
},
"assigned": {
"type": "boolean",
"description": "true to assign the tag, false to remove it."
}
},
"required": [
"memberId",
"tagId",
"assigned"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_book_member_free(sessionId, memberId, createRecurringBooking)
Add a member to a session at no charge (a comp booking), optionally as a recurring booking for every occurrence of a recurring class. Returns the sessionBookingId. Undo with momence_cancel_session_booking. Momence: POST /api/v2/host/sessions/{sessionId}/bookings/free.
Input Schema
{
"type": "object",
"properties": {
"sessionId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The session id."
},
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"createRecurringBooking": {
"description": "Also book every future occurrence (recurring sessions only).",
"type": "boolean"
}
},
"required": [
"sessionId",
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_add_member_to_waitlist(sessionId, memberId, useBoughtMembershipIds)
Put a member on a session's waitlist. If a spot opens and they are booked from the waitlist, Momence uses the best matching bought membership unless you name specific ones in useBoughtMembershipIds. Returns the waitlistBookingId. Momence: POST /api/v2/host/sessions/{sessionId}/waitlist/bookings.
Input Schema
{
"type": "object",
"properties": {
"sessionId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The session id."
},
"memberId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The member id."
},
"useBoughtMembershipIds": {
"description": "Bought memberships to try when booking from the waitlist.",
"type": "array",
"items": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
}
},
"required": [
"sessionId",
"memberId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_set_booking_check_in(bookingId, checkedIn)
Mark a session booking as checked in (checkedIn=true) or undo the check-in (checkedIn=false). Booking ids come from momence_list_session_bookings. Momence: POST / DELETE /api/v2/host/session-bookings/{bookingId}/check-in.
Input Schema
{
"type": "object",
"properties": {
"bookingId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The session booking id."
},
"checkedIn": {
"type": "boolean",
"description": "true to check in, false to undo the check-in."
}
},
"required": [
"bookingId",
"checkedIn"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴momence_cancel_session_booking(bookingId, refund, isLateCancellation, disableNotifications)
Cancel a SINGLE session booking (not a recurring series). By default: NO refund, NOT treated as a late cancellation (no penalty), and the member IS notified. Set refund=true only to return the member's payment or credit; isLateCancellation=true applies the studio's late-cancel policy. Not undoable except by re-booking. Momence: DELETE /api/v2/host/session-bookings/{bookingId}.
Input Schema
{
"type": "object",
"properties": {
"bookingId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The session booking id."
},
"refund": {
"description": "Refund the member's payment/credit for this booking (default false).",
"type": "boolean"
},
"isLateCancellation": {
"description": "Treat as a late cancellation under the studio policy (default false).",
"type": "boolean"
},
"disableNotifications": {
"description": "Suppress the cancellation notification to the member (default false).",
"type": "boolean"
}
},
"required": [
"bookingId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence