Enum AuthMode

AuthMode

トリガーされた関数で Apps Script が実行できる承認済みサービスのカテゴリを識別する列挙型。これらの値は、イベント パラメータ eauthMode プロパティとしてトリガーされた関数で公開されます。詳しくは、アドオンの承認ライフサイクルに関するガイドをご覧ください。

列挙型を呼び出すには、その親クラス、名前、プロパティを呼び出します。たとえば、 ScriptApp.AuthMode.CUSTOM_FUNCTION です。

function onOpen(e) {
  const menu = SpreadsheetApp.getUi().createAddonMenu();
  if (e && e.authMode === ScriptApp.AuthMode.NONE) {
    // Add a normal menu item (works in all authorization modes).
    menu.addItem('Start workflow', 'startWorkflow');
  } else {
    // Add a menu item based on properties (doesn't work in AuthMode.NONE).
    const properties = PropertiesService.getDocumentProperties();
    const workflowStarted = properties.getProperty('workflowStarted');
    if (workflowStarted) {
      menu.addItem('Check workflow status', 'checkWorkflow');
    } else {
      menu.addItem('Start workflow', 'startWorkflow');
    }
    // Record analytics.
    UrlFetchApp.fetch('http://www.example.com/analytics?event=open');
  }
  menu.addToUi();
}

プロパティ

プロパティタイプ説明
NONEEnum認可を必要とするサービスへのアクセスを許可しないモード。このモードは、アドオンが onOpen(e) シンプル トリガーを実行し、ユーザーが別のドキュメントにアドオンをインストールしたものの、そのアドオンが現在のドキュメントで使用されていない場合に発生します。
CUSTOM_FUNCTIONEnumカスタム スプレッドシート関数で使用するために、限定されたサービスのサブセットへのアクセスを許可するモード。これらのサービスの中には、スプレッドシート サービスへの読み取り専用アクセスなど、通常は承認が必要なサービスもありますが、カスタム関数で使用する場合、承認なしで使用できます。カスタム関数にはイベント パラメータがないため、この値は返されません。この値は、カスタム関数が独自の承認モードで実行されることを示すためにのみ記載されています。
LIMITEDEnumサービスの限定されたサブセットへのアクセスを許可するモード。このモードは、ドキュメントにバインドされたアドオンまたはスクリプトが onOpen(e) または onEdit(e) のシンプル トリガーを実行するときに発生します(NONE で説明されている場合を除く)。
FULLEnum認可が必要なすべてのサービスへのアクセスを許可するモード。このモードは、LIMITED または NONE で説明されているケース以外のトリガーの結果としてアドオンまたはスクリプトが実行される場合に発生します。