Google Calendar ACTION
Update Following Event Instances
Update all instances of a recurring event following a specific instance. This creates a new recurring event starting from the selected instance. See the documentation
- Action
- Writes data
- Destructive
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Google Calendar account once, then configure and run Update Following Event Instances from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "google_calendar-update-following-instances",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
google_calendar: { authProvisionId: "apn_xxxxxxx" },
calendarId: "Calendar",
recurringEventId: "Recurring Event ID",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "google_calendar-update-following-instances",
"configured_props": {
"google_calendar": { "authProvisionId": "apn_xxxxxxx" },
"calendarId": "Calendar",
"recurringEventId": "Recurring Event ID"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "google_calendar",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "google_calendar-update-following-instances",
arguments: {
calendarId: "Calendar",
recurringEventId: "Recurring Event ID",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
calendarId Calendar | string | Optionally select the calendar, defaults to the primary calendar for the logged-in user Optional Dynamic |
recurringEventId Recurring Event ID | string | The ID of the recurring event Required Dynamic |
instanceId Event Instance ID | string | The instance where the split will occur. All instances from this point forward will be updated with your changes, while earlier instances remain unchanged. For example, selecting the 4th instance will keep instances 1-3 as-is and update instances 4 onwards. Required Dynamic |
summary Event Title | string | Enter a new title for all following instances Optional |
eventStartDate Event Start Date | string | For all-day events, enter the Event day in the format yyyy-mm-dd. For events with time, format according to RFC3339: yyyy-mm-ddThh:mm:ss+01:00. A time zone offset is required unless a time zone is explicitly specified in timeZone. Optional |
eventEndDate Event End Date | string | For all-day events, enter the Event day in the format yyyy-mm-dd. For events with time, format according to RFC3339: yyyy-mm-ddThh:mm:ss+01:00. A time zone offset is required unless a time zone is explicitly specified in timeZone. Optional |
location Event Location | string | Specify a new location for all following instances Optional |
description Event Description | string | Enter a new description for all following instances Optional |
attendees Attendees | string | Enter either an array or a comma separated list of email addresses of attendees Optional |
repeatFrequency New Repeat Frequency | string | Optionally change the repeat frequency for following instances Optional |
repeatInterval Repeat Interval | integer | Repeat interval (e.g., 1 for every day, 2 for every other day) Optional |
repeatUntil Repeat Until | string | The event will repeat only until this date (format: yyyy-mm-dd) Optional |
repeatTimes Number of Occurrences | integer | Limit the number of times this event will occur Optional |
colorId Color ID | string | The color assigned to this event on your calendar. You can only select a color from the list of event colors provided from your calendar. This setting will only affect your calendar. Optional Dynamic |
timeZone Time Zone | string | Time zone used in the response. Optional. The default is the time zone of the calendar. Optional Dynamic |
sendUpdates Send Updates | string | Configure whether to send notifications about the event Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- google_calendar-update-following-instances
- Version
- 0.0.8
- App
- Google Calendar
- Authentication
- OAuth
- Read-only
- No
- Destructive
- Yes
- Open world
- Yes
- Source
- View on GitHub ↗