Defines an endpoint that is executed in contexts that don't match a declared contextual trigger. Any cards generated by this function will always be available to the user, but might be eclipsed by contextual content when this add-on declares more targeted triggers.
If present, this overrides the configuration from addOns.common.homepageTrigger.
Defines the level of data access when an event add-on is triggered.
EventAccess
An enum that defines the level of data access event triggers require.
Enums
UNSPECIFIED
Default value when nothing is set for eventAccess.
METADATA
Gives event triggers the permission to access the metadata of events, such as event ID and calendar ID.
READ
Gives event triggers access to all provided event fields including the metadata, attendees, and conference data.
WRITE
Gives event triggers access to the metadata of events and the ability to perform all actions, including adding attendees and setting conference data.
READ_WRITE
Gives event triggers access to all provided event fields including the metadata, attendees, and conference data and the ability to perform all actions.
CalendarExtensionPoint
Common format for declaring a calendar add-on's triggers.
Fields
runFunction
string
Required. The endpoint to execute when this extension point is activated.
ConferenceSolution
Defines conference-related values. Third-party conferencing add-ons can only be built in Apps Script.
Fields
onCreateFunction
string
Required. The endpoint to call when conference data should be created.
id
string
Required. IDs should be uniquely assigned across conference solutions within one add-on, otherwise the wrong conference solution might be used when the add-on is triggered. While you can change the display name of an add-on, the ID shouldn’t be changed.
name
string
Required. The display name of the conference solution.
logoUrl
string
Required. The URL for the logo image of the conference solution.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-29 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eCalendarAddOnManifest\u003c/code\u003e defines the properties, triggers, and data access levels for Google Calendar add-ons.\u003c/p\u003e\n"],["\u003cp\u003eAdd-ons can define triggers to execute functions when events are opened, updated, or when users interact with attachments.\u003c/p\u003e\n"],["\u003cp\u003eConference solutions can be integrated within add-ons, providing functionalities like creating conference data with a specified endpoint.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eCalendarExtensionPoint\u003c/code\u003e and \u003ccode\u003eConferenceSolution\u003c/code\u003e further detail how add-ons can extend Calendar's features with specific functionalities and triggers.\u003c/p\u003e\n"],["\u003cp\u003eDifferent levels of data access, ranging from metadata to read-write permissions, can be defined for event triggers in add-ons using \u003ccode\u003eEventAccess\u003c/code\u003e.\u003c/p\u003e\n"]]],["The document outlines configurations for Calendar add-ons, including the `CalendarAddOnManifest` which defines properties like `homepageTrigger`, `conferenceSolution`, and event triggers (`eventOpenTrigger`, `eventUpdateTrigger`, `eventAttachmentTrigger`). `EventAccess` defines data access levels (metadata, read, write, read_write). `CalendarExtensionPoint` specifies trigger endpoints. `ConferenceSolution` defines settings like `onCreateFunction`, `id`, `name`, and `logoUrl` for conference features within the add-on.\n"],null,["# Package google.apps.script.type.calendar\n\nIndex\n-----\n\n- [CalendarAddOnManifest](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.CalendarAddOnManifest) (message)\n- [CalendarAddOnManifest.EventAccess](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.CalendarAddOnManifest.EventAccess) (enum)\n- [CalendarExtensionPoint](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.CalendarExtensionPoint) (message)\n- [ConferenceSolution](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.ConferenceSolution) (message)\n\nCalendarAddOnManifest\n---------------------\n\nProperties customizing the appearance and execution of a Calendar add-on.\n\n| Fields ||\n|-----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `homepageTrigger` | [HomepageExtensionPoint](/workspace/add-ons/reference/rpc/google.apps.script.type#google.apps.script.type.HomepageExtensionPoint) Defines an endpoint that is executed in contexts that don't match a declared contextual trigger. Any cards generated by this function will always be available to the user, but might be eclipsed by contextual content when this add-on declares more targeted triggers. If present, this overrides the configuration from `addOns.common.homepageTrigger`. |\n| `conferenceSolution[]` | [ConferenceSolution](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.ConferenceSolution) Defines conference solutions provided by this add-on. Third-party conferencing add-ons can only be built in [Apps Script](https://developers.google.com/apps-script/reference/conference-data). |\n| `createSettingsUrlFunction` | `string` An endpoint to execute that creates a URL to the add-on's settings page. |\n| `eventOpenTrigger` | [CalendarExtensionPoint](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.CalendarExtensionPoint) An endpoint that triggers when an event is opened to be viewed or edited. |\n| `eventUpdateTrigger` | [CalendarExtensionPoint](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.CalendarExtensionPoint) An endpoint that triggers when the open event is updated. |\n| `eventAttachmentTrigger` | [MenuItemExtensionPoint](/workspace/add-ons/reference/rpc/google.apps.script.type#google.apps.script.type.MenuItemExtensionPoint) A configuration for a contextual trigger that fires when the user clicks on the add-on attachment provider in the Calendar dropdown menu. |\n| `currentEventAccess` | [EventAccess](/workspace/add-ons/reference/rpc/google.apps.script.type/calendar#google.apps.script.type.calendar.CalendarAddOnManifest.EventAccess) Defines the level of data access when an event add-on is triggered. |\n\nEventAccess\n-----------\n\nAn enum that defines the level of data access event triggers require.\n\n| Enums ||\n|---------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `UNSPECIFIED` | Default value when nothing is set for eventAccess. |\n| `METADATA` | Gives event triggers the permission to access the metadata of events, such as event ID and calendar ID. |\n| `READ` | Gives event triggers access to all provided event fields including the metadata, attendees, and conference data. |\n| `WRITE` | Gives event triggers access to the metadata of events and the ability to perform all actions, including adding attendees and setting conference data. |\n| `READ_WRITE` | Gives event triggers access to all provided event fields including the metadata, attendees, and conference data and the ability to perform all actions. |\n\nCalendarExtensionPoint\n----------------------\n\nCommon format for declaring a calendar add-on's triggers.\n\n| Fields ||\n|---------------|------------------------------------------------------------------------------------|\n| `runFunction` | `string` Required. The endpoint to execute when this extension point is activated. |\n\nConferenceSolution\n------------------\n\nDefines conference-related values. Third-party conferencing add-ons can only be built in [Apps Script](https://developers.google.com/apps-script/reference/conference-data).\n\n| Fields ||\n|--------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `onCreateFunction` | `string` Required. The endpoint to call when conference data should be created. |\n| `id` | `string` Required. IDs should be uniquely assigned across conference solutions within one add-on, otherwise the wrong conference solution might be used when the add-on is triggered. While you can change the display name of an add-on, the ID shouldn't be changed. |\n| `name` | `string` Required. The display name of the conference solution. |\n| `logoUrl` | `string` Required. The URL for the logo image of the conference solution. |"]]