public sealed class GmailAddOnManifest : IMessage<GmailAddOnManifest>, IEquatable<GmailAddOnManifest>, IDeepCloneable<GmailAddOnManifest>, IBufferMessage, IMessage
Reference documentation and code samples for the Google.Apps.Script.Type class GmailAddOnManifest.
Properties customizing the appearance and execution of a Gmail add-on.
public string AuthorizationCheckFunction { get; set; }
The name of an endpoint that verifies that the add-on has
all the required third-party authorizations, by probing the third-party
APIs. If the probe fails, the function should throw an exception to
initiate the authorization flow. This function is called before each
invocation of the add-on, in order to ensure a smooth user experience.
public ComposeTrigger ComposeTrigger { get; set; }
Defines the compose time trigger for a compose time add-on. This is the
trigger that causes an add-on to take action when the user is composing an
email.
All compose time addons are required to have the
gmail.addons.current.action.compose scope even though it might not edit the
draft.
public HomepageExtensionPoint HomepageTrigger { get; set; }
Defines an endpoint that will be 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 may be eclipsed by contextual
content when this add-on declares more targeted triggers.
If present, this overrides the configuration from
addOns.common.homepageTrigger.
[[["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-08-07 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eGmailAddOnManifest\u003c/code\u003e class in the \u003ccode\u003eGoogle.Apps.Script.Type\u003c/code\u003e namespace defines properties for customizing the appearance and behavior of a Gmail add-on.\u003c/p\u003e\n"],["\u003cp\u003eThis class implements multiple interfaces including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, providing functionalities such as deep cloning and message handling.\u003c/p\u003e\n"],["\u003cp\u003eKey properties include \u003ccode\u003eAuthorizationCheckFunction\u003c/code\u003e for verifying third-party authorizations, \u003ccode\u003eComposeTrigger\u003c/code\u003e for actions during email composition, \u003ccode\u003eContextualTriggers\u003c/code\u003e for defining trigger conditions, \u003ccode\u003eHomepageTrigger\u003c/code\u003e for default content, and \u003ccode\u003eUniversalActions\u003c/code\u003e for user-triggered actions.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of this class is \u003ccode\u003e2.3.0\u003c/code\u003e, with older versions dating back to \u003ccode\u003e1.0.0\u003c/code\u003e, all available in the provided documentation.\u003c/p\u003e\n"]]],[],null,["# Google.Apps.Script.Type - Class GmailAddOnManifest (2.3.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.3.0 (latest)](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.Gmail.GmailAddOnManifest)\n- [2.2.0](/dotnet/docs/reference/Google.Apps.Script.Type/2.2.0/Google.Apps.Script.Type.Gmail.GmailAddOnManifest)\n- [2.1.0](/dotnet/docs/reference/Google.Apps.Script.Type/2.1.0/Google.Apps.Script.Type.Gmail.GmailAddOnManifest)\n- [2.0.0](/dotnet/docs/reference/Google.Apps.Script.Type/2.0.0/Google.Apps.Script.Type.Gmail.GmailAddOnManifest)\n- [1.1.0](/dotnet/docs/reference/Google.Apps.Script.Type/1.1.0/Google.Apps.Script.Type.Gmail.GmailAddOnManifest)\n- [1.0.0](/dotnet/docs/reference/Google.Apps.Script.Type/1.0.0/Google.Apps.Script.Type.Gmail.GmailAddOnManifest) \n\n public sealed class GmailAddOnManifest : IMessage\u003cGmailAddOnManifest\u003e, IEquatable\u003cGmailAddOnManifest\u003e, IDeepCloneable\u003cGmailAddOnManifest\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google.Apps.Script.Type class GmailAddOnManifest.\n\nProperties customizing the appearance and execution of a Gmail add-on. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e GmailAddOnManifest \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[GmailAddOnManifest](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.Gmail.GmailAddOnManifest), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[GmailAddOnManifest](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.Gmail.GmailAddOnManifest), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[GmailAddOnManifest](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.Gmail.GmailAddOnManifest), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Apps.Script.Type.Gmail](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.Gmail)\n\nAssembly\n--------\n\nGoogle.Apps.Script.Type.dll\n\nConstructors\n------------\n\n### GmailAddOnManifest()\n\n public GmailAddOnManifest()\n\n### GmailAddOnManifest(GmailAddOnManifest)\n\n public GmailAddOnManifest(GmailAddOnManifest other)\n\nProperties\n----------\n\n### AuthorizationCheckFunction\n\n public string AuthorizationCheckFunction { get; set; }\n\nThe name of an endpoint that verifies that the add-on has\nall the required third-party authorizations, by probing the third-party\nAPIs. If the probe fails, the function should throw an exception to\ninitiate the authorization flow. This function is called before each\ninvocation of the add-on, in order to ensure a smooth user experience.\n\n### ComposeTrigger\n\n public ComposeTrigger ComposeTrigger { get; set; }\n\nDefines the compose time trigger for a compose time add-on. This is the\ntrigger that causes an add-on to take action when the user is composing an\nemail.\nAll compose time addons are required to have the\ngmail.addons.current.action.compose scope even though it might not edit the\ndraft.\n\n### ContextualTriggers\n\n public RepeatedField\u003cContextualTrigger\u003e ContextualTriggers { get; }\n\nDefines the set of conditions that trigger the add-on.\n\n### HomepageTrigger\n\n public HomepageExtensionPoint HomepageTrigger { get; set; }\n\nDefines an endpoint that will be executed in contexts that don't\nmatch a declared contextual trigger. Any cards generated by this function\nwill always be available to the user, but may be eclipsed by contextual\ncontent when this add-on declares more targeted triggers.\n\nIf present, this overrides the configuration from\n`addOns.common.homepageTrigger`.\n\n### UniversalActions\n\n public RepeatedField\u003cUniversalAction\u003e UniversalActions { get; }\n\nDefines set of [universal\nactions](/gmail/add-ons/how-tos/universal-actions) for the add-on. The user\ntriggers universal actions from the add-on toolbar menu."]]