Enum AuthMode

AuthMode

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

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

function onOpen(e) {
  var 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).
    var properties = PropertiesService.getDocumentProperties();
    var 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 で説明したケース以外のトリガーの結果としてアドオンまたはスクリプトが実行されたときに発生します。