Google Workspace Marketplace のアプリ審査プロセスと要件

Google Workspace Marketplace にアプリを一般公開するには、アプリとその掲載情報を審査し、デザイン、コンテンツ、スタイルに関する Google のガイドラインが遵守されていることを確認します。

Google がアプリを審査した後、修正が必要な場合や承認されたかどうかがメールで通知されます。

  • アプリに追加の作業が必要な場合: 改善が必要な点に関する具体的な情報が記載された審査ドキュメントが届きます。問題を解決して、審査のためにアプリを再送信します。
  • 審査チームがアプリを承認した場合: アプリは自動的に公開され、通知メールが届きます。

審査のためにアプリを送信する前に、アプリが公開の準備ができていることを確認してください。詳しくは、公開プロセスの準備をご覧ください。

審査時間

アプリの審査には通常数日かかります。所要時間は次の要素によって異なります。

  • 最近送信されたアプリの数
  • アプリに必要な追加作業の量

アプリが審査に合格しない一般的な理由

OAuth の確認:

  • OAuth 同意画面が正しく設定されていません。たとえば、ユーザータイプが [内部] に設定されているか、公開ステータスが [テスト] に設定されている場合です。

  • アプリが OAuth 検証を完了しなかった。

アプリのリスティングに関する問題:

  • アプリ名、ロゴ、アプリの説明で Google の商標を不適切に使用している。ガイダンスについては、Google Workspace Marketplace のブランド ガイドラインをご覧ください。

  • リンクが機能しない、または間違った情報にリンクしている。たとえば、プライバシー ポリシーのリンクがデベロッパー サポート ページを参照している場合。

  • スクリーンショットや画像の品質が低い、またはアプリの機能を正確に表していない。

アプリの準備状況:

  • このアプリはまだテスト中であり、一般公開されていません。
  • アプリにバグがある、または完全に機能していない。

審査基準

審査のためにアプリを送信する前に、アプリがすべての要件を満たしており、Google Workspace Marketplace プログラム ポリシーに準拠していることを確認してください。

すべてのアプリに対する要件

チェックボックスを使用して、予備審査の進捗状況を追跡できます。チェックボックスをクリア

カテゴリ 条件
アプリ名
  • 同じ名前のアプリのリスティングは他にありません。
  • 名前にバージョン番号が含まれていません。
  • 名前が OAuth 同意画面の名前と一致している。
  • 名前があいまいすぎたり、一般的な名前すぎたりしない。
  • 名前は 50 文字以下です。
  • (推奨)名前はタイトルケースで入力します。
  • 推奨)名前に句読点(特にかっこ)が含まれていない。
デベロッパー向け情報
  • デベロッパー名とデベロッパーのウェブサイトが、デベロッパーに関する関連情報を正確に表し、その情報に誘導している。
  • 消費者保護法により、欧州経済領域(EEA)に拠点を置く消費者には、Google Workspace Marketplace の販売者がトレーダーであるか、トレーダーではないかを通知する必要があります。
    • トレーダー - トレーダーとは、商業、ビジネス、技術、職業に関連する目的で活動する個人、またはトレーダーの名前で、またはトレーダーに代わって活動する個人です。
    • トレーダーではない - トレーダーではない(消費者)とは、専門的な目的以外の目的で活動する個人です。

    指定しない場合、アプリのストアの掲載情報ページに「トレーダーのステータス未指定」と表示されます。

アプリの説明文
  • 指定したリンクはすべて機能し、正しい情報にリンクされている。 たとえば、プライバシー ポリシーのリンクは、プライバシー ポリシーを説明するページを参照します。
  • アプリがサードパーティ サービスとやり取りする場合は、サードパーティ サービスの機能、アプリがサードパーティ サービスとやり取りする方法、必要に応じて関連するウェブサイトへのリンクを説明します。
  • 簡潔で詳細な説明がわかりやすく、
  • 簡潔な説明と詳細な説明が同じではありません。
  • 推奨)料金情報が完全かつ正確である。
  • 推奨)言語ごとに属性の完全なセット(名前、簡単な説明、詳細な説明)が、言語の不一致がないように正しく定義されている。
機能
  • 明らかなバグはなく、エッジケースを含むすべてのアクションが完全に機能します。読み込み時間は読み込みインジケーターで管理されます。
  • アプリは、Google API との明確なやり取りを示しています。
  • アプリが、Google プロダクトにすでに含まれているものと同等ではない新しい機能または拡張機能を提供している。
  • アプリは、広告やスパムの目的で使用するものではありません。
  • アプリは完全に機能しており、テスト目的ではなく、開発中のものではありません。
  • アプリがユーザーまたは有料ユーザーが利用できる機能とやり取りする場合は、Google の審査チームにデベロッパーのシステム上のテスト アカウントが提供されます。
