chrome.notifications

更新日: 2026-09-25 robots: noindex

説明

chrome.notifications API を使用して、テンプレートを使用したリッチ通知を作成し、システムトレイでユーザーに表示します。

権限

notifications

型

NotificationBitmap

NotificationButton

プロパティ

  • iconUrl

    文字列 省略可

    Chrome 59 以降、非推奨

    Mac OS X ユーザーにボタンアイコンが表示されない。

  • title

    文字列

NotificationItem

プロパティ

  • メッセージ

    文字列

    このアイテムに関する追加情報。

  • title

    文字列

    リスト通知の 1 つのアイテムのタイトル。

NotificationOptions

プロパティ

  • appIconMaskUrl

    文字列 省略可

    Chrome 59 以降、非推奨

    アプリアイコンのマスクは、Mac OS X ユーザーには表示されません。

    アプリアイコン マスクの URL。URL には iconUrl と同じ制限があります。

    アプリアイコンのマスクはアルファ チャンネルに配置する必要があります。これは、画像のアルファ チャンネルのみが考慮されるためです。

  • ボタン

    NotificationButton[] 省略可

    最大 2 つの通知操作ボタンのテキストとアイコン。

  • contextMessage

    文字列 省略可

    太さの細いフォントを使用した代替の通知コンテンツ。

  • eventTime

    number 省略可

    通知に関連付けられたタイムスタンプ(エポックからのミリ秒単位、例: Date.now() + n)。

  • iconUrl

    文字列 省略可

    送信者のアバター、アプリアイコン、または画像通知のサムネイルの URL。

    URL には、データ URL、blob URL、またはこの拡張機能の .crx ファイル内のリソースに対する相対 URL を指定できます。

    **注:**この値は notifications.create() メソッドに必要です。

  • imageUrl

    文字列 省略可

    Chrome 59 以降、非推奨

    この画像は Mac OS X ユーザーには表示されません。

    画像タイプの通知の画像サムネイルの URL。URL には iconUrl と同じ制限があります。

  • isClickable

    boolean 省略可

    Chrome 67 以降、非推奨

    この UI ヒントは Chrome 67 以降では無視されます。

  • アイテム

    NotificationItem[] 省略可

    複数アイテムの通知用のアイテム。Mac OS X のユーザーには、最初の項目のみが表示されます。

  • メッセージ

    文字列 省略可

    メインの通知コンテンツ。

    **注:**この値は notifications.create() メソッドに必要です。

  • priority

    number 省略可

    優先度の範囲は -2 ~ 2 です。-2 は最も低い優先度です。2 が最も高い優先度です。デフォルトは 0 です。通知センターをサポートしていないプラットフォーム(Windows、Linux、Mac)では、-2 と -1 を指定するとエラーになります。これらの優先度の通知はまったく表示されないためです。

  • 再生状況

    number 省略可

    現在の進捗状況は 0 ~ 100 の範囲です。

  • requireInteraction

    boolean 省略可

    Chrome 50 以降

    ユーザーが通知を有効にするか閉じるまで、通知を画面に表示したままにする必要があることを示します。デフォルトは false です。

  • サイレント

    boolean 省略可

    Chrome 70 以降

    通知が表示されるときに、音やバイブレーションを発生させないことを示します。デフォルトは false です。

  • title

    文字列 省略可

    通知のタイトル(メールの送信者名など)。

    **注:**この値は notifications.create() メソッドに必要です。

  • type

    TemplateType 省略可

    表示する通知の種類。notifications.create メソッドに必要です。

PermissionLevel

列挙型

"granted"
ユーザーがアプリまたは拡張機能からの通知を表示することを選択したことを示します。これはインストール時のデフォルトです。

"denied"
ユーザーがアプリまたは拡張機能からの通知を表示しないように選択したことを指定します。

TemplateType

列挙型

"basic"
アイコン、タイトル、メッセージ、expandedMessage、最大 2 つのボタンが含まれます。

"image"
アイコン、タイトル、メッセージ、expandedMessage、画像、最大 2 つのボタンが含まれます。

"list"
アイコン、タイトル、メッセージ、アイテム、最大 2 つのボタンが含まれます。Mac OS X のユーザーには、最初の項目のみが表示されます。

