forks
Creates, updates, deletes, gets or lists a forks resource.
Overview
| Name | forks |
| Type | Resource |
| Id | github.repos.forks |
Fields
The following fields are returned by SELECT queries:
- list_forks
Response
| Name | Datatype | Description |
|---|---|---|
id | integer (int64) | |
name | string | (example: Hello-World) |
node_id | string | (example: MDEwOlJlcG9zaXRvcnkxMjk2MjY5) |
full_name | string | (example: octocat/Hello-World) |
role_name | string | (example: admin) |
allow_forking | boolean | |
archive_url | string | (example: http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}) |
archived | boolean | |
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 | |
code_of_conduct | object | Code Of Conduct (title: Code Of Conduct) |
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) |
custom_properties | object | The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values. |
default_branch | string | |
delete_branch_on_merge | boolean | |
deployments_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/deployments) |
description | string | (example: This your first repo!) |
disabled | boolean | |
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 | |
has_discussions | boolean | |
has_downloads | boolean | |
has_issues | boolean | |
has_pages | boolean | |
has_projects | boolean | |
has_pull_requests | boolean | |
has_wiki | boolean | |
homepage | string | |
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 | |
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 | |
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 | |
network_count | integer | |
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 | |
pull_request_creation_policy | string | The policy controlling who can create pull requests: all or collaborators_only. (all, collaborators_only) |
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}) |
security_and_analysis | object | |
size | integer | The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0. |
ssh_url | string | |
stargazers_count | integer | |
stargazers_url | string (uri) | (example: http://api.github.com/repos/octocat/Hello-World/stargazers) |
statuses_url | string | (example: http://api.github.com/repos/octocat/Hello-World/statuses/{sha}) |
subscribers_count | integer | |
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 | |
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) |
visibility | string | |
watchers | integer | |
watchers_count | integer | |
web_commit_signoff_required | boolean |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
list_forks | select | owner, repo | sort, per_page, page | |
create_fork | insert | owner, repo | Create a fork for the authenticated user. > [!NOTE] > Forking a Repository happens asynchronously. You may have to wait a short period of time before you can access the git objects. If this takes longer than 5 minutes, be sure to contact GitHub Support. > [!NOTE] > Although this endpoint works with GitHub Apps, the GitHub App must be installed on the destination account with access to all repositories and on the source account with access to the source repository. |
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 |
|---|---|---|
owner | string | The account owner of the repository. The name is not case sensitive. |
repo | string | The name of the repository without the .git extension. The name is not case sensitive. |
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." |
sort | string | The sort order. stargazers will sort by star count. |
SELECT examples
- list_forks
Response
SELECT
id,
name,
node_id,
full_name,
role_name,
allow_forking,
archive_url,
archived,
assignees_url,
blobs_url,
branches_url,
clone_url,
code_of_conduct,
collaborators_url,
comments_url,
commits_url,
compare_url,
contents_url,
contributors_url,
created_at,
custom_properties,
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,
merges_url,
milestones_url,
mirror_url,
network_count,
notifications_url,
open_issues,
open_issues_count,
owner,
permissions,
private,
pull_request_creation_policy,
pulls_url,
pushed_at,
releases_url,
security_and_analysis,
size,
ssh_url,
stargazers_count,
stargazers_url,
statuses_url,
subscribers_count,
subscribers_url,
subscription_url,
svn_url,
tags_url,
teams_url,
temp_clone_token,
topics,
trees_url,
updated_at,
url,
visibility,
watchers,
watchers_count,
web_commit_signoff_required
FROM github.repos.forks
WHERE owner = '{{ owner }}' -- required
AND repo = '{{ repo }}' -- required
AND sort = '{{ sort }}'
AND per_page = '{{ per_page }}'
AND page = '{{ page }}'
;
INSERT examples
- create_fork
- Manifest
Create a fork for the authenticated user.
> [!NOTE]
> Forking a Repository happens asynchronously. You may have to wait a short period of time before you can access the git objects. If this takes longer than 5 minutes, be sure to contact GitHub Support.
> [!NOTE]
> Although this endpoint works with GitHub Apps, the GitHub App must be installed on the destination account with access to all repositories and on the source account with access to the source repository.
INSERT INTO github.repos.forks (
organization,
name,
default_branch_only,
owner,
repo
)
SELECT
'{{ organization }}',
'{{ name }}',
{{ default_branch_only }},
'{{ owner }}',
'{{ repo }}'
RETURNING
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_of_conduct,
collaborators_url,
comments_url,
commits_url,
compare_url,
contents_url,
contributors_url,
created_at,
custom_properties,
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,
network_count,
notifications_url,
open_issues,
open_issues_count,
organization,
owner,
parent,
permissions,
private,
pull_request_creation_policy,
pulls_url,
pushed_at,
releases_url,
security_and_analysis,
size,
source,
squash_merge_commit_message,
squash_merge_commit_title,
ssh_url,
stargazers_count,
stargazers_url,
statuses_url,
subscribers_count,
subscribers_url,
subscription_url,
svn_url,
tags_url,
teams_url,
temp_clone_token,
template_repository,
topics,
trees_url,
updated_at,
url,
use_squash_pr_title_as_default,
visibility,
watchers,
watchers_count,
web_commit_signoff_required
;
# Description fields are for documentation purposes
- name: forks
props:
- name: owner
value: "{{ owner }}"
description: Required parameter for the forks resource.
- name: repo
value: "{{ repo }}"
description: Required parameter for the forks resource.
- name: organization
value: "{{ organization }}"
description: |
Optional parameter to specify the organization name if forking into an organization.
- name: name
value: "{{ name }}"
description: |
When forking from an existing repository, a new name for the fork.
- name: default_branch_only
value: {{ default_branch_only }}
description: |
When forking from an existing repository, fork with only the default branch.