ユーザー エクスペリエンス
  • アプリの名前を含め、Google ブランドのアセット、商標、Google ブランドのコンテンツを使用していない。Google Workspace Marketplace のブランディング ガイドラインをご覧ください。
  • 承認とログインは 1 回だけ必要です。アプリはワンクリック SSO またはゼロクリック SSO を使用します。
  • 管理者がドメインの OAuth 2.0 スコープの権限を付与すると、個々のユーザーにスコープ権限を求めるメッセージは表示されなくなります。
  • ユーザーは、Google アカウントにログインした後に認証情報を入力する必要はありません。アクセスするには、[Google でログイン] ボタンをクリックするだけです。
  • ボタンラベル、メニュー項目、タイトル、その他のアプリ要素に、一貫した、わかりやすく、理解しやすい用語が使用されている。たとえば、ラベルは「はい」や「いいえ」ではなく、削除やキャンセルなどのアクション名を参照します。
  • ログインが必要な場合、ログアウト機能は正常に動作します。 トークンが取り消され、ログインが最初から開始されます。
  • アクションの確認メッセージやエラー メッセージなどのフィードバックは常に表示されます。
  • 画像リンクが壊れていない、または画像がぼやけていない。
グラフィック
  • アイコンのサイズが正しく、正方形で、背景が透明である。画像および映像をご覧ください。
  • アイコンがアプリの名前または機能を適切に表している。
  • アイコンはカラー(グレースケールではない)である。
  • アイコンに Google の商標が使用されていない。
  • スクリーンショットや画像がぼやけていないこと、読みづらくない、不適切でないこと。アプリを正確に表している。
  • 推奨)スクリーンショットには、アプリの使い方と機能が明確に示されている。
OAuth
  • アプリが OAuth 検証に合格し、可能な限り狭い OAuth スコープを使用していて、すべてのスコープが Google サービス API と正しく統合されている。

特定のアプリ統合の追加要件

アプリのリスティングに含まれるアプリの統合を選択して、関連する審査基準を表示します。列名をクリックすると、カテゴリ別などに条件を並べ替えることができます。

チェックボックスを使用して、予備審査の進捗状況を追跡できます。

アプリへの組み込み カテゴリ 条件
Google Chat 用アプリ 名前
  • アプリと通信するためのボタンは、説明から利用できます。
  • アプリ名は A ~ Z(大文字)または 0 ~ 9 で始まります。記号で始めることはできません。
Google Chat 用アプリ ユーザー エクスペリエンス
  • ユーザーがダイレクト メッセージを開始するたび、またはアプリがスペースに追加されるたびに、アプリからプロンプトなしのウェルカム メッセージが送信されます。ウェルカム メッセージは「ヘルプ」コマンドとは異なります。詳しくは、 Google Chat アプリのホームページを作成するをご覧ください。
  • アプリは「ヘルプ」コマンドをサポートしており、ユーザーがアプリの使用を開始できるようにします。詳細については、 スラッシュ コマンドに応答するをご覧ください。
  • スペースまたはダイレクト Chat で話しかけられたときに、アプリは常に応答します。
  • メッセージのスペル、大文字 / 小文字の区別、句読点、文法が正しい。メッセージに悪意のある、冒とく的な、または虐待的なコンテンツが含まれていない。
  • メッセージでは、Google の要件に従って、テキストやカードに明確で簡潔で一貫した書式を使用します。
  • レスポンスが 2 秒を超えると、遅延を説明するメッセージがアプリから送信されます。
  • 通知を送信するアプリでは、ユーザーが通知をオフにできるようにする必要があります。
  • ユーザーは、@ メンションを使用してアプリをスペースに追加できます。
  • ユーザーは [メンバーを表示] メニューを使用して、スペースからアプリを削除できます。
  • アプリの操作に必要なすべての情報をユーザーに示します。
  • アプリで使用しているカード形式が Google の要件を満たしている。 インタラクティブなカードを作成するをご覧ください。
  • このアプリは、Chat メニューの [アプリを探す] オプションから利用できます。
  • アプリが操作する外部 URL が、ステージング環境または開発環境に属していない。
  • スペース内のアプリ宛のメッセージには、必ず名前リンクを記述する必要があります。 アプリが応答する必要があることを認識する唯一の方法です。
  • Chat アプリでサードパーティのドメインのリンクがプレビューされる場合:
    • リンク プレビューは、ユーザーのメッセージに関連する補足情報を提供します。たとえば、営業案件へのリンクをプレビューすると、アカウント、金額、ステージなどの情報が追加されます。
    • デベロッパーがプレビュー対象のドメインに関連付けられている。

    詳細については、プレビュー リンクをご覧ください。

  • (推奨)Workspace 管理者が組織内のユーザーに代わってアプリをインストールできるようにするには、アプリがダイレクト メッセージを受信および送信できる必要があります。
