URL パラメータを使用して GitHub App を作成する

新しい GitHub App の構成を迅速に設定するため、URL [クエリパラメータ] (https://en.wikipedia.org/wiki/Query_string) を使用して新しい GitHub App の設定を事前設定できます。

GitHub App URL パラメータについて

個人または Organization アカウントで、GitHub App の構成を事前設定する以下の URL をクエリパラメータに追加できます。

  • ユーザアカウント: http(s)://[hostname]/settings/apps/new
  • Organization アカウント: http(s)://[hostname]/organizations/:org/settings/apps/new

アプリケーションを作成するユーザは、アプリケーションをサブミットする前に GitHub App 登録ページから事前設定する値を編集できます。 URL クエリ文字列に name などの必須の値を含めない場合、アプリケーションを作成するユーザが、アプリケーションをサブミットする前に値を入力する必要があります。

以下の URL は、説明とコールバック URL が事前設定された、octocat-github-app という新しい公開アプリケーションを作成します。 また、この URL はchecks の読み取りおよび書き込み権限を選択し、check_run および check_suite webhook イベントにサブスクライブし、インストール時にユーザの認可 (OAuth) をリクエストするオプションを選択します。

http(s)://[hostname]/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

名前種類説明
namestringGitHub App の名前。 アプリケーションには簡潔で明快な名前を付けましょう。 アプリケーションの名前は、既存の GitHub ユーザと同じ名前にできません。ただし、その名前があなた自身のユーザ名や Organization 名である場合は例外です。 インテグレーションが動作すると、ユーザインターフェース上にアプリケーション名のスラッグが表示されます。
説明stringGitHub App の説明。
urlstringThe full URL of your GitHub App's website homepage.
callback_urlsarray of stringsA 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_installbooleanアプリケーションが OAuth フローを使用してユーザを認可する場合、このオプションを true にして、インストール時にアプリケーションを認可し、ステップを省略するように設定できます。 このオプションを選択した場合、setup_url が利用できなくなり、アプリケーションのインストール後はあなたが設定した callback_url にリダイレクトされます。
setup_urlstringGitHub App アプリケーションをインストール後に追加セットアップが必要な場合に、リダイレクトする完全な URL。
setup_on_updatebooleantrue に設定すると、たとえばリポジトリが追加や削除された後など、インストールしたアプリケーションが更新された場合に、ユーザをセットアップ URL にリダイレクトします。
publicbooleanGitHub App を公開する場合には true に、アプリケーションの所有者のみがアクセスできるようにするには false を設定。
webhook_urlstringwebhook イベントペイロードを送信する完全な URL。
webhook_secretstringwebhook を保護するためのシークレットを指定できます。 詳細は「webhook を保護する」を参照。
eventsarray of stringswebhook イベント. 一部の webhook イベントでは、新しい GitHub App を登録する際、イベントを選択するためにread または write 権限が必要です。 利用可能なイベントと、それに必要な権限については、「GitHub App webhook イベント」セクションを参照してください。 クエリ文字列では、複数のイベントを選択できます。 たとえば、events[]=public&events[]=label とできます。
ドメインstringコンテンツ参照の URL。
single_file_namestringこれは、アプリケーションが任意のリポジトリの単一のファイルにアクセスできるようにするための、スコープの狭い権限です。 single_file 権限を read または write に設定すると、このフィールドは GitHub App が扱う単一のファイルへのパスを指定します。 複数のファイルを扱う必要がある場合、以下の single_file_paths を参照してください。
single_file_pathsarray 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 権限を含めないようにします。

権限説明
administrationOrganization およびリポジトリ管理のためのさまざまなエンドポイントにアクセス権を付与します。 nonereadwrite のいずれかです。
checksChecks API へのアクセス権を付与します。 nonereadwrite のいずれかです。
content_referencesコンテンツ添付の作成」エンドポイントへのアクセス権を付与します。 nonereadwrite のいずれかです。
contentsさまざまなエンドポイントにアクセス権を付与し、リポジトリのコンテンツを変更できるようにします。 nonereadwrite のいずれかです。
deploymentsDeployments API へのアクセス権を付与します。 nonereadwrite のいずれかです。
emailsEmails API へのアクセス権を付与します。 nonereadwrite のいずれかです。
followersFollowers API へのアクセス権を付与します。 nonereadwrite のいずれかです。
gpg_keysGPG Keys API へのアクセス権を付与します。 nonereadwrite のいずれかです。
issuesIssues API へのアクセス権を付与します。 nonereadwrite のいずれかです。
keysPublic Keys API へのアクセス権を付与します。 nonereadwrite のいずれかです。
membersOrganization のメンバーへのアクセス権を付与します。 nonereadwrite のいずれかです。
organization_hooksOrganization Webhooks API へのアクセス権を付与します。 nonereadwrite のいずれかです。
organization_planOrganization の取得」エンドポイントを使用して Organization のプランについての情報を取得するためのアクセス権を付与します。 noneread のいずれかです。
organization_projectsProjects API へのアクセス権を付与します。 nonereadwriteadmin のいずれかです。
pagesPages API へのアクセス権を付与します。 nonereadwrite のいずれかです。
planユーザの取得」エンドポイントを使用してユーザの GitHub プランについての情報を取得するためのアクセス権を付与します。 noneread のいずれかです。
pull_requestsさまざまなプルリクエストエンドポイントへのアクセス権を付与します。 nonereadwrite のいずれかです。
repository_hooksRepository Webhooks API へのアクセス権を付与します。 nonereadwrite のいずれかです。
repository_projectsProjects API へのアクセス権を付与します。 nonereadwriteadmin のいずれかです。
secret_scanning_alertsSecret scanning API へのアクセス権を付与します。 nonereadwrite のいずれかです。
security_eventsCode scanning API へのアクセス権を付与します。 nonereadwrite のいずれかです。
single_fileContents API へのアクセス権を付与します。 nonereadwrite のいずれかです。
starringStarring API へのアクセス権を付与します。 nonereadwrite のいずれかです。
statusesStatuses API へのアクセス権を付与します。 nonereadwrite のいずれかです。
team_discussionsTeam Discussions API および Team Discussion Comments API へのアクセス権を付与します。 nonereadwrite のいずれかです。
vulnerability_alertsリポジトリ内の脆弱性のある依存関係に対するセキュリティアラートを受信するためのアクセス権を付与します。 See "About alerts for vulnerable dependencies" to learn more. noneread のいずれかです。
Watchリストへのアクセス権を付与し、ユーザがサブスクライブするリポジトリの変更を許可します。 nonereadwrite のいずれかです。

GitHub App webhook イベント

Webhook イベント名必要な権限説明
check_runchecksチェックランのアクティビティが発生しました。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「check runs」 REST APIを参照してください。
check_suitechecksチェックスイートのアクティビティが発生しました。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「check suites」 REST APIを参照してください。
commit_commentcontentsコミットコメントが作成されました。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「コミットコメント」 REST APIを参照してください。
content_referencecontent_references新しいコンテンツ参照が作成されました。 新しいコンテンツ参照は、IssueもしくはPull Requestのボディあるいはコメントが、設定されたコンテンツ参照ドメインにマッチする場合に作成されます。 詳しい情報については「コンテンツの添付ファイルの使用」を参照して、コンテンツ参照と添付ファイルについて学んでください。
createcontentsGitブランチもしくはタグが作成されました。 詳しい情報については「Gitデータ」 REST APIを参照してください。
deletecontentsGitブランチまたはタグが削除されました。 詳しい情報については「Gitデータ」 REST APIを参照してください。
deploymentdeploymentsデプロイメントが作成されました。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「デプロイメント」 REST APIを参照してください。
deployment_statusdeploymentsデプロイメントが作成されました。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「デプロイメントステータス」 REST APIを参照してください。
フォークcontentsユーザがリポジトリをフォークします。 詳しい情報については「forks」 REST APIを参照してください。
gollumcontentswikiページが作成もしくは更新されました。 詳しい情報については「wikiについて」を参照してください。
issuesissuesIssueに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Issue」 REST APIを参照してください。
issue_commentissuesIssueあるいはPull Requestコメントに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Issueコメント" REST APIを参照してください。
ラベルメタデータラベルに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「ラベル」 REST APIを参照してください。
membermembersリポジトリのコラボレータに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「コラボレータ」 REST APIを参照してください。
membershipmembersTeamのメンバーシップに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Teamメンバー」 REST APIを参照してください。
マイルストーンpull_requestマイルストーンに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「マイルストーン」 REST APIを参照してください。
OrganizationmembersOrganization及びそのメンバーと関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Organization」 REST APIを参照してください。
page_buildpages成功か否かにかかわらず、GitHub Pagesサイトの試行されたビルドを表します。 GitHub Pagesが有効化されたブランチ(プロジェクトのPagesならgh-pages、ユーザ及びOrganizationのPagesならデフォルトブランチ)へのプッシュがこのイベントをトリガーします。
projectrepository_projects または organization_projectsプロジェクトボードに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「プロジェクト」 REST APIを参照してください。
project_cardrepository_projects または organization_projectsプロジェクトカードに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「プロジェクトカード」 REST APIを参照してください。
project_columnrepository_projects または organization_projectsプロジェクトボード内の列に関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「プロジェクトの列」 REST APIを参照してください。
publicメタデータプライベートリポジトリがパブリックにされたとき。 間違いなく: 最高のGitHub Enterprise Serverイベント。
pull_requestpull_requestsPull Requestに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Pull Request」 REST APIを参照してください。
pull_request_reviewpull_requestPull Requestレビューに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Pull Requestレビュー」 REST APIを参照してください。
pull_request_review_commentpull_requestPull Requestの統合diff中のPull Requestレビューコメントに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Pull Requestのレビューコメント」 REST APIを参照してください。
プッシュcontentsリポジトリのブランチもしくはタグに、1つ以上のコミットがプッシュされました。
リリースcontentsリリースに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「リリース」 REST APIを参照してください。
リポジトリメタデータリポジトリに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「リポジトリ」 REST APIを参照してください。
ステータスstatusesGitコミットのステータスが変化したとき。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「ステータス」 REST APIを参照してください。
TeammembersOrganizationのTeamに関連するアクティビティ。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Team」 REST APIを参照してください。
team_addmembersリポジトリがTeamに追加された
Watchメタデータ誰かがリポジトリにStarを付けたとき。 アクティビティのタイプは、ペイロードオブジェクトのactionプロパティで指定されます。 詳しい情報については「Star付け」 REST APIを参照してください。

このドキュメントは役立ちましたか?プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?

GitHubコミュニティで質問するサポートへの連絡