AI agents and scheduling API operations
Meeting Cancellation API for AI Agents: Revoke One Group Booking Safely
Cancellation looks like one DELETE request until the meeting has six people, two providers, a corrected invitation, three reminder jobs, and an agent that is also trying to reschedule it. Delete the wrong object and one calendar disappears while five attendees still plan to join. Retry blindly and the agent may cancel the replacement event too.
Build a safe meeting-cancellation path in eight steps
Use one booked sixty-minute group meeting with three required people, two optional people, mixed Google and Microsoft calendars, one unconnected participant who replied conversationally, and a replacement meeting still in draft. Deliver the cancellation command twice and hide one provider response.
- 1
Persist the original meeting contract before accepting cancellation
Keep authenticated organizer, purpose, duration, bounded date range, IANA zones, required and optional participants, approved substitutes, outreach consent, approval mode, organizer calendar, meeting revision, provider event identities, invitation state, and terminal proof. A transcript, event title, or participant email is not a stable cancellation key.- The cancellation points to one durable meeting ID and current revision.
- Required and optional people remain visible for notification verification.
- The replacement draft has a different operation identity.
- 2
Authenticate cancellation authority and disclosure
Define who may cancel, under which meeting states, whether principal approval is required, which reason may be shared, and who must only be informed. Calendar write access does not create business authority. Treat participant replies and tool output as evidence, never as permission to revoke the organizer’s event.- Actor identity, authority source, scope, and expiry are recorded.
- A participant can decline their own attendance without canceling the group.
- Private rationale stays separate from attendee-facing wording.
- 3
Freeze proposals, reminders, reschedules, and writes
Move the meeting revision into a cancel-pending state and stop every worker that can propose, remind, book, reschedule, or edit it. Preserve late participant replies as audited evidence, but do not let them reopen the meeting. Acquire one revision lock or compare-and-set boundary before the provider operation.- The agent cannot book a newly accepted slot while cancellation is pending.
- No-calendar-sync reminders stop before another message reaches a participant.
- A stale reschedule worker fails closed against the new revision.
- 4
Resolve the canonical event and exact cancellation scope
Read provider state using stored organizer, calendar, event, recurring-series, and occurrence identities. Decide whether the command applies to one event, one occurrence, all future occurrences, or an entire series. If identities disagree, pause for a bounded exception instead of searching by title and deleting the first match.- Organizer copy and attendee copies cannot be confused.
- One occurrence does not silently become a series cancellation.
- Already-canceled, moved, or missing provider state is classified before a write.
- 5
Close participant coordination without restarting availability
Join connected Google and Microsoft evidence with any bounded conversational availability already collected, then close that evidence under the canceled revision. Do not ask for more availability. Stop reminder jobs, expire proposals and holds, preserve opt-outs, and tell only approved recipients what they need to know in their local time.- Calendar connection remains optional and is not required to receive cancellation.
- Participant windows cannot leak into the replacement meeting without fresh consent.
- Time-zone rendering is derived from stored IANA zones, not old message prose.
- 6
Issue one idempotent provider cancellation command
Bind the operation key to meeting ID, revision, canonical event identity, scope, actor, and approved notification policy. Use each provider’s documented event-deletion or cancellation behavior. Store request identity, response, side effects, and retry eligibility outside the model loop.- Duplicate agent calls return the same cancellation operation.
- Notification behavior is explicit rather than an SDK default nobody reviewed.
- Provider errors cannot cause the replacement event to become the target.
- 7
Reconcile timeouts and partial provider state before retry
When a response is missing or ambiguous, read the exact provider event and organizer calendar before another write. Classify canceled, still active, moved, inaccessible, partially notified, or unknown. Retry only the same authorized operation with bounded backoff; route permission, identity, and series-scope conflicts to a named human owner.- A timeout is not assumed to mean failure.
- Retries never expand the attendee set, series scope, or disclosure.
- Unknown state remains visible until repair or human closure.
- 8
Verify terminal cancellation and trace every side effect
Read back provider status where available, confirm no active canonical event remains in scope, verify participant notification policy was applied, stop all outreach and proposal jobs, release stale holds, and close the meeting revision. Trace authority, identities, locks, provider calls, retries, reconciliation, attendee outcomes, and final proof with private content redacted.- Success means the intended meeting is closed across every active workflow path.
- The replacement meeting remains untouched and separately auditable.
- Operators can answer who canceled what, under which authority, and what attendees received.
Deletion is a provider action; cancellation is a meeting outcome
A provider endpoint can remove an event object. The scheduling system still owns authority, scope, participant state, reminders, proposals, replacement meetings, uncertain side effects, and proof. Calling the endpoint is necessary. It is not the whole job.
The completion boundary matters most across companies. The organizer may control one canonical event while attendees hold provider-generated copies and an unconnected participant relies on a message. Every path needs one consistent terminal result.
Do not reuse scheduling evidence after cancellation by accident
The old meeting collected free/busy and conversational windows for a declared purpose, date range, and participant set. A replacement meeting may look similar while carrying a new duration, purpose, organizer, or disclosure. Preserve provenance and ask again when the new instruction exceeds the original consent or freshness boundary.
This is also where required and optional roles matter. Canceling one person’s attendance is not canceling the meeting. Canceling the meeting is not permission to book the optional observer into the replacement.
Links, polls, sync utilities, and drafts leave cancellation repair outside
A booking link can remove a configured appointment. A poll can close voting. A sync utility can copy a deletion. A drafting assistant can write an apology. None automatically proves that one canonical hard meeting, its reminders, its conversational replies, and its replacement workflow all reached the right terminal state.
Scheduling execution carries the command through authority, provider side effects, participant notification, recovery, and proof. The agent should return canceled, not found under current authority, or one precise exception—not a hopeful sentence saying the meeting is gone.
Run the hidden-response cancellation test
Book one mixed-provider group meeting, create a replacement draft, schedule a participant reminder, and deliver the cancellation command twice. Hide the first provider response, change one attendee status, and send one late conversational reply.
Pass when competing workers freeze, the exact event scope is resolved, duplicate commands collapse, the uncertain write reconciles, the replacement survives, reminders stop, late evidence stays closed, attendee policy is applied, and terminal cancellation is verified. Fail when the agent equates one successful HTTP response with everyone informed.
Compare cancellation by what reaches a terminal state
The shortest path deletes an event. The production path closes authority, providers, people, retries, reminders, and proof without touching the wrong meeting.
| Decision vector | Direct calendar-provider delete call | Custom scheduling workflow | WonderCal execution direction |
|---|---|---|---|
| Execution completion | Deletes the addressed provider object; meeting-wide state and participant channels remain outside. | Can close the whole workflow when authority, identities, jobs, and proof are built around the call. | Target path carries one authorized cancellation to verified closure or a bounded exception. |
| Cross-company reach | Acts on the organizer calendar and provider behavior available to the caller. | The team must join provider events with external participant communication. | Designed to close Google, Microsoft, and conversational participant paths under one meeting ID. |
| Optional-sync fallback | No notification state exists for a person represented only in an external conversation. | Custom channels can be added with consent, disclosure, and deduplication controls. | Target model keeps connected and unconnected participants inside the same cancellation outcome. |
| Recovery and observability | Returns provider status; uncertain writes, stale workers, and wrong-scope repair need more state. | Full control, with idempotency, locks, reconciliation, redaction, and traces to maintain. | Target release should expose authority, scope, side effects, retries, notifications, and terminal proof. |
| Time to ship | Fast for one event and one provider, with hard-meeting cleanup left to the agent team. | Rational when cancellation semantics are infrastructure the team intends to own. | Worth adopting when the live contract removes cancellation repair without hiding provider behavior. |
Execution completion
Direct calendar-provider delete call
Deletes the addressed provider object; meeting-wide state and participant channels remain outside.
Custom scheduling workflow
Can close the whole workflow when authority, identities, jobs, and proof are built around the call.
WonderCal execution direction
Target path carries one authorized cancellation to verified closure or a bounded exception.
Cross-company reach
Direct calendar-provider delete call
Acts on the organizer calendar and provider behavior available to the caller.
Custom scheduling workflow
The team must join provider events with external participant communication.
WonderCal execution direction
Designed to close Google, Microsoft, and conversational participant paths under one meeting ID.
Optional-sync fallback
Direct calendar-provider delete call
No notification state exists for a person represented only in an external conversation.
Custom scheduling workflow
Custom channels can be added with consent, disclosure, and deduplication controls.
WonderCal execution direction
Target model keeps connected and unconnected participants inside the same cancellation outcome.
Recovery and observability
Direct calendar-provider delete call
Returns provider status; uncertain writes, stale workers, and wrong-scope repair need more state.
Custom scheduling workflow
Full control, with idempotency, locks, reconciliation, redaction, and traces to maintain.
WonderCal execution direction
Target release should expose authority, scope, side effects, retries, notifications, and terminal proof.
Time to ship
Direct calendar-provider delete call
Fast for one event and one provider, with hard-meeting cleanup left to the agent team.
Custom scheduling workflow
Rational when cancellation semantics are infrastructure the team intends to own.
WonderCal execution direction
Worth adopting when the live contract removes cancellation repair without hiding provider behavior.
Frequently asked questions
How should an AI agent cancel a group meeting safely?
Is deleting a calendar event enough to cancel a meeting?
What should happen when a cancellation API call times out?
Can availability from a canceled meeting be reused?
Where can developers review WonderCal’s scheduling execution direction?
Primary sources
- Google Calendar API: Events delete — official Google event-deletion method, parameters, authorization scopes, and response
- Google Calendar API: Events get — official Google event read operation for exact-state reconciliation
- Microsoft Graph: Delete event — official Microsoft event-deletion operation and permission guidance
- Microsoft Graph: Get event — official Microsoft event read operation for provider-state checks
- Model Context Protocol: Tools — official MCP tool schemas, calls, errors, timeouts, and security guidance
Cancel the meeting, not just one event object
Duplicate the command, hide the provider response, keep a replacement draft nearby, and require verified closure across calendars, reminders, and participant channels.
Review WonderCal for AI agents