Google Chat 用アプリ グラフィック
  • アプリに、認識しやすい明確なアバターがある。
Google ドライブ アプリ 機能
Google ドライブ アプリ ユーザー エクスペリエンス
  • アプリがドライブにファイルを保存する場合は、ユーザーがフォルダを選択できます。また、アプリ固有のフォルダを作成して再利用することもできます。構成データは、アプリデータ フォルダに保存できます。アプリは、ユーザーのマイドライブ フォルダにファイルをダンプしません。
  • アプリは、アプリのドキュメント化された機能に関連するファイルのみをドライブに保存します。
エディタのアドオン 機能
  • アドオンには、想定されるアクションと必須アクションが含まれており、ワークフローを完了するために必要なすべてのツールが用意されています。以下に例を示します。
    • アドオンがドキュメント全体にスタイルを適用する場合は、選択したテキストにのみスタイルを適用するオプションが用意されています。
    • アドオンがスプレッドシートのデータをウェブサービス フィードにアップロードする場合は、そのフィードへのリンクが表示され、簡単に移動できます。
    • アドオンでユーザーにアカウントが必要とされる場合は、ユーザーがアカウントを持っていない場合に簡単にアカウントを作成できるように、リンクまたは情報を提供します。
  • アドオンの [アドオン] タブにメニュー項目が表示されます。
  • アドオンがカスタム関数のみであっても、適切なドキュメントが含まれています。
  • アドオンは、onInstall()onOpen() を正しく使用してメニューに項目を追加します。メニュー項目は、アドオンが初めてインストールされたときと、別のファイルが開かれたときに表示されます。 エディタのアドオンの承認をご覧ください。
  • 認可モードが正しく設定されている。 認可モードをご覧ください。
  • アドオンは、Apps Script の V8 ランタイムで実装する必要があります。詳細については、V8 ランタイムの概要をご覧ください。
エディタのアドオン ユーザー エクスペリエンス
  • アドオンには、プロダクトの基本情報と使用方法を理解するために必要な情報がすべて含まれています。
  • ライブラリはアドオンのパフォーマンス低下を引き起こす可能性があるため、アドオン コードでライブラリを過度に使用していない。
  • エラーは可能な限り回避し、回避できない場合は適切に管理します。
    • エラー メッセージは、JavaScript アラートやデフォルトの赤いバーではなく、ダイアログ ウィンドウに表示されます。問題を伝え、その問題を解決するためにユーザーが行う必要があることを簡単な言葉で説明します。
    • 可能であれば、ユーザーが間違った操作をしている場合は、問題を解決するボタンが表示されます。
    • 詳しくは、 アドオンのスタイルガイドをご覧ください。
  • 外部ページへのリンクは新しいウィンドウで開き、正しいものです。
  • このアドオンは直感的で、デザインも優れています。つまり、次のようになります。
    • 何をすべきか、どのようにすべきかが常に明確である。
    • アドオンはアクセスしやすく、わかりやすいものです。技術用語や専門用語は避ける。
    • ワークフローは明確で、できるだけスムーズに進むようにします。
    • ユーザーとそのコンテンツをできる限り安全に保つ。
  • アドオンは、 エディタ アドオンの UI スタイルガイドに準拠し、 エディタ アドオンの CSS パッケージを使用します。
  • このアドオンでは、ディスプレイごとに 1 つの青色のプライマリ アクションのみが使用されます。
  • アドオンは、一度に 1 つのダイアログを表示します。重複したり、複数のダイアログを一度に開いたりしない。
  • アドオンの UI は、割り当てられたスペースにきちんと収まります。
    • テキストとラベルが「...」で切り捨てられない
    • ユーザーが縦方向にスクロールする頻度が少ない。
    • コンテンツの幅が 300p を超えないため、横方向のスクロールバーが表示されません。
  • このアドオンは、機密情報に関するすべての操作で確認を求めるか、警告を表示します。たとえば、スプレッドシート内のすべてのコンテンツが上書きされる直前に、ユーザーに警告が表示され、アクションが実行される前に確認を求められます。

    この要件は、設計変更によって回避できます。 たとえば、データをインポートする Google スプレッドシート アドオンを使用すると、既存のコンテンツが上書きされるリスクがあります。デフォルトのアクションとしてデータのシートを作成すると、このリスクを回避できます。

  • アクションの読み込み中に、ユーザーがアクションを複数回トリガーすることはできません。たとえば、アクションの読み込み中にボタンがオフになる、または非表示になるなどです。
