installation_repos
Creates, updates, deletes, gets or lists an installation_repos resource.
Overview
| Name | installation_repos |
| Type | Resource |
| Id | github.apps.installation_repos |
Fields
The following fields are returned by SELECT queries:
- list_installation_repos_for_authenticated_user
- list_repos_accessible_to_installation
The access the user has to each repository is included in the hash under the permissions key.
| Name | Datatype | Description |
|---|---|---|
id | integer (int64) | Unique identifier of the repository |
name | string | The name of the repository. (example: Team Environment) |
node_id | string | (example: MDEwOlJlcG9zaXRvcnkxMjk2MjY5) |
full_name | string | (example: octocat/Hello-World) |
allow_auto_merge | boolean | Whether to allow Auto-merge to be used on pull requests. |
allow_forking | boolean | Whether to allow forking this repo |
allow_merge_commit | boolean | Whether to allow merge commits for pull requests. |
allow_rebase_merge | boolean | Whether to allow rebase merges for pull requests. |
allow_squash_merge | boolean | Whether to allow squash merges for pull requests. |
allow_update_branch | boolean | Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging. |
anonymous_access_enabled | boolean | Whether anonymous git access is enabled for this repository |
archive_url | string | (example: http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}) |
archived | boolean | Whether the repository is archived. |
assignees_url | string | (example: http://api.github.com/repos/octocat/Hello-World/assignees{/user}) |
blobs_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}) |
branches_url | string | (example: http://api.github.com/repos/octocat/Hello-World/branches{/branch}) |
clone_url | string | (example: https://github.com/octocat/Hello-World.git) |
code_search_index_status | object | The status of the code search index for this repository |
collaborators_url | string | (example: http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}) |
comments_url | string | (example: http://api.github.com/repos/octocat/Hello-World/comments{/number}) |
commits_url | string | (example: http://api.github.com/repos/octocat/Hello-World/commits{/sha}) |
compare_url | string | (example: http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}) |
contents_url | string | (example: http://api.github.com/repos/octocat/Hello-World/contents/{+path}) |
contributors_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/contributors) |
created_at | string (date-time) | (example: 2011-01-26T19:01:12Z) |
default_branch | string | The default branch of the repository. (example: master) |
delete_branch_on_merge | boolean | Whether to delete head branches when pull requests are merged |
deployments_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/deployments) |
description | string | (example: This your first repo!) |
disabled | boolean | Returns whether or not this repository disabled. |
downloads_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/downloads) |
events_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/events) |
fork | boolean | |
forks | integer | |
forks_count | integer | |
forks_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/forks) |
git_commits_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}) |
git_refs_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}) |
git_tags_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}) |
git_url | string | (example: git:github.com/octocat/Hello-World.git) |
has_discussions | boolean | Whether discussions are enabled. |
has_downloads | boolean | Whether downloads are enabled. |
has_issues | boolean | Whether issues are enabled. |
has_pages | boolean | |
has_projects | boolean | Whether projects are enabled. |
has_pull_requests | boolean | Whether pull requests are enabled. |
has_wiki | boolean | Whether the wiki is enabled. |
homepage | string (uri) | (example: https://github.com) |
hooks_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/hooks) |
html_url | string (uri) | (example: https://github.com/octocat/Hello-World) |
is_template | boolean | Whether this repository acts as a template that can be used to generate new repositories. |
issue_comment_url | string | (example: http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}) |
issue_events_url | string | (example: http://api.github.com/repos/octocat/Hello-World/issues/events{/number}) |
issues_url | string | (example: http://api.github.com/repos/octocat/Hello-World/issues{/number}) |
keys_url | string | (example: http://api.github.com/repos/octocat/Hello-World/keys{/key_id}) |
labels_url | string | (example: http://api.github.com/repos/octocat/Hello-World/labels{/name}) |
language | string | |
languages_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/languages) |
license | object | License Simple (title: License Simple) |
master_branch | string | |
merge_commit_message | string | The default value for a merge commit message. - PR_TITLE - default to the pull request's title. - PR_BODY - default to the pull request's body. - BLANK - default to a blank commit message. (PR_BODY, PR_TITLE, BLANK) |
merge_commit_title | string | The default value for a merge commit title. - PR_TITLE - default to the pull request's title. - MERGE_MESSAGE - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). (PR_TITLE, MERGE_MESSAGE) |
merges_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/merges) |
milestones_url | string | (example: http://api.github.com/repos/octocat/Hello-World/milestones{/number}) |
mirror_url | string (uri) | (example: git:git.example.com/octocat/Hello-World) |
notifications_url | string | (example: http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}) |
open_issues | integer | |
open_issues_count | integer | |
owner | object | A GitHub user. (title: Simple User) |
permissions | object | |
private | boolean | Whether the repository is private or public. |
pull_request_creation_policy | string | The policy controlling who can create pull requests: all or collaborators_only. (all, collaborators_only) (example: all) |
pulls_url | string | (example: http://api.github.com/repos/octocat/Hello-World/pulls{/number}) |
pushed_at | string (date-time) | (example: 2011-01-26T19:06:43Z) |
releases_url | string | (example: http://api.github.com/repos/octocat/Hello-World/releases{/id}) |
size | integer | The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0. |
squash_merge_commit_message | string | The default value for a squash merge commit message: - PR_BODY - default to the pull request's body. - COMMIT_MESSAGES - default to the branch's commit messages. - BLANK - default to a blank commit message. (PR_BODY, COMMIT_MESSAGES, BLANK) |
squash_merge_commit_title | string | The default value for a squash merge commit title: - PR_TITLE - default to the pull request's title. - COMMIT_OR_PR_TITLE - default to the commit's title (if only one commit) or the pull request's title (when more than one commit). (PR_TITLE, COMMIT_OR_PR_TITLE) |
ssh_url | string | (example: git@github.com:octocat/Hello-World.git) |
stargazers_count | integer | |
stargazers_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/stargazers) |
starred_at | string | (example: "2020-07-09T00:17:42Z") |
statuses_url | string | (example: http://api.github.com/repos/octocat/Hello-World/statuses/{sha}) |
subscribers_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/subscribers) |
subscription_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/subscription) |
svn_url | string (uri) | (example: https://svn.github.com/octocat/Hello-World) |
tags_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/tags) |
teams_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/teams) |
temp_clone_token | string | |
topics | array | |
trees_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}) |
updated_at | string (date-time) | (example: 2011-01-26T19:14:43Z) |
url | string (uri) | (example: https://api.github.com/repos/octocat/Hello-World) |
use_squash_pr_title_as_default | boolean | Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use squash_merge_commit_title instead. |
visibility | string | The repository visibility: public, private, or internal. (default: public) |
watchers | integer | |
watchers_count | integer | |
web_commit_signoff_required | boolean | Whether to require contributors to sign off on web-based commits |
Response
| Name | Datatype | Description |
|---|---|---|
id | integer (int64) | Unique identifier of the repository |
name | string | The name of the repository. (example: Team Environment) |
node_id | string | (example: MDEwOlJlcG9zaXRvcnkxMjk2MjY5) |
full_name | string | (example: octocat/Hello-World) |
allow_auto_merge | boolean | Whether to allow Auto-merge to be used on pull requests. |
allow_forking | boolean | Whether to allow forking this repo |
allow_merge_commit | boolean | Whether to allow merge commits for pull requests. |
allow_rebase_merge | boolean | Whether to allow rebase merges for pull requests. |
allow_squash_merge | boolean | Whether to allow squash merges for pull requests. |
allow_update_branch | boolean | Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging. |
anonymous_access_enabled | boolean | Whether anonymous git access is enabled for this repository |
archive_url | string | (example: http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}) |
archived | boolean | Whether the repository is archived. |
assignees_url | string | (example: http://api.github.com/repos/octocat/Hello-World/assignees{/user}) |
blobs_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}) |
branches_url | string | (example: http://api.github.com/repos/octocat/Hello-World/branches{/branch}) |
clone_url | string | (example: https://github.com/octocat/Hello-World.git) |
code_search_index_status | object | The status of the code search index for this repository |
collaborators_url | string | (example: http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}) |
comments_url | string | (example: http://api.github.com/repos/octocat/Hello-World/comments{/number}) |
commits_url | string | (example: http://api.github.com/repos/octocat/Hello-World/commits{/sha}) |
compare_url | string | (example: http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}) |
contents_url | string | (example: http://api.github.com/repos/octocat/Hello-World/contents/{+path}) |
contributors_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/contributors) |
created_at | string (date-time) | (example: 2011-01-26T19:01:12Z) |
default_branch | string | The default branch of the repository. (example: master) |
delete_branch_on_merge | boolean | Whether to delete head branches when pull requests are merged |
deployments_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/deployments) |
description | string | (example: This your first repo!) |
disabled | boolean | Returns whether or not this repository disabled. |
downloads_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/downloads) |
events_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/events) |
fork | boolean | |
forks | integer | |
forks_count | integer | |
forks_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/forks) |
git_commits_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}) |
git_refs_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}) |
git_tags_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}) |
git_url | string | (example: git:github.com/octocat/Hello-World.git) |
has_discussions | boolean | Whether discussions are enabled. |
has_downloads | boolean | Whether downloads are enabled. |
has_issues | boolean | Whether issues are enabled. |
has_pages | boolean | |
has_projects | boolean | Whether projects are enabled. |
has_pull_requests | boolean | Whether pull requests are enabled. |
has_wiki | boolean | Whether the wiki is enabled. |
homepage | string (uri) | (example: https://github.com) |
hooks_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/hooks) |
html_url | string (uri) | (example: https://github.com/octocat/Hello-World) |
is_template | boolean | Whether this repository acts as a template that can be used to generate new repositories. |
issue_comment_url | string | (example: http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}) |
issue_events_url | string | (example: http://api.github.com/repos/octocat/Hello-World/issues/events{/number}) |
issues_url | string | (example: http://api.github.com/repos/octocat/Hello-World/issues{/number}) |
keys_url | string | (example: http://api.github.com/repos/octocat/Hello-World/keys{/key_id}) |
labels_url | string | (example: http://api.github.com/repos/octocat/Hello-World/labels{/name}) |
language | string | |
languages_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/languages) |
license | object | License Simple (title: License Simple) |
master_branch | string | |
merge_commit_message | string | The default value for a merge commit message. - PR_TITLE - default to the pull request's title. - PR_BODY - default to the pull request's body. - BLANK - default to a blank commit message. (PR_BODY, PR_TITLE, BLANK) |
merge_commit_title | string | The default value for a merge commit title. - PR_TITLE - default to the pull request's title. - MERGE_MESSAGE - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). (PR_TITLE, MERGE_MESSAGE) |
merges_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/merges) |
milestones_url | string | (example: http://api.github.com/repos/octocat/Hello-World/milestones{/number}) |
mirror_url | string (uri) | (example: git:git.example.com/octocat/Hello-World) |
notifications_url | string | (example: http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}) |
open_issues | integer | |
open_issues_count | integer | |
owner | object | A GitHub user. (title: Simple User) |
permissions | object | |
private | boolean | Whether the repository is private or public. |
pull_request_creation_policy | string | The policy controlling who can create pull requests: all or collaborators_only. (all, collaborators_only) (example: all) |
pulls_url | string | (example: http://api.github.com/repos/octocat/Hello-World/pulls{/number}) |
pushed_at | string (date-time) | (example: 2011-01-26T19:06:43Z) |
releases_url | string | (example: http://api.github.com/repos/octocat/Hello-World/releases{/id}) |
size | integer | The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0. |
squash_merge_commit_message | string | The default value for a squash merge commit message: - PR_BODY - default to the pull request's body. - COMMIT_MESSAGES - default to the branch's commit messages. - BLANK - default to a blank commit message. (PR_BODY, COMMIT_MESSAGES, BLANK) |
squash_merge_commit_title | string | The default value for a squash merge commit title: - PR_TITLE - default to the pull request's title. - COMMIT_OR_PR_TITLE - default to the commit's title (if only one commit) or the pull request's title (when more than one commit). (PR_TITLE, COMMIT_OR_PR_TITLE) |
ssh_url | string | (example: git@github.com:octocat/Hello-World.git) |
stargazers_count | integer | |
stargazers_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/stargazers) |
starred_at | string | (example: "2020-07-09T00:17:42Z") |
statuses_url | string | (example: http://api.github.com/repos/octocat/Hello-World/statuses/{sha}) |
subscribers_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/subscribers) |
subscription_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/subscription) |
svn_url | string (uri) | (example: https://svn.github.com/octocat/Hello-World) |
tags_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/tags) |
teams_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/teams) |
temp_clone_token | string | |
topics | array | |
trees_url | string | (example: http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}) |
updated_at | string (date-time) | (example: 2011-01-26T19:14:43Z) |
url | string (uri) | (example: https://api.github.com/repos/octocat/Hello-World) |
use_squash_pr_title_as_default | boolean | Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use squash_merge_commit_title instead. |
visibility | string | The repository visibility: public, private, or internal. (default: public) |
watchers | integer | |
watchers_count | integer | |
web_commit_signoff_required | boolean | Whether to require contributors to sign off on web-based commits |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
list_installation_repos_for_authenticated_user | select | installation_id | per_page, page | List repositories that the authenticated user has explicit permission (:read, :write, or :admin) to access for an installation.The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership. The access the user has to each repository is included in the hash under the permissions key. |
list_repos_accessible_to_installation | select | per_page, page | List repositories that an app installation can access. | |
add_repo_to_installation_for_authenticated_user | insert | installation_id, repository_id | Add a single repository to an installation. The authenticated user must have admin access to the repository. This endpoint only works for PATs (classic) with the repo scope. | |
remove_repo_from_installation_for_authenticated_user | delete | installation_id, repository_id | Remove a single repository from an installation. The authenticated user must have admin access to the repository. The installation must have the repository_selection of selected.This endpoint only works for PATs (classic) with the repo scope. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
installation_id | integer | The unique identifier of the installation. |
repository_id | integer | The unique identifier of the repository. |
page | integer | The page number of the results to fetch. For more information, see "Using pagination in the REST API." |
per_page | integer | The number of results per page (max 100). For more information, see "Using pagination in the REST API." |
SELECT examples
- list_installation_repos_for_authenticated_user
- list_repos_accessible_to_installation
List repositories that the authenticated user has explicit permission (:read, :write, or :admin) to access for an installation.
The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.
The access the user has to each repository is included in the hash under the permissions key.
SELECT
id,
name,
node_id,
full_name,
allow_auto_merge,
allow_forking,
allow_merge_commit,
allow_rebase_merge,
allow_squash_merge,
allow_update_branch,
anonymous_access_enabled,
archive_url,
archived,
assignees_url,
blobs_url,
branches_url,
clone_url,
code_search_index_status,
collaborators_url,
comments_url,
commits_url,
compare_url,
contents_url,
contributors_url,
created_at,
default_branch,
delete_branch_on_merge,
deployments_url,
description,
disabled,
downloads_url,
events_url,
fork,
forks,
forks_count,
forks_url,
git_commits_url,
git_refs_url,
git_tags_url,
git_url,
has_discussions,
has_downloads,
has_issues,
has_pages,
has_projects,
has_pull_requests,
has_wiki,
homepage,
hooks_url,
html_url,
is_template,
issue_comment_url,
issue_events_url,
issues_url,
keys_url,
labels_url,
language,
languages_url,
license,
master_branch,
merge_commit_message,
merge_commit_title,
merges_url,
milestones_url,
mirror_url,
notifications_url,
open_issues,
open_issues_count,
owner,
permissions,
private,
pull_request_creation_policy,
pulls_url,
pushed_at,
releases_url,
size,
squash_merge_commit_message,
squash_merge_commit_title,
ssh_url,
stargazers_count,
stargazers_url,
starred_at,
statuses_url,
subscribers_url,
subscription_url,
svn_url,
tags_url,
teams_url,
temp_clone_token,
topics,
trees_url,
updated_at,
url,
use_squash_pr_title_as_default,
visibility,
watchers,
watchers_count,
web_commit_signoff_required
FROM github.apps.installation_repos
WHERE installation_id = '{{ installation_id }}' -- required
AND per_page = '{{ per_page }}'
AND page = '{{ page }}'
;
List repositories that an app installation can access.
SELECT
id,
name,
node_id,
full_name,
allow_auto_merge,
allow_forking,
allow_merge_commit,
allow_rebase_merge,
allow_squash_merge,
allow_update_branch,
anonymous_access_enabled,
archive_url,
archived,
assignees_url,
blobs_url,
branches_url,
clone_url,
code_search_index_status,
collaborators_url,
comments_url,
commits_url,
compare_url,
contents_url,
contributors_url,
created_at,
default_branch,
delete_branch_on_merge,
deployments_url,
description,
disabled,
downloads_url,
events_url,
fork,
forks,
forks_count,
forks_url,
git_commits_url,
git_refs_url,
git_tags_url,
git_url,
has_discussions,
has_downloads,
has_issues,
has_pages,
has_projects,
has_pull_requests,
has_wiki,
homepage,
hooks_url,
html_url,
is_template,
issue_comment_url,
issue_events_url,
issues_url,
keys_url,
labels_url,
language,
languages_url,
license,
master_branch,
merge_commit_message,
merge_commit_title,
merges_url,
milestones_url,
mirror_url,
notifications_url,
open_issues,
open_issues_count,
owner,
permissions,
private,
pull_request_creation_policy,
pulls_url,
pushed_at,
releases_url,
size,
squash_merge_commit_message,
squash_merge_commit_title,
ssh_url,
stargazers_count,
stargazers_url,
starred_at,
statuses_url,
subscribers_url,
subscription_url,
svn_url,
tags_url,
teams_url,
temp_clone_token,
topics,
trees_url,
updated_at,
url,
use_squash_pr_title_as_default,
visibility,
watchers,
watchers_count,
web_commit_signoff_required
FROM github.apps.installation_repos
WHERE per_page = '{{ per_page }}'
AND page = '{{ page }}'
;
INSERT examples
- add_repo_to_installation_for_authenticated_user
- Manifest
Add a single repository to an installation. The authenticated user must have admin access to the repository.
This endpoint only works for PATs (classic) with the repo scope.
INSERT INTO github.apps.installation_repos (
installation_id,
repository_id
)
SELECT
'{{ installation_id }}',
'{{ repository_id }}'
;
# Description fields are for documentation purposes
- name: installation_repos
props:
- name: installation_id
value: {{ installation_id }}
description: Required parameter for the installation_repos resource.
- name: repository_id
value: {{ repository_id }}
description: Required parameter for the installation_repos resource.
DELETE examples
- remove_repo_from_installation_for_authenticated_user
Remove a single repository from an installation. The authenticated user must have admin access to the repository. The installation must have the repository_selection of selected.
This endpoint only works for PATs (classic) with the repo scope.
DELETE FROM github.apps.installation_repos
WHERE installation_id = '{{ installation_id }}' --required
AND repository_id = '{{ repository_id }}' --required
;