"progress"
アイコン、タイトル、メッセージ、進行状況、最大 2 つのボタンが含まれます。

メソッド

clear()

Promise
chrome.notifications.clear(
  notificationId: string,
  callback?: function,
)
: Promise<boolean>

指定された通知を消去します。

パラメータ

  • notificationId

    文字列

    消去する通知の ID。これは notifications.create メソッドによって返されます。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (wasCleared: boolean) => void

    • wasCleared

      ブール値

戻り値

  • Promise<boolean>

    Chrome 116 以降

    一致する通知が存在するかどうかを示す Promise を返します。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

create()

Promise
chrome.notifications.create(
  notificationId?: string,
  options: NotificationOptions,
  callback?: function,
)
: Promise<string>

通知を作成して表示します。

パラメータ

  • notificationId

    文字列 省略可

    通知の識別子。設定されていないか、空の場合、ID が自動的に生成されます。既存の通知と一致する場合、このメソッドはまずその通知をクリアしてから、作成オペレーションを続行します。識別子は 500 文字以下で指定してください。

    notificationId パラメータは、Chrome 42 より前のバージョンでは必須です。

  • オプション

    通知の内容。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (notificationId: string) => void

    • notificationId

      文字列

戻り値

  • Promise<string>

    Chrome 116 以降

    作成された通知を表す通知 ID(指定されたもの、または生成されたもの)で解決される Promise を返します。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getAll()

Promise
chrome.notifications.getAll(
  callback?: function,
)
: Promise<object>

このアプリまたは拡張機能のすべての通知を取得します。

パラメータ

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (notifications: object) => void

    • 通知

      オブジェクト

戻り値

  • Promise<object>

    Chrome 116 以降

    現在システムに存在する notification_id のセットで解決される Promise を返します。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getPermissionLevel()

Promise
chrome.notifications.getPermissionLevel(
  callback?: function,
)
: Promise<PermissionLevel>

ユーザーがこのアプリまたは拡張機能からの通知を有効にしているかどうかを取得します。

パラメータ

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (level: PermissionLevel) => void

戻り値

  • Chrome 116 以降

    現在の権限レベルで解決される Promise を返します。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

update()

Promise
chrome.notifications.update(
  notificationId: string,
  options: NotificationOptions,
  callback?: function,
)
: Promise<boolean>

既存の通知を更新します。

パラメータ

  • notificationId

    文字列

    更新する通知の ID。これは notifications.create メソッドによって返されます。

  • オプション

    更新する通知の内容。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (wasUpdated: boolean) => void

    • wasUpdated

      ブール値

戻り値

  • Promise<boolean>

    Chrome 116 以降

    一致する通知が存在するかどうかを示す Promise を返します。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

イベント

onButtonClicked

chrome.notifications.onButtonClicked.addListener(
  callback: function,
)

ユーザーが通知のボタンを押した。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (notificationId: string, buttonIndex: number) => void

    • notificationId

      文字列

    • buttonIndex

      数値

onClicked

chrome.notifications.onClicked.addListener(
  callback: function,
)

ユーザーが通知のボタン以外の領域をクリックした。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (notificationId: string) => void

    • notificationId

      文字列

onClosed

chrome.notifications.onClosed.addListener(
  callback: function,
)

通知がシステムまたはユーザーの操作によって閉じられました。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (notificationId: string, byUser: boolean) => void

    • notificationId

      文字列

    • byUser

      ブール値

onPermissionLevelChanged

chrome.notifications.onPermissionLevelChanged.addListener(
  callback: function,
)

ユーザーが権限レベルを変更します。Chrome 47 の時点では、このイベントをディスパッチする UI を備えているのは ChromeOS のみです。

パラメータ

onShowSettings

Chrome 65 以降、非推奨
chrome.notifications.onShowSettings.addListener(
  callback: function,
)

カスタム通知設定ボタンはサポートされなくなりました。

ユーザーがアプリの通知設定のリンクをクリックしました。Chrome 47 の時点では、このイベントをディスパッチする UI を備えているのは ChromeOS のみです。Chrome 65 以降、この UI は ChromeOS からも削除されています。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    () => void