Google Workspace アドオン 名前

カレンダーのアドオン

  • アドオンが calendar.name または common.name を使用する場合、マニフェストの名前はアプリの掲載情報で指定された名前と同じになります。
  • アドオンが calendar.conferenceSolution を使用している場合、会議ソリューション名に「Google カレンダー」は含まれません。
  • 推奨)アドオンが calendar.conferenceSolution を使用する場合、会議ソリューションの名前は 30 文字を超えないようにします。
Google Workspace アドオン 機能
  • アドインは、目的の機能に適した ウィジェット(または Meet アドインの iframed UI)を使用します。たとえば、スイッチを使用してブール値を選択します。

カレンダーのアドオン

  • 予備カレンダーと委任はサポートされています。サポートされていない場合は、適切に管理されます。たとえば、ユーザーが予定を作成するときに、編集権限を持つ別のカレンダーを選択しても、会議の作成は失敗しません。
  • 定期的な予定が正しく機能する。
  • アドオンが calendar.conferenceSolution を使用する場合、少なくとも 1 つの会議ソリューションが提供されます。
  • アドオンが会議ソリューションを提供している場合は、適切な会議データ フィールドが使用されます。たとえば、ビデオ会議のリンク、電話番号、SIP リンク、アクセス コードなどのサポートされている属性は、構造化データ フィールドを使用し、メモ フィールドには指定されません。
  • アドオンが会議ソリューションを提供する場合、会議の詳細のみを編集し、他の予定フィールドは編集しません。
  • アドオンが会議ソリューションを提供している場合、会議の作成は 5 秒未満で完了します。

Gmail アドオン

アドオンで UrlFetchApp または OpenLinkUrl を使用している場合:

  • URL は有効です。
  • URL は HTTP ではなく HTTPS を使用しています。
  • 完全なドメインが指定されています。
  • パスが空でないこと。たとえば、https://altostrat/ は使用できますが、https://altostrat は使用できません。
  • UrlFetchApp ではワイルドカードを使用できません。

Meet アドオン

  • サードパーティ Cookie が無効になっている場合でも、アドオンのログインとユーザー ジャーニーが機能している必要があります。
  • アドオンは、会議の運営や参加に関連する機能を提供する必要があります。
  • ブラウザの更新など、ユーザーが会議から離脱する原因となる動作は、アドオンで行ってはなりません。
  • マルチプレーヤー エクスペリエンスを使用する場合は、権限が事前に設定されていなくても、すべての参加者がコンテンツを共同編集できるようにする必要があります。権限の調整は、コラボレーション アドオン セッション中に行う必要があります。
  • アドオンは、アクティビティ開始フローのキャンセルを処理し、ユーザーがアプリからアクティビティの開始を再開できるようにする必要があります。
  • アドオンには、アクティビティ エクスペリエンスのログインと設定用のサイドパネルが必要です。
  • アドオンは、bot を招待する機能や、会議での bot の存在に依存する機能を提供してはなりません。
Google Workspace アドオン ユーザー エクスペリエンス
  • アドオンにホームページがあります。Google Workspace アドオンが変換された Gmail アドオンの場合は、デフォルトのホームページが適用されます。
  • アドオン カード(または Meet アドオンの iframe 化された UI)が正しく機能します。たとえば、重複するアイテムはなく、[戻る]、[更新]、[更新] ボタンが適切に機能します。
  • ユーザーがアドオンを承認すると、カスタマイズされたホームページ カード(Meet アドオンのウェブページ)が表示され、ログイン ボタン(必要に応じて)、ロゴ、アドオンの簡単な説明とともにユーザーを迎えます。
    • ログインボタンがトリガーされると、サードパーティ ベンダーのカスタマイズされたログインページが表示されます。このページには、Google Workspace の外部で動作するサードパーティ サービスがあることが明記されています。
  • アドオンの UI は、割り当てられたスペースにきちんと収まります。
    • テキストとラベルが「...」で切り捨てられない
    • ユーザーが縦方向にスクロールする回数を減らせる。
    • コンテンツの幅が 300 ピクセルを超えないようにして、横方向のスクロールバーが表示されないようにします。
  • ライブラリはアドオンのパフォーマンス低下を引き起こす可能性があるため、アドオンのコードではライブラリを過度に使用しない。

カレンダーのアドオン

  • アドオンが会議システムを提供している場合、作成された会議は有効で、サードパーティ製会議システムのウェブサイトに正しく表示されます。

