GitHub App URL パラメータについて
個人または Organization アカウントで、GitHub App の構成を事前設定する以下の URL をクエリパラメータに追加できます。
- ユーザアカウント:
http(s)://[hostname]/settings/apps/new
- Organization アカウント:
http(s)://[hostname]/: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_url=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 名である場合は例外です。 インテグレーションが動作すると、ユーザインターフェース上にアプリケーション名のスラッグが表示されます。 |
description | string | GitHub App の説明。 |
url | string | GitHub App のホームページの完全な URL。 |
callback_url | string | インストールの承認後にリダイレクトする完全な URL。 この URL は、アプリケーションがユーザからサーバへのリクエストを識別して承認する必要がある場合に使用されます。 |
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。 |
webhook_secret | string | webhook を保護するためのシークレットを指定できます。 詳細は「webhook を保護する」を参照。 |
events | array of strings | webhook イベント. 一部の webhook イベントでは、新しい GitHub App を登録する際、イベントを選択するためにread または write 権限が必要です。 利用可能なイベントと、それに必要な権限については、「GitHub App webhook イベント」セクションを参照してください。 クエリ文字列では、複数のイベントを選択できます。 たとえば、events[]=public&events[]=label とできます。 |
domain | string | コンテンツ参照の URL。 |
single_file_name | string | これは、アプリケーションが任意のリポジトリの単一のファイルにアクセスできるようにするための、スコープの狭い権限です。 single_file 権限を read または write に設定すると、このフィールドは GitHub App が扱う単一のファイルへのパスを指定します。 |
GitHub App の権限
以下の表にある権限名をクエリパラメータ名として、権限タイプをクエリの値として使用することで、クエリ文字列で権限を設定できます。 たとえば、contents
のユーザインターフェースに Read & write
権限を設定するには、クエリ文字列に &contents=write
を含めます。 blocking
のユーザインターフェースに Read-only
権限を設定するには、クエリ文字列に &blocking=read
を含めます。 checks
のユーザインターフェースに no-access
を設定するには、クエリ文字列に checks
権限を含めないようにします。
権限 | 説明 |
---|---|
administration | Organization およびリポジトリ管理のためのさまざまなエンドポイントにアクセス権を付与します。 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 のいずれかです。 |
organization_hooks | Organization Webhooks API へのアクセス権を付与します。 none 、read 、write のいずれかです。 |
organization_plan | 「Organization の取得」エンドポイントを使用して Organization のプランについての情報を取得するためのアクセス権を付与します。 none 、read のいずれかです。 |
organization_projects | Projects API へのアクセス権を付与します。 none 、read 、write 、admin のいずれかです。 |
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 のいずれかです。 |
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 | リポジトリ内の脆弱性のある依存関係に対するセキュリティアラートを受信するためのアクセス権を付与します。 詳細は「脆弱性のある依存関係に対するセキュリティアラートについて」を参照。 none 、read のいずれかです。 |
Watch | リストへのアクセス権を付与し、ユーザがサブスクライブするリポジトリの変更を許可します。 none 、read 、write のいずれかです。 |
GitHub App webhook イベント
Webhook イベント名 | 必要な権限 | 説明 |
---|---|---|
check_run | checks | Check run activity has occurred. The type of activity is specified in the action property of the payload object. For more information, see the "check runs" REST API. |
check_suite | checks | Check suite activity has occurred. The type of activity is specified in the action property of the payload object. For more information, see the "check suites" REST API. |
commit_comment | contents | A commit comment is created. The type of activity is specified in the action property of the payload object. For more information, see the "commit comment" REST API. |
content_reference | content_references | A new content reference is created . A new content reference is created when the body or comment of an issue or pull request includes a URL that matches a configured content reference domain. For more information, see "Using content attachments" to learn more about content references and attachments. |
create | contents | A Git branch or tag is created. For more information, see the "Git data" REST API. |
delete | contents | A Git branch or tag is deleted. For more information, see the "Git data" REST API. |
deployment | deployments | A deployment is created. The type of activity is specified in the action property of the payload object. For more information, see the "deployment" REST API. |
deployment_status | deployments | A deployment is created. The type of activity is specified in the action property of the payload object. For more information, see the "deployment statuses" REST API. |
fork | contents | A user forks a repository. For more information, see the "forks" REST API. |
gollum | contents | A wiki page is created or updated. For more information, see the "About wikis". |
issues | issues | Activity related to an issue. The type of activity is specified in the action property of the payload object. For more information, see the "issues" REST API. |
issue_comment | issues | Activity related to an issue comment. The type of activity is specified in the action property of the payload object. For more information, see the "issue comments" REST API. |
label | メタデータ | Activity related to an issue. The type of activity is specified in the action property of the payload object. For more information, see the "labels" REST API. |
member | members | Activity related to repository collaborators. The type of activity is specified in the action property of the payload object. For more information, see the "collaborators" REST API. |
membership | members | Activity related to team membership. The type of activity is specified in the action property of the payload object. For more information, see the "team members" REST API. |
milestone | pull_request | Activity related to milestones. The type of activity is specified in the action property of the payload object. For more information, see the "milestones" REST API. |
Organization | members | Activity related to an organization and its members. The type of activity is specified in the action property of the payload object. For more information, see the "organizations" REST API. |
page_build | pages | Represents an attempted build of a GitHub Pages site, whether successful or not. A push to a GitHub Pages enabled branch (gh-pages for project pages, the default branch for user and organization pages) triggers this event. |
project | repository_projects または organization_projects | Activity related to project boards. The type of activity is specified in the action property of the payload object. For more information, see the "projects" REST API. |
project_card | repository_projects または organization_projects | Activity related to project cards. The type of activity is specified in the action property of the payload object. For more information, see the "project cards" REST API. |
project_column | repository_projects または organization_projects | Activity related to columns in a project board. The type of activity is specified in the action property of the payload object. For more information, see the "project columns" REST API. |
public | メタデータ | When a private repository is made public. Without a doubt: the best GitHub Enterprise Server event. |
pull_request | pull_requests | Activity related to pull requests. The type of activity is specified in the action property of the payload object. For more information, see the "pull requests" REST API. |
pull_request_review | pull_request | Activity related to pull request reviews. The type of activity is specified in the action property of the payload object. For more information, see the "pull request reviews" REST API. |
pull_request_review_comment | pull_request | Activity related to pull request review comments in the pull request's unified diff. The type of activity is specified in the action property of the payload object. For more information, see the "pull request review comments" REST API. |
push | contents | One or more commits are pushed to a repository branch or tag. |
release | contents | Activity related to a release. The type of activity is specified in the action property of the payload object. For more information, see the "releases" REST API. |
repository | メタデータ | Activity related to a repository. The type of activity is specified in the action property of the payload object. For more information, see the "repositories" REST API. |
status | statuses | When the status of a Git commit changes. The type of activity is specified in the action property of the payload object. For more information, see the "statuses" REST API. |
Team | members | Activity related to an organization's team. The type of activity is specified in the action property of the payload object. For more information, see the "teams" REST API. |
team_add | members | リポジトリがTeamに追加された。 |
Watch | メタデータ | When someone stars a repository. The type of activity is specified in the action property of the payload object. For more information, see the "starring" REST API. |