Delete Event
Delete a Google Calendar event. Supports deleting single events, recurring event instances, or entire recurring series with optional attendee notifications.
Overview
The Delete Event tool allows you to remove events from your Google Calendar. It supports:
- Simple deletion of single events
- Single instance deletion for recurring events
- This and future deletion for recurring events
- Series deletion to remove all instances
- Attendee notifications (optional, default: no notifications)
This tool works with any calendar you have write access to. Event deletion is permanent and cannot be undone.
Prerequisites
- A connected Google Account with OAuth authentication
- Google Calendar API enabled in your Google Cloud project
- Setup Guide
- Event organizer permissions (only organizers can delete events)
Usage
Delete a Simple Event
Delete a single, non-recurring event without notifying attendees:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "abc123xyz"
}
}
Note: send_notifications defaults to false to prevent accidental spam.
Delete Event with Attendee Notification
Delete an event and send cancellation emails to attendees:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "abc123xyz",
"send_notifications": true
}
}
Delete Event from Specific Calendar
Delete from a non-primary calendar:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "abc123xyz",
"calendar_id": "work@group.calendar.google.com"
}
}
Delete Single Instance of Recurring Event
Delete only one occurrence of a recurring event:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "recurring_event_20240120T100000Z",
"recurring_event_delete_scope": "this_instance"
}
}
Delete This and Future Instances
Delete this occurrence and all future occurrences:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "recurring_event_20240120T100000Z",
"recurring_event_delete_scope": "this_and_future",
"send_notifications": true
}
}
Delete Entire Recurring Series
Delete all instances of a recurring event:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "recurring_event_20240120T100000Z",
"recurring_event_delete_scope": "all_instances",
"send_notifications": true
}
}
You can also provide the master event ID directly:
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "master_recurring_event_id",
"recurring_event_delete_scope": "all_instances"
}
}
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
event_id | string | Yes | - | Event identifier. Get this from Get Events tool. |
calendar_id | string | No | "primary" | Calendar identifier. Use 'primary' for main calendar or ID from List Calendars tool. |
send_notifications | boolean | No | false | Whether to send cancellation emails to attendees. |
recurring_event_delete_scope | string | No | - | For recurring events only. Options: "this_instance", "this_and_future", "all_instances". Ignored for non-recurring events. |
Recurring Event Delete Scope
| Value | Description | Use Case |
|---|---|---|
this_instance | Delete only this occurrence | Cancel one meeting in a series |
this_and_future | Delete this and all future occurrences | End series starting from specific date |
all_instances | Delete entire recurring series | Remove all meetings in series |
Important: If you don't specify recurring_event_delete_scope for a recurring event, the tool will delete only the specific instance ID you provided.
Response Format
Success Response
{
"success": true,
"message": "Event deleted successfully",
"event_id": "abc123xyz",
"calendar_id": "primary",
"was_recurring": false,
"delete_scope": null,
"notifications_sent": false,
"deleted_event": {
"summary": "Team Meeting",
"start": {
"dateTime": "2024-01-15T10:00:00-08:00",
"timeZone": "America/Los_Angeles"
},
"end": {
"dateTime": "2024-01-15T11:00:00-08:00",
"timeZone": "America/Los_Angeles"
}
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
success | boolean | Whether deletion succeeded |
message | string | Success message |
event_id | string | ID of deleted event |
calendar_id | string | Calendar the event was deleted from |
was_recurring | boolean | Whether event was part of recurring series |
delete_scope | string | Scope of deletion for recurring events ("this_instance", "this_and_future", "all_instances", or null) |
notifications_sent | boolean | Whether cancellation emails were sent to attendees |
deleted_event | object | Basic details of the deleted event (summary, start, end) |
Error Handling
Event Not Found (404)
Error:
{
"error": "Event not found with ID 'abc123xyz' in calendar 'primary'..."
}
Causes:
- Invalid or incorrect event_id
- Event was already deleted
- Wrong calendar_id
Solution:
- Use Get Events tool to find valid event IDs
- Verify you're using the correct calendar_id
- Check if event still exists
Permission Denied (403)
Error:
{
"error": "Insufficient permissions to delete this event..."
}
Causes:
- You're not the event organizer
- No write access to calendar
- Calendar is read-only
Solution:
- Only event organizers can delete events
- Request organizer to delete, or ask for organizer permissions
- Ensure you have write access to the calendar
Already Deleted (410)
Error:
{
"error": "Event 'abc123xyz' has already been deleted from calendar 'primary'."
}
Cause: Event was previously deleted (HTTP 410 Gone status)
Solution: Event is already removed, no action needed.
Invalid Recurring Scope
Error:
{
"error": "Cannot specify recurring_event_delete_scope for non-recurring events..."
}
Cause: Trying to use recurring_event_delete_scope on a single, non-recurring event
Solution: Remove recurring_event_delete_scope parameter for single events.
Cannot Use this_and_future on Master Event
Error:
{
"error": "Cannot use 'this_and_future' on the master recurring event..."
}
Cause: Attempting to use "this_and_future" on the master event ID
Solution:
- Use "all_instances" to delete entire series, OR
- Get a specific instance ID from Get Events tool and use that
Calendar Not Found
Error:
{
"error": "Resource not found: Calendar not found"
}
Solution:
- Use List Calendars to find valid calendar IDs
- Verify calendar_id spelling
- Use "primary" for your main calendar
Calendar API Not Enabled
Error:
{
"error": "Google Calendar API is not enabled in your Google Cloud project..."
}
Solution: Follow Setup Guide to enable the API.
How to Get Event IDs
Before deleting, you need the event's ID. Use the Get Events tool:
{
"tool": "google_calendar_Get_Events",
"arguments": {
"query": "Team Meeting",
"start_date": "2024-01-01",
"end_date": "2024-12-31"
}
}
From the results, copy the id field of the event you want to delete.
Recurring Event IDs
Recurring events have two types of IDs:
- Instance ID: Specific occurrence (e.g.,
eventid_20240120T100000Z) - Master ID: Base recurring event (no date suffix)
When you get events with single_events: true (default), you'll see instance IDs. Use these with recurring_event_delete_scope to control what gets deleted.
Recurring Event Deletion Explained
Delete Single Instance
Only removes one occurrence. Other instances remain unchanged.
Before: Weekly meeting every Monday for 10 weeks
Delete: Monday Jan 20 instance with this_instance
After: Weekly meeting on all Mondays EXCEPT Jan 20
Delete This and Future
Ends the series starting from a specific occurrence.
Before: Weekly meeting every Monday for 10 weeks
Delete: Monday Jan 20 instance with this_and_future
After: Weekly meeting only up to Jan 13. No meetings after Jan 20.
How it works: The tool updates the master event's recurrence rule to end before the specified instance.
Delete All Instances
Removes the entire recurring series.
Before: Weekly meeting every Monday for 10 weeks
Delete: Any instance with all_instances
After: No meetings at all (entire series deleted)
Use Cases
1. Cancel a One-Time Meeting
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "abc123xyz",
"send_notifications": true
}
}
2. Cancel One Occurrence in Series (Keep Others)
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "recurring_20240120T100000Z",
"recurring_event_delete_scope": "this_instance",
"send_notifications": true
}
}
3. End a Recurring Series Early
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "recurring_20240120T100000Z",
"recurring_event_delete_scope": "this_and_future",
"send_notifications": true
}
}
4. Remove Entire Recurring Series
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "master_event_id",
"recurring_event_delete_scope": "all_instances",
"send_notifications": true
}
}
5. Silent Deletion (No Notifications)
{
"tool": "google_calendar_Delete_Event",
"arguments": {
"event_id": "abc123xyz"
}
}
Default behavior - no emails sent.
Limitations
-
Permanent Deletion - Deleted events cannot be recovered. They're permanently removed from Google Calendar.
-
Organizer Only - Only the event organizer can delete events. Attendees cannot delete events they didn't create.
-
No Trash/Recycle Bin - Google Calendar doesn't have a trash folder. Deletion is immediate and final.
-
No Batch Deletion - Can only delete one event per tool call. To delete multiple events, call the tool multiple times.
-
No Undo - There's no undo functionality. Double-check event_id before deleting.
-
OAuth Only - Requires Google Account with OAuth (App Passwords don't support Calendar API).
-
Cancelled vs Deleted - This tool permanently deletes. To mark as cancelled (but keep in history), use Update Event tool to change status instead.
Tips
-
Get Event ID First - Always use Get Events tool to find the correct event_id before deleting.
-
Default: No Notifications -
send_notificationsdefaults tofalseto prevent accidental spam. Explicitly set totruewhen you want to notify attendees. -
Double-Check Before Deleting - Deletion is permanent. Verify you have the correct event_id.
-
Be Explicit with Recurring Events - Always specify
recurring_event_delete_scopewhen deleting recurring events to avoid accidentally deleting the wrong instances. -
Test with Non-Critical Events - When learning to delete recurring events, practice on test events first.
-
Use Response for Confirmation - The response includes
deleted_eventdetails so you can confirm you deleted the right event. -
Recurring Series Safety - For recurring events, consider:
- Delete single instance: Safest, only affects one occurrence
- Delete this_and_future: Ends series from specific date
- Delete all_instances: Nuclear option, removes everything
-
Event Organizer Check - If you get permission errors, you're likely not the organizer. Use Get Events tool to check the
organizer.selffield. -
Silent Cleanup - For internal cleanup operations, use default (no notifications) to avoid unnecessary emails.
-
Notify Important Changes - For attendee-facing events, set
send_notifications: trueso people know the event is cancelled.
Safety Considerations
⚠️ High-Risk Operations
- Delete all_instances: Removes entire series
- Delete this_and_future: Ends series permanently
Best Practice: Double-check event details before deleting recurring series.
✅ Low-Risk Operations
- Delete single event: Only affects one event
- Delete this_instance: Only one occurrence removed
Confirmation Pattern
For critical deletions:
- Use Get Events to fetch event details
- Review summary, start time, attendees
- Confirm it's the correct event
- Delete with appropriate scope and notifications
Related Tools
- Get Events - Find event IDs to delete
- List Calendars - Get calendar IDs
- Update Event - Modify events instead of deleting
- Create Event - Create new events
Billing
Cost: 1 credit per execution
Fixed cost regardless of whether deleting single instance or entire recurring series.