ドキュメント アドオン

アドオンがサードパーティのドメインのリンクをプレビューする場合(スマートチップ):

  • リンク プレビューは、ユーザーに関連性の高い補足情報を提供します。 たとえば、営業案件へのリンクをプレビューすると、アカウント、金額、ステージなどの情報が追加されます。
  • デベロッパーがプレビュー対象のドメインに関連付けられている。

詳細については、スマートチップを使用してリンクをプレビューするをご覧ください。

ドライブのアドオン

  • アプリがドライブにファイルを保存する場合は、ユーザーがフォルダを選択できます。また、アプリ固有のフォルダを作成して再利用することもできます。構成データは、アプリデータ フォルダに保存できます。アプリは、ユーザーのマイドライブ フォルダにファイルをダンプしません。
  • アドオンは、アドオンの記載されている機能に関連するファイルのみをドライブに保存します。

Gmail アドオン

  • アドオンで、正当な理由なく Chrome ブラウザの拡張機能に言及していない、またはリンクしていない。
  • [その他の操作] メニュー には、適切に機能するユニバーサル アクションが含まれています。たとえば、[ログアウト]、[概要]、[サポート] などです。

Meet アドオン

  • アドオンにライセンスまたは定期購入が必要な場合: ユーザーにライセンスがない場合は、ユーザー フレンドリーなメッセージを表示する必要があります。
  • ライセンスの問題が原因でユーザーがアドオンを使用できない場合は、アドオンを使用できない理由を明確に記載し、ユーザーが状況を改善するための対処方法を提案するエラー メッセージを表示する必要があります。
  • アドオンの Google Workspace Marketplace の掲載情報には、アドオンの使用に必要なライセンスとサブスクリプションの要件について詳しく記載する必要があります。アドオンに有料の階層がある場合は、Marketplace リスティングに、料金や営業担当者への連絡方法に関する詳細情報を提供するウェブページへのリンクを記載する必要があります。
  • ユーザーがまだログインしていない場合、アドオンは [Google One Tap を表示] で指定したワンタップ ログイン プロンプトと、[認証] で指定した「Google でログイン」の代替手段を表示する必要があります。「Google でログイン」メカニズムに加えて、他のログイン オプションが提供される場合があります。
  • アドオンには、コンテンツをさまざまなサイズに適応させることができるレスポンシブ デザインが必要です。
  • サードパーティ Cookie が無効になっている場合でも、アドオンのユーザー ジャーニーが機能している必要があります。
  • アドオンの iframe 内で横方向にスクロールできないようにする必要があります。
  • アドオンがメインステージを使用する場合は、マルチプレイヤー エクスペリエンス用に設計され、複数の参加者が同時にコンテンツを操作できるようにする必要があります。シングル プレーヤー エクスペリエンスの場合は、サイドパネルを使用する必要があります。
  • 推奨)ログインしているユーザーをアドオンに表示します。
  • 推奨)ローカライズの選択: 言語は、ブラウザで設定されたローカル設定に基づく必要があります(利用可能な場合)。
  • 推奨)コンテンツの選択は、最近アクセスしたコンテンツを表示するコンテンツ ブラウジング インターフェースから行う必要があります。
  • 推奨)サイドパネルが不要になった場合は、メインステージに起動した後にアドオンがサイドパネルを閉じる必要があります。
Google Workspace アドオン グラフィック

カレンダーのアドオン

  • 会議ソリューションのロゴは公開 URL です。 会議ソリューションのロゴを提供するをご覧ください。
  • アドオンで calendar.conferenceSolution を使用する場合、会議ソリューションのロゴは calendar.logoUrl の要件に準拠しています。 カレンダー マニフェスト リソースをご覧ください。
  • アドオンで calendar.logoUrl または common.logoUrl を使用する場合、ロゴはアプリの掲載情報に表示されるアイコンと同じになります。
  • アドオンが calendar.logoUrl または common.logoUrl を使用している場合、ロゴの URL は https://lh3.googleusercontent.com/ で始まります。

Meet アドオン

  • アドオンのブランドロゴは、Meet のサイドパネルで識別できるサイズとスタイルにする必要があります。
  • 適切なダークモードのロゴの URL をアドオンのマニフェストで指定する必要があります。
Google Workspace アドオン OAuth

ドライブのアドオン

  • 推奨)限定メタデータを受信する場合は、アドオンに drive.addons.metadata.readonly スコープが含まれています。
ウェブアプリ 機能
  • ユニバーサル ナビゲーション URL はウェブアプリを参照します。機能のない単純なウェブページはウェブアプリと見なされません。