public sealed class CommonAddOnManifest : IMessage<CommonAddOnManifest>, IEquatable<CommonAddOnManifest>, IDeepCloneable<CommonAddOnManifest>, IBufferMessage, IMessage
Reference documentation and code samples for the Google.Apps.Script.Type class CommonAddOnManifest.
Add-on configuration that is shared across all add-on host applications.
public HomepageExtensionPoint HomepageTrigger { get; set; }
Defines an endpoint that will be executed in any context, in
any host. 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.
public ListValue OpenLinkUrlPrefixes { get; set; }
An OpenLink action
can only use a URL with an HTTPS, MAILTO or TEL scheme. For HTTPS links,
the URL must also
match one of the
prefixes specified in this whitelist. If the prefix omits the scheme, HTTPS
is assumed. Notice that HTTP links are automatically rewritten to HTTPS
links.
public RepeatedField<UniversalActionExtensionPoint> UniversalActions { get; }
Defines a list of extension points in the universal action menu which
serves as a setting menu for the add-on. The extension point can be
link URL to open or an endpoint to execute as a form
submission.
[[["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\u003eCommonAddOnManifest\u003c/code\u003e class is used for configuring add-ons across all host applications, with version 2.3.0 being the latest release.\u003c/p\u003e\n"],["\u003cp\u003eThis class inherits from \u003ccode\u003eobject\u003c/code\u003e and implements several interfaces, including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eKey properties of \u003ccode\u003eCommonAddOnManifest\u003c/code\u003e include \u003ccode\u003eName\u003c/code\u003e for the add-on's display name, \u003ccode\u003eLogoUrl\u003c/code\u003e for the toolbar logo, and \u003ccode\u003eHomepageTrigger\u003c/code\u003e to define an endpoint for generating cards.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eUniversalActions\u003c/code\u003e property allows defining extension points for a settings menu, and \u003ccode\u003eOpenLinkUrlPrefixes\u003c/code\u003e whitelists prefixes for HTTPS, MAILTO, or TEL links.\u003c/p\u003e\n"],["\u003cp\u003eThe class has a \u003ccode\u003eUseLocaleFromApp\u003c/code\u003e property to determine if locale information from the host application should be used.\u003c/p\u003e\n"]]],[],null,["# Google.Apps.Script.Type - Class CommonAddOnManifest (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.CommonAddOnManifest)\n- [2.2.0](/dotnet/docs/reference/Google.Apps.Script.Type/2.2.0/Google.Apps.Script.Type.CommonAddOnManifest)\n- [2.1.0](/dotnet/docs/reference/Google.Apps.Script.Type/2.1.0/Google.Apps.Script.Type.CommonAddOnManifest)\n- [2.0.0](/dotnet/docs/reference/Google.Apps.Script.Type/2.0.0/Google.Apps.Script.Type.CommonAddOnManifest)\n- [1.1.0](/dotnet/docs/reference/Google.Apps.Script.Type/1.1.0/Google.Apps.Script.Type.CommonAddOnManifest)\n- [1.0.0](/dotnet/docs/reference/Google.Apps.Script.Type/1.0.0/Google.Apps.Script.Type.CommonAddOnManifest) \n\n public sealed class CommonAddOnManifest : IMessage\u003cCommonAddOnManifest\u003e, IEquatable\u003cCommonAddOnManifest\u003e, IDeepCloneable\u003cCommonAddOnManifest\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google.Apps.Script.Type class CommonAddOnManifest.\n\nAdd-on configuration that is shared across all add-on host applications. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e CommonAddOnManifest \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[CommonAddOnManifest](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.CommonAddOnManifest), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[CommonAddOnManifest](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.CommonAddOnManifest), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[CommonAddOnManifest](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type.CommonAddOnManifest), [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](/dotnet/docs/reference/Google.Apps.Script.Type/latest/Google.Apps.Script.Type)\n\nAssembly\n--------\n\nGoogle.Apps.Script.Type.dll\n\nConstructors\n------------\n\n### CommonAddOnManifest()\n\n public CommonAddOnManifest()\n\n### CommonAddOnManifest(CommonAddOnManifest)\n\n public CommonAddOnManifest(CommonAddOnManifest other)\n\nProperties\n----------\n\n### AddOnWidgetSet\n\n public AddOnWidgetSet AddOnWidgetSet { get; set; }\n\nThe widgets used in the add-on. If this field is not specified,\nit indicates that default set is used.\n\n### HomepageTrigger\n\n public HomepageExtensionPoint HomepageTrigger { get; set; }\n\nDefines an endpoint that will be executed in any context, in\nany host. Any cards generated by this function will always be available to\nthe user, but may be eclipsed by contextual content when this add-on\ndeclares more targeted triggers.\n\n### LayoutProperties\n\n public LayoutProperties LayoutProperties { get; set; }\n\nCommon layout properties for the add-on cards.\n\n### LogoUrl\n\n public string LogoUrl { get; set; }\n\nRequired. The URL for the logo image shown in the add-on toolbar.\n\n### Name\n\n public string Name { get; set; }\n\nRequired. The display name of the add-on.\n\n### OpenLinkUrlPrefixes\n\n public ListValue OpenLinkUrlPrefixes { get; set; }\n\nAn OpenLink action\ncan only use a URL with an HTTPS, MAILTO or TEL scheme. For HTTPS links,\nthe URL must also\n[match](/gmail/add-ons/concepts/manifests#whitelisting_urls) one of the\nprefixes specified in this whitelist. If the prefix omits the scheme, HTTPS\nis assumed. Notice that HTTP links are automatically rewritten to HTTPS\nlinks.\n\n### UniversalActions\n\n public RepeatedField\u003cUniversalActionExtensionPoint\u003e UniversalActions { get; }\n\nDefines a list of extension points in the universal action menu which\nserves as a setting menu for the add-on. The extension point can be\nlink URL to open or an endpoint to execute as a form\nsubmission.\n\n### UseLocaleFromApp\n\n public bool UseLocaleFromApp { get; set; }\n\nWhether to pass locale information from host app."]]