GitHub App URL パラメータについて
個人または Organization アカウントで、GitHub App の構成を事前設定する以下の URL をクエリパラメータに追加できます。
- ユーザアカウント:
https://github.com/settings/apps/new
- Organization アカウント:
https://github.com/organizations/:org/settings/apps/new
アプリケーションを作成するユーザは、アプリケーションをサブミットする前に GitHub App 登録ページから事前設定する値を編集できます。 URL クエリ文字列に name
などの必須の値を含めない場合、アプリケーションを作成するユーザが、アプリケーションをサブミットする前に値を入力する必要があります。
For apps that require a secret to secure their webhook, the secret's value must be set in the form by the person creating the app, not by using query parameters. 詳しい情報については「webhookをセキュアにする」を参照してください。
以下の URL は、説明とコールバック URL が事前設定された、octocat-github-app
という新しい公開アプリケーションを作成します。 また、この URL はchecks
の読み取りおよび書き込み権限を選択し、check_run
および check_suite
webhook イベントにサブスクライブし、インストール時にユーザの認可 (OAuth) をリクエストするオプションを選択します。
https://github.com/settings/apps/new?name=octocat-github-app&description=An%20Octocat%20App&callback_urls[]=https://example.com&request_oauth_on_install=true&public=true&checks=write&events[]=check_run&events[]=check_suite
使用可能なクエリパラメータ、権限、およびイベントの完全なリストを、以下のセクションに記載します。
GitHub App configuration parameters
名前 | 種類 | 説明 |
---|---|---|
name | string | GitHub App の名前。 アプリケーションには簡潔で明快な名前を付けましょう。 アプリケーションの名前は、既存の GitHub ユーザと同じ名前にできません。ただし、その名前があなた自身のユーザ名や Organization 名である場合は例外です。 インテグレーションが動作すると、ユーザインターフェース上にアプリケーション名のスラッグが表示されます。 |
説明 | string | GitHub App の説明。 |
url | string | The full URL of your GitHub App's website homepage. |
callback_urls | array of strings | A full URL to redirect to after someone authorizes an installation. You can provide up to 10 callback URLs. These URLs are used if your app needs to identify and authorize user-to-server requests. For example, callback_urls[]=https://example.com&callback_urls[]=https://example-2.com . |
request_oauth_on_install | boolean | アプリケーションが OAuth フローを使用してユーザを認可する場合、このオプションを true にして、インストール時にアプリケーションを認可し、ステップを省略するように設定できます。 このオプションを選択した場合、setup_url が利用できなくなり、アプリケーションのインストール後はあなたが設定した callback_url にリダイレクトされます。 |
setup_url | string | GitHub App アプリケーションをインストール後に追加セットアップが必要な場合に、リダイレクトする完全な URL。 |
setup_on_update | boolean | true に設定すると、たとえばリポジトリが追加や削除された後など、インストールしたアプリケーションが更新された場合に、ユーザをセットアップ URL にリダイレクトします。 |
public | boolean | GitHub App を公開する場合には true に、アプリケーションの所有者のみがアクセスできるようにするには false を設定。 |
webhook_url | string | webhook イベントペイロードを送信する完全な URL。 |
events | array of strings | webhook イベント. 一部の webhook イベントでは、新しい GitHub App を登録する際、イベントを選択するためにread または write 権限が必要です。 利用可能なイベントと、それに必要な権限については、「GitHub App webhook イベント」セクションを参照してください。 クエリ文字列では、複数のイベントを選択できます。 たとえば、events[]=public&events[]=label とできます。 |
ドメイン | string | コンテンツ参照の URL。 |
single_file_name | string | これは、アプリケーションが任意のリポジトリの単一のファイルにアクセスできるようにするための、スコープの狭い権限です。 single_file 権限を read または write に設定すると、このフィールドは GitHub App が扱う単一のファイルへのパスを指定します。 複数のファイルを扱う必要がある場合、以下の single_file_paths を参照してください。 |
single_file_paths | array of strings | アプリケーションが、リポジトリ内の指定した最大 10 ファイルにアクセスできるようにします。 single_file 権限を read または write に設定すると、この配列は GitHub App が扱う最大 10 個のファイルへのパスを格納できます。 これらのファイルには、それぞれ別々の権限があたえられるでのではなく、すべて single_file が設定したものと同じ権限が与えられます。 2 つ以上のファイルが設定されている場合、API は multiple_single_files=true を返し、それ以外の場合は multiple_single_files=false を返します。 |
GitHub App の権限
以下の表にある権限名をクエリパラメータ名として、権限タイプをクエリの値として使用することで、クエリ文字列で権限を設定できます。 たとえば、contents
のユーザインターフェースに Read & write
権限を設定するには、クエリ文字列に &contents=write
を含めます。 blocking
のユーザインターフェースに Read-only
権限を設定するには、クエリ文字列に &blocking=read
を含めます。 checks
のユーザインターフェースに no-access
を設定するには、クエリ文字列に checks
権限を含めないようにします。
権限 | 説明 |
---|---|
administration | Organization およびリポジトリ管理のためのさまざまなエンドポイントにアクセス権を付与します。 none 、read 、write のいずれかです。 |
blocking | Blocking Users API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
checks | Checks API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
content_references | 「コンテンツ添付の作成」エンドポイントへのアクセス権を付与します。 none 、read 、write のいずれかです。 |
contents | さまざまなエンドポイントにアクセス権を付与し、リポジトリのコンテンツを変更できるようにします。 none 、read 、write のいずれかです。 |
deployments | Deployments API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
emails | Emails API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
followers | Followers API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
gpg_keys | GPG Keys API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
issues | Issues API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
keys | Public Keys API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
members | Organization のメンバーへのアクセス権を付与します。 none 、read 、write のいずれかです。 |
メタデータ | 機密データを漏洩しない、読み取り専用のエンドポイントへのアクセス権を付与します。 read 、none のいずれかです。 GitHub App に何らかの権限を設定した場合、デフォルトは read となり、権限を指定しなかった場合、デフォルトは none となります。 |
organization_administration | 「Organization の更新」エンドポイントと、Organization Interaction Restrictions API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
organization_hooks | Organization Webhooks API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
organization_plan | 「Organization の取得」エンドポイントを使用して Organization のプランについての情報を取得するためのアクセス権を付与します。 none 、read のいずれかです。 |
organization_projects | Projects API へのアクセス権を付与します。 none 、read 、write 、admin のいずれかです。 |
organization_user_blocking | Blocking Organization Users API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
pages | Pages API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
plan | 「ユーザの取得」エンドポイントを使用してユーザの GitHub プランについての情報を取得するためのアクセス権を付与します。 none 、read のいずれかです。 |
pull_requests | さまざまなプルリクエストエンドポイントへのアクセス権を付与します。 none 、read 、write のいずれかです。 |
repository_hooks | Repository Webhooks API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
repository_projects | Projects API へのアクセス権を付与します。 none 、read 、write 、admin のいずれかです。 |
secret_scanning_alerts | Secret scanning API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
security_events | Code scanning API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
single_file | Contents API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
starring | Starring API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
statuses | Statuses API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
team_discussions | Team Discussions API および Team Discussion Comments API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
vulnerability_alerts | リポジトリ内の脆弱性のある依存関係に対するセキュリティアラートを受信するためのアクセス権を付与します。 See "About alerts for vulnerable dependencies" to learn more. none 、read のいずれかです。 |
Watch | リストへのアクセス権を付与し、ユーザがサブスクライブするリポジトリの変更を許可します。 none 、read 、write のいずれかです。 |
GitHub App webhook イベント
Webhook イベント名 | 必要な権限 | 説明 |
---|---|---|
check_run | checks | チェックランのアクティビティが発生しました。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「check runs」 REST APIを参照してください。 |
check_suite | checks | チェックスイートのアクティビティが発生しました。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「check suites」 REST APIを参照してください。 |
commit_comment | contents | コミットコメントが作成されました。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「コミットコメント」 REST APIを参照してください。 |
content_reference | content_references | 新しいコンテンツ参照が作成されました 。 新しいコンテンツ参照は、IssueもしくはPull Requestのボディあるいはコメントが、設定されたコンテンツ参照ドメインにマッチする場合に作成されます。 詳しい情報については「コンテンツの添付ファイルの使用」を参照して、コンテンツ参照と添付ファイルについて学んでください。 |
create | contents | Gitブランチもしくはタグが作成されました。 詳しい情報については「Gitデータ」 REST APIを参照してください。 |
delete | contents | Gitブランチまたはタグが削除されました。 詳しい情報については「Gitデータ」 REST APIを参照してください。 |
deployment | deployments | デプロイメントが作成されました。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「デプロイメント」 REST APIを参照してください。 |
deployment_status | deployments | デプロイメントが作成されました。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「デプロイメントステータス」 REST APIを参照してください。 |
フォーク | contents | ユーザがリポジトリをフォークします。 詳しい情報については「forks」 REST APIを参照してください。 |
gollum | contents | wikiページが作成もしくは更新されました。 詳しい情報については「wikiについて」を参照してください。 |
issues | issues | Issueに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Issue」 REST APIを参照してください。 |
issue_comment | issues | IssueあるいはPull Requestコメントに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Issueコメント" REST APIを参照してください。 |
ラベル | メタデータ | ラベルに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「ラベル」 REST APIを参照してください。 |
member | members | リポジトリのコラボレータに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「コラボレータ」 REST APIを参照してください。 |
membership | members | Teamのメンバーシップに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Teamメンバー」 REST APIを参照してください。 |
マイルストーン | pull_request | マイルストーンに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「マイルストーン」 REST APIを参照してください。 |
org_block | organization_administration | Organizationでブロックされている人に関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については、「Organization ユーザをブロックする」REST API を参照してください。 |
Organization | members | Organization及びそのメンバーと関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Organization」 REST APIを参照してください。 |
page_build | pages | 成功か否かにかかわらず、GitHub Pagesサイトの試行されたビルドを表します。 GitHub Pagesが有効化されたブランチ(プロジェクトのPagesならgh-pages 、ユーザ及びOrganizationのPagesならデフォルトブランチ)へのプッシュがこのイベントをトリガーします。 |
project | repository_projects または organization_projects | プロジェクトボードに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「プロジェクト」 REST APIを参照してください。 |
project_card | repository_projects または organization_projects | プロジェクトカードに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「プロジェクトカード」 REST APIを参照してください。 |
project_column | repository_projects または organization_projects | プロジェクトボード内の列に関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「プロジェクトの列」 REST APIを参照してください。 |
public | メタデータ | プライベートリポジトリがパブリックにされたとき。 間違いなく: 最高のGitHubイベント。 |
pull_request | pull_requests | Pull Requestに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Pull Request」 REST APIを参照してください。 |
pull_request_review | pull_request | Pull Requestレビューに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Pull Requestレビュー」 REST APIを参照してください。 |
pull_request_review_comment | pull_request | Pull Requestの統合diff中のPull Requestレビューコメントに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Pull Requestのレビューコメント」 REST APIを参照してください。 |
プッシュ | contents | リポジトリのブランチもしくはタグに、1つ以上のコミットがプッシュされました。 |
リリース | contents | リリースに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「リリース」 REST APIを参照してください。 |
リポジトリ | メタデータ | リポジトリに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「リポジトリ」 REST APIを参照してください。 |
repository_dispatch | contents | GitHub Action を使用するインテグレーターがカスタムイベントをトリガーできるようにします。 |
ステータス | statuses | Gitコミットのステータスが変化したとき。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「ステータス」 REST APIを参照してください。 |
Team | members | OrganizationのTeamに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Team」 REST APIを参照してください。 |
team_add | members | リポジトリがTeamに追加された。 |
Watch | メタデータ | 誰かがリポジトリにStarを付けたとき。 アクティビティのタイプは、ペイロードオブジェクトのaction プロパティで指定されます。 詳しい情報については「Star付け」 REST APIを参照してください。 |