Repository

class github.Repository.Repository

This class represents Repositories.

The reference can be found here https://docs.github.com/en/rest/reference/repos

property allow_auto_merge
Type

bool

property allow_forking
Type

bool

property allow_merge_commit
Type

bool

property allow_rebase_merge
Type

bool

property allow_squash_merge
Type

bool

property allow_update_branch
Type

bool

property archived
Type

bool

property archive_url
Type

string

property assignees_url
Type

string

property blobs_url
Type

string

property branches_url
Type

string

property clone_url
Type

string

property collaborators_url
Type

string

property comments_url
Type

string

property commits_url
Type

string

property compare_url
Type

string

property contents_url
Type

string

property contributors_url
Type

string

property created_at
Type

datetime

property custom_properties
Type

dict[str, None | str | list]

property default_branch
Type

string

property delete_branch_on_merge
Type

bool

property deployments_url
Type

string

property description
Type

string

property downloads_url
Type

string

property events_url
Type

string

property fork
Type

bool

property forks
Type

integer

property forks_count
Type

integer

property forks_url
Type

string

property full_name
Type

string

property git_commits_url
Type

string

property git_refs_url
Type

string

property git_tags_url
Type

string

property git_url
Type

string

property has_downloads
Type

bool

property has_issues
Type

bool

property has_pages
Type

bool

property has_projects
Type

bool

property has_wiki
Type

bool

property has_discussions
Type

bool

property homepage
Type

string

property hooks_url
Type

string

property html_url
Type

string

property id
Type

integer

property is_template
Type

bool

property issue_comment_url
Type

string

property issue_events_url
Type

string

property issues_url
Type

string

property keys_url
Type

string

property labels_url
Type

string

property language
Type

string

property languages_url
Type

string

property merge_commit_message
Type

string

property merge_commit_title
Type

string

property merges_url
Type

string

property milestones_url
Type

string

property mirror_url
Type

string

property name
Type

string

property network_count
Type

integer

property notifications_url
Type

string

property open_issues
Type

integer

property open_issues_count
Type

integer

property organization
Type

github.Organization.Organization

property owner
Type

github.NamedUser.NamedUser

property parent
Type

github.Repository.Repository

property permissions
Type

github.Permissions.Permissions

property private
Type

bool

property pulls_url
Type

string

property pushed_at
Type

datetime

property releases_url
Type

string

property security_and_analysis
Type

github.SecurityAndAnalysis.SecurityAndAnalysis

property size
Type

integer

property source
Type

github.Repository.Repository

property squash_merge_commit_message
Type

string

property squash_merge_commit_title
Type

string

property ssh_url
Type

string

property stargazers_count
Type

integer

property stargazers_url
Type

string

property statuses_url
Type

string

property subscribers_url
Type

string

property subscribers_count
Type

integer

property subscription_url
Type

string

property svn_url
Type

string

property tags_url
Type

string

property teams_url
Type

string

property topics
Type

list of strings

property trees_url
Type

string

property updated_at
Type

datetime

property web_commit_signoff_required
Type

bool

add_to_collaborators(collaborator: str | NamedUser, permission: Opt[str] = NotSet) → Invitation | None
Calls

PUT /repos/{owner}/{repo}/collaborators/{user}

Parameters
  • collaborator – string or github.NamedUser.NamedUser

  • permission – string ‘pull’, ‘push’, ‘admin’, ‘maintain’, ‘triage’, or a custom repository role name, if the owning organization has defined any

Return type

None

get_collaborator_permission(collaborator: str | NamedUser) → str
Calls

GET /repos/{owner}/{repo}/collaborators/{username}/permission

Parameters

collaborator – string or github.NamedUser.NamedUser

Return type

string

get_pending_invitations() → PaginatedList[Invitation]
Calls

GET /repos/{owner}/{repo}/invitations

Return type

PaginatedList of github.Invitation.Invitation

remove_invitation(invite_id: int) → None
Calls

DELETE /repos/{owner}/{repo}/invitations/{invitation_id}

Return type

None

compare(base: str, head: str) → Comparison
Calls

GET /repos/{owner}/{repo}/compare/{base…:head}

Parameters
  • base – string

  • head – string

Return type

github.Comparison.Comparison

Calls

POST /repos/{owner}/{repo}/autolinks

Parameters
  • key_prefix – string

  • url_template – string

  • is_alphanumeric – bool

Return type

github.Autolink.Autolink

create_git_blob(content: str, encoding: str) → GitBlob
Calls

POST /repos/{owner}/{repo}/git/blobs

Parameters
  • content – string

  • encoding – string

Return type

github.GitBlob.GitBlob

create_git_commit(message: str, tree: GitTree, parents: list[GitCommit], author: Opt[InputGitAuthor] = NotSet, committer: Opt[InputGitAuthor] = NotSet) → GitCommit
Calls

POST /repos/{owner}/{repo}/git/commits

Parameters
Return type

github.GitCommit.GitCommit

create_git_ref(ref: str, sha: str) → GitRef
Calls

POST /repos/{owner}/{repo}/git/refs

Parameters
  • ref – string

  • sha – string

Return type

github.GitRef.GitRef

create_git_tag_and_release(tag: str, tag_message: str, release_name: Opt[str], release_message: Opt[str], object: str, type: str, tagger: Opt[InputGitAuthor] = NotSet, draft: bool = False, prerelease: bool = False, generate_release_notes: bool = False) → GitRelease

Convenience function that calls Repository.create_git_tag() and Repository.create_git_release().

Parameters
  • tag – string

  • tag_message – string

  • release_name – string

  • release_message – string

  • object – string

  • type – string

  • tagger – :class:github.InputGitAuthor.InputGitAuthor

  • draft – bool

  • prerelease – bool

  • generate_release_notes – bool

Return type

github.GitRelease.GitRelease

create_git_release(tag: str, name: Opt[str] = NotSet, message: Opt[str] = NotSet, draft: bool = False, prerelease: bool = False, generate_release_notes: bool = False, target_commitish: Opt[str] = NotSet) → GitRelease
Calls

POST /repos/{owner}/{repo}/releases

Parameters
Return type

github.GitRelease.GitRelease

create_git_tag(tag: str, message: str, object: str, type: str, tagger: Opt[InputGitAuthor] = NotSet) → GitTag
Calls

POST /repos/{owner}/{repo}/git/tags

create_git_tree(tree: list[InputGitTreeElement], base_tree: Opt[GitTree] = NotSet) → GitTree
Calls

POST /repos/{owner}/{repo}/git/trees

Parameters
Return type

github.GitTree.GitTree

create_hook(name: str, config: dict[str, str], events: Opt[list[str]] = NotSet, active: Opt[bool] = NotSet) → Hook
Calls

POST /repos/{owner}/{repo}/hooks

Parameters
  • name – string

  • config – dict

  • events – list of string

  • active – bool

Return type

github.Hook.Hook

create_issue(title: str, body: Opt[str] = NotSet, assignee: NamedUser | Opt[str] = NotSet, milestone: Opt[Milestone] = NotSet, labels: list[Label] | Opt[list[str]] = NotSet, assignees: Opt[list[str]] | list[NamedUser] = NotSet) → Issue
Calls

POST /repos/{owner}/{repo}/issues

Parameters
Return type

github.Issue.Issue

create_key(title: str, key: str, read_only: bool = False) → RepositoryKey
Calls

POST /repos/{owner}/{repo}/keys

Parameters
  • title – string

  • key – string

  • read_only – bool

Return type

github.RepositoryKey.RepositoryKey

create_label(name: str, color: str, description: Opt[str] = NotSet) → Label
Calls

POST /repos/{owner}/{repo}/labels

Parameters
  • name – string

  • color – string

  • description – string

Return type

github.Label.Label

create_milestone(title: str, state: Opt[str] = NotSet, description: Opt[str] = NotSet, due_on: Opt[date] = NotSet) → Milestone
Calls

POST /repos/{owner}/{repo}/milestones

Parameters
  • title – string

  • state – string

  • description – string

  • due_on – datetime

Return type

github.Milestone.Milestone

create_project(name: str, body: Opt[str] = NotSet) → Project
Calls

POST /repos/{owner}/{repo}/projects

Parameters
  • name – string

  • body – string

Return type

github.Project.Project

create_pull(base: str, head: str, *, title: Union[str, github.GithubObject._NotSetType] = NotSet, body: Union[str, github.GithubObject._NotSetType] = NotSet, maintainer_can_modify: Union[bool, github.GithubObject._NotSetType] = NotSet, draft: Union[bool, github.GithubObject._NotSetType] = NotSet, issue: Union[github.Issue.Issue, github.GithubObject._NotSetType] = NotSet) → github.PullRequest.PullRequest
Calls

POST /repos/{owner}/{repo}/pulls

create_repository_advisory(summary: str, description: str, severity_or_cvss_vector_string: str, cve_id: str | None = None, vulnerabilities: Iterable[github.AdvisoryVulnerability.AdvisoryVulnerabilityInput] | None = None, cwe_ids: Iterable[str] | None = None, credits: Iterable[github.AdvisoryCredit.AdvisoryCredit] | None = None) → github.RepositoryAdvisory.RepositoryAdvisory
Calls

POST /repos/{owner}/{repo}/security-advisories

Parameters
  • summary – string

  • description – string

  • severity_or_cvss_vector_string – string

  • cve_id – string

  • vulnerabilities – iterable of github.AdvisoryVulnerability.AdvisoryVulnerabilityInput

  • cwe_ids – iterable of string

  • credits – iterable of github.AdvisoryCredit.AdvisoryCredit

Return type

github.RepositoryAdvisory.RepositoryAdvisory

report_security_vulnerability(summary: str, description: str, severity_or_cvss_vector_string: str, cve_id: str | None = None, vulnerabilities: Iterable[github.AdvisoryVulnerability.AdvisoryVulnerabilityInput] | None = None, cwe_ids: Iterable[str] | None = None, credits: Iterable[github.AdvisoryCredit.AdvisoryCredit] | None = None) → github.RepositoryAdvisory.RepositoryAdvisory
Calls

POST /repos/{owner}/{repo}/security-advisories/reports

Parameters
  • summary – string

  • description – string

  • severity_or_cvss_vector_string – string

  • cve_id – string

  • vulnerabilities – iterable of github.AdvisoryVulnerability.AdvisoryVulnerabilityInput

  • cwe_ids – iterable of string

  • credits – iterable of github.AdvisoryCredit.AdvisoryCredit

Return type

github.RepositoryAdvisory.RepositoryAdvisory

create_repository_dispatch(event_type: str, client_payload: Opt[dict[str, Any]] = NotSet) → bool
Calls

POST /repos/{owner}/{repo}/dispatches <https://docs.github.com/en/rest/repos#create-a-repository-dispatch-event>

Parameters
  • event_type – string

  • client_payload – dict

Return type

bool

create_secret(secret_name: str, unencrypted_value: str, secret_type: str = 'actions') → github.Secret.Secret
Calls

PUT /repos/{owner}/{repo}/{secret_type}/secrets/{secret_name}

Parameters

secret_type – string options actions or dependabot

get_secrets(secret_type: str = 'actions') → github.PaginatedList.PaginatedList[github.Secret.Secret][github.Secret.Secret]

Gets all repository secrets :param secret_type: string options actions or dependabot.

get_secret(secret_name: str, secret_type: str = 'actions') → github.Secret.Secret
Calls

‘GET /repos/{owner}/{repo}/actions/secrets/{secret_name} <https://docs.github.com/en/rest/actions/secrets#get-an-organization-secret>`_

Parameters

secret_type – string options actions or dependabot

create_variable(variable_name: str, value: str) → github.Variable.Variable
Calls

POST /repos/{owner}/{repo}/actions/variables/{variable_name}

get_variables() → github.PaginatedList.PaginatedList[github.Variable.Variable][github.Variable.Variable]

Gets all repository variables :rtype: PaginatedList of github.Variable.Variable

get_variable(variable_name: str) → github.Variable.Variable
Calls

‘GET /orgs/{org}/actions/variables/{variable_name} <https://docs.github.com/en/rest/actions/variables#get-an-organization-variable>`_

Parameters

variable_name – string

Return type

github.Variable.Variable

delete_secret(secret_name: str, secret_type: str = 'actions') → bool
Calls

DELETE /repos/{owner}/{repo}/{secret_type}/secrets/{secret_name}

Parameters
  • secret_name – string

  • secret_type – string options actions or dependabot

Return type

bool

delete_variable(variable_name: str) → bool
Calls

DELETE /repos/{owner}/{repo}/actions/variables/{variable_name}

Parameters

variable_name – string

Return type

bool

create_source_import(vcs: str, vcs_url: str, vcs_username: Opt[str] = NotSet, vcs_password: Opt[str] = NotSet) → SourceImport
Calls

PUT /repos/{owner}/{repo}/import

Parameters
  • vcs – string

  • vcs_url – string

  • vcs_username – string

  • vcs_password – string

Return type

github.SourceImport.SourceImport

delete() → None
Calls

DELETE /repos/{owner}/{repo}

Return type

None

edit(name: str | None = None, description: Opt[str] = NotSet, homepage: Opt[str] = NotSet, private: Opt[bool] = NotSet, visibility: Opt[str] = NotSet, has_issues: Opt[bool] = NotSet, has_projects: Opt[bool] = NotSet, has_wiki: Opt[bool] = NotSet, has_discussions: Opt[bool] = NotSet, is_template: Opt[bool] = NotSet, default_branch: Opt[str] = NotSet, allow_squash_merge: Opt[bool] = NotSet, allow_merge_commit: Opt[bool] = NotSet, allow_rebase_merge: Opt[bool] = NotSet, allow_auto_merge: Opt[bool] = NotSet, delete_branch_on_merge: Opt[bool] = NotSet, allow_update_branch: Opt[bool] = NotSet, use_squash_pr_title_as_default: Opt[bool] = NotSet, squash_merge_commit_title: Opt[str] = NotSet, squash_merge_commit_message: Opt[str] = NotSet, merge_commit_title: Opt[str] = NotSet, merge_commit_message: Opt[str] = NotSet, archived: Opt[bool] = NotSet, allow_forking: Opt[bool] = NotSet, web_commit_signoff_required: Opt[bool] = NotSet) → None
Calls

PATCH /repos/{owner}/{repo}

Calls

GET /repos/{owner}/{repo}/{archive_format}/{ref}

Parameters
  • archive_format – string

  • ref – string

Return type

string

get_assignees() → PaginatedList[NamedUser]
Calls

GET /repos/{owner}/{repo}/assignees

Return type

PaginatedList of github.NamedUser.NamedUser

get_branch(branch: str) → Branch
Calls

GET /repos/{owner}/{repo}/branches/{branch}

Parameters

branch – string

Return type

github.Branch.Branch

rename_branch(branch: str | Branch, new_name: str) → bool
Calls

POST /repos/{owner}/{repo}/branches/{branch}/rename

Parameters
Return type

bool

NOTE: This method does not return the branch since it may take some time to fully complete server-side.

get_branches() → PaginatedList[Branch]
Calls

GET /repos/{owner}/{repo}/branches

Return type

PaginatedList of github.Branch.Branch

get_collaborators(affiliation: Opt[str] = NotSet, permission: Opt[str] = NotSet) → PaginatedList[NamedUser]
Calls

GET /repos/{owner}/{repo}/collaborators

Parameters
  • affiliation – string

  • permission – string

Return type

PaginatedList of github.NamedUser.NamedUser

get_comment(id: int) → CommitComment
Calls

GET /repos/{owner}/{repo}/comments/{id}

Parameters

id – integer

Return type

github.CommitComment.CommitComment

get_comments() → PaginatedList[CommitComment]
Calls

GET /repos/{owner}/{repo}/comments

Return type

PaginatedList of github.CommitComment.CommitComment

get_commit(sha: str) → Commit
Calls

GET /repos/{owner}/{repo}/commits/{sha}

Parameters

sha – string

Return type

github.Commit.Commit

get_commits(sha: Opt[str] = NotSet, path: Opt[str] = NotSet, since: Opt[datetime] = NotSet, until: Opt[datetime] = NotSet, author: Opt[AuthenticatedUser | NamedUser | str] = NotSet) → PaginatedList[Commit]
Calls

GET /repos/{owner}/{repo}/commits

Parameters
Return type

PaginatedList of github.Commit.Commit

get_contents(path: str, ref: Opt[str] = NotSet) → list[ContentFile] | ContentFile
Calls

GET /repos/{owner}/{repo}/contents/{path}

Parameters
  • path – string

  • ref – string

Return type

github.ContentFile.ContentFile or a list of them

get_deployments(sha: Opt[str] = NotSet, ref: Opt[str] = NotSet, task: Opt[str] = NotSet, environment: Opt[str] = NotSet) → PaginatedList[Deployment]
Calls

GET /repos/{owner}/{repo}/deployments

Param

sha: string

Param

ref: string

Param

task: string

Param

environment: string

Return type

PaginatedList of github.Deployment.Deployment

get_deployment(id_: int) → Deployment
Calls

GET /repos/{owner}/{repo}/deployments/{deployment_id}

Param

id_: int

Return type

github.Deployment.Deployment

create_deployment(ref: str, task: Opt[str] = NotSet, auto_merge: Opt[bool] = NotSet, required_contexts: Opt[list[str]] = NotSet, payload: Opt[dict[str, Any]] = NotSet, environment: Opt[str] = NotSet, description: Opt[str] = NotSet, transient_environment: Opt[bool] = NotSet, production_environment: Opt[bool] = NotSet) → Deployment
Calls

POST /repos/{owner}/{repo}/deployments

Param

ref: string

Param

task: string

Param

auto_merge: bool

Param

required_contexts: list of status contexts

Param

payload: dict

Param

environment: string

Param

description: string

Param

transient_environment: bool

Param

production_environment: bool

Return type

github.Deployment.Deployment

get_top_referrers() → None | list[Referrer]
Calls

GET /repos/{owner}/{repo}/traffic/popular/referrers

get_top_paths() → None | list[Path]
Calls

GET /repos/{owner}/{repo}/traffic/popular/paths

Return type

list of github.Path.Path

get_views_traffic(per: Opt[str] = NotSet) → None | dict[str, int | list[View]]
Calls

GET /repos/{owner}/{repo}/traffic/views

Parameters

per – string, must be one of day or week, day by default

get_clones_traffic(per: Opt[str] = NotSet) → dict[str, int | list[Clones]] | None
Calls

GET /repos/{owner}/{repo}/traffic/clones

Parameters

per – string, must be one of day or week, day by default

Return type

None or list of github.Clones.Clones

get_projects(state: Opt[str] = NotSet) → PaginatedList[Project]
Calls

GET /repos/{owner}/{repo}/projects

Return type

PaginatedList of github.Project.Project

Parameters

state – string

Calls

GET /repos/{owner}/{repo}/autolinks

Return type

PaginatedList of github.Autolink.Autolink

create_file(path: str, message: str, content: str | bytes, branch: Opt[str] = NotSet, committer: Opt[InputGitAuthor] = NotSet, author: Opt[InputGitAuthor] = NotSet) → dict[str, ContentFile | Commit]

Create a file in this repository.

Calls

`PUT /repos/{owner}/{repo}/contents/{path} <https://docs.github.com/en/rest/reference/repos#create-or-

update-file-contents>`_ :param path: string, (required), path of the file in the repository :param message: string, (required), commit message :param content: string, (required), the actual data in the file :param branch: string, (optional), branch to create the commit on. Defaults to the default branch of the

repository

Parameters
  • committer – InputGitAuthor, (optional), if no information is given the authenticated user’s information will be used. You must specify both a name and email.

  • author – InputGitAuthor, (optional), if omitted this will be filled in with committer information. If passed, you must specify both a name and email.

Return type

{ ‘content’: ContentFile:, ‘commit’: Commit}

get_repository_advisories() → github.PaginatedList.PaginatedList[github.RepositoryAdvisory.RepositoryAdvisory][github.RepositoryAdvisory.RepositoryAdvisory]
Calls

GET /repos/{owner}/{repo}/security-advisories

Return type

PaginatedList of github.RepositoryAdvisory.RepositoryAdvisory

get_repository_advisory(ghsa: str) → github.RepositoryAdvisory.RepositoryAdvisory
Calls

GET /repos/{owner}/{repo}/security-advisories/{ghsa}

Parameters

ghsa – string

Return type

github.RepositoryAdvisory.RepositoryAdvisory

update_file(path: str, message: str, content: bytes | str, sha: str, branch: Opt[str] = NotSet, committer: Opt[InputGitAuthor] = NotSet, author: Opt[InputGitAuthor] = NotSet) → dict[str, ContentFile | Commit]

This method updates a file in a repository.

Calls

`PUT /repos/{owner}/{repo}/contents/{path} <https://docs.github.com/en/rest/reference/repos#create-or-

update-file-contents>`_ :param path: string, Required. The content path. :param message: string, Required. The commit message. :param content: string, Required. The updated file content, either base64 encoded, or ready to be encoded. :param sha: string, Required. The blob SHA of the file being replaced. :param branch: string. The branch name. Default: the repository’s default branch (usually master) :param committer: InputGitAuthor, (optional), if no information is given the authenticated user’s information

will be used. You must specify both a name and email.

Parameters

author – InputGitAuthor, (optional), if omitted this will be filled in with committer information. If passed, you must specify both a name and email.

Return type

{ ‘content’: ContentFile:, ‘commit’: Commit}

delete_file(path: str, message: str, sha: str, branch: Opt[str] = NotSet, committer: Opt[InputGitAuthor] = NotSet, author: Opt[InputGitAuthor] = NotSet) → dict[str, Commit | _NotSetType]

This method deletes a file in a repository.

Calls

`DELETE /repos/{owner}/{repo}/contents/{path} <https://docs.github.com/en/rest/reference/repos#delete-a-

file>`_ :param path: string, Required. The content path. :param message: string, Required. The commit message. :param sha: string, Required. The blob SHA of the file being replaced. :param branch: string. The branch name. Default: the repository’s default branch (usually master) :param committer: InputGitAuthor, (optional), if no information is given the authenticated user’s information

will be used. You must specify both a name and email.

Parameters

author – InputGitAuthor, (optional), if omitted this will be filled in with committer information. If passed, you must specify both a name and email.

Return type

{ ‘content’: null:, ‘commit’: Commit}

get_dir_contents(path: str, ref: Opt[str] = NotSet) → list[ContentFile]
Calls

GET /repos/{owner}/{repo}/contents/{path}

get_contributors(anon: Opt[str] = NotSet) → PaginatedList[NamedUser]
Calls

GET /repos/{owner}/{repo}/contributors

Parameters

anon – string

Return type

PaginatedList of github.NamedUser.NamedUser

get_download(id: int) → Download
Calls

GET /repos/{owner}/{repo}/downloads/{id}

Parameters

id – integer

Return type

github.Download.Download

get_downloads() → PaginatedList[Download]
Calls

GET /repos/{owner}/{repo}/downloads

Return type

PaginatedList of github.Download.Download

get_events() → PaginatedList[Event]
Calls

GET /repos/{owner}/{repo}/events

Return type

PaginatedList of github.Event.Event

get_forks() → github.PaginatedList.PaginatedList[github.Repository.Repository][github.Repository.Repository]
Calls

GET /repos/{owner}/{repo}/forks

Return type

PaginatedList of github.Repository.Repository

create_fork(organization: Organization | Opt[str] = NotSet, name: Opt[str] = NotSet, default_branch_only: Opt[bool] = NotSet) → Repository
Calls

POST /repos/{owner}/{repo}/forks

Parameters
Return type

github.Repository.Repository

get_git_blob(sha: str) → GitBlob
Calls

GET /repos/{owner}/{repo}/git/blobs/{sha}

Parameters

sha – string

Return type

github.GitBlob.GitBlob

get_git_commit(sha: str) → GitCommit
Calls

GET /repos/{owner}/{repo}/git/commits/{sha}

Parameters

sha – string

Return type

github.GitCommit.GitCommit

get_git_ref(ref: str) → GitRef
Calls

GET /repos/{owner}/{repo}/git/refs/{ref}

Parameters

ref – string

Return type

github.GitRef.GitRef

get_git_refs() → PaginatedList[GitRef]
Calls

GET /repos/{owner}/{repo}/git/refs

Return type

PaginatedList of github.GitRef.GitRef

get_git_matching_refs(ref: str) → PaginatedList[GitRef]
Calls

GET /repos/{owner}/{repo}/git/matching-refs/{ref}

Return type

PaginatedList of github.GitRef.GitRef

get_git_tag(sha: str) → GitTag
Calls

GET /repos/{owner}/{repo}/git/tags/{sha}

Parameters

sha – string

Return type

github.GitTag.GitTag

get_git_tree(sha: str, recursive: Opt[bool] = NotSet) → GitTree
Calls

GET /repos/{owner}/{repo}/git/trees/{sha}

Parameters
  • sha – string

  • recursive – bool

Return type

github.GitTree.GitTree

get_hook(id: int) → Hook
Calls

GET /repos/{owner}/{repo}/hooks/{id}

Parameters

id – integer

Return type

github.Hook.Hook

get_hooks() → PaginatedList[Hook]
Calls

GET /repos/{owner}/{repo}/hooks

Return type

PaginatedList of github.Hook.Hook

get_hook_delivery(hook_id: int, delivery_id: int) → github.HookDelivery.HookDelivery
Calls

GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}

Parameters
  • hook_id – integer

  • delivery_id – integer

Return type

github.HookDelivery.HookDelivery

get_hook_deliveries(hook_id: int) → github.PaginatedList.PaginatedList[github.HookDelivery.HookDeliverySummary][github.HookDelivery.HookDeliverySummary]
Calls

GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries

Parameters

hook_id – integer

Return type

PaginatedList of github.HookDelivery.HookDeliverySummary

get_issue(number: int) → Issue
Calls

GET /repos/{owner}/{repo}/issues/{number}

Parameters

number – integer

Return type

github.Issue.Issue

get_issues(milestone: Milestone | Opt[str] = NotSet, state: Opt[str] = NotSet, assignee: NamedUser | Opt[str] = NotSet, mentioned: Opt[NamedUser] = NotSet, labels: Opt[list[str] | list[Label]] = NotSet, sort: Opt[str] = NotSet, direction: Opt[str] = NotSet, since: Opt[datetime] = NotSet, creator: Opt[NamedUser] = NotSet) → PaginatedList[Issue]
Calls

GET /repos/{owner}/{repo}/issues

Parameters
Return type

PaginatedList of github.Issue.Issue

get_issues_comments(sort: Opt[str] = NotSet, direction: Opt[str] = NotSet, since: Opt[datetime] = NotSet) → PaginatedList[IssueComment]
Calls

GET /repos/{owner}/{repo}/issues/comments

Parameters
  • sort – string

  • direction – string

  • since – datetime

Return type

PaginatedList of github.IssueComment.IssueComment

get_issues_event(id: int) → IssueEvent
Calls

GET /repos/{owner}/{repo}/issues/events/{id}

Parameters

id – integer

Return type

github.IssueEvent.IssueEvent

get_issues_events() → PaginatedList[IssueEvent]
Calls

GET /repos/{owner}/{repo}/issues/events

Return type

PaginatedList of github.IssueEvent.IssueEvent

get_key(id: int) → RepositoryKey
Calls

GET /repos/{owner}/{repo}/keys/{id}

Parameters

id – integer

Return type

github.RepositoryKey.RepositoryKey

get_keys() → PaginatedList[RepositoryKey]
Calls

GET /repos/{owner}/{repo}/keys

Return type

PaginatedList of github.RepositoryKey.RepositoryKey

get_label(name: str) → Label
Calls

GET /repos/{owner}/{repo}/labels/{name}

Parameters

name – string

Return type

github.Label.Label

get_labels() → PaginatedList[Label]
Calls

GET /repos/{owner}/{repo}/labels

Return type

PaginatedList of github.Label.Label

get_languages() → dict[str, int]
Calls

GET /repos/{owner}/{repo}/languages

Return type

dict of string to integer

get_license() → ContentFile
Calls

GET /repos/{owner}/{repo}/license

Return type

github.ContentFile.ContentFile

get_milestone(number: int) → Milestone
Calls

GET /repos/{owner}/{repo}/milestones/{number}

Parameters

number – integer

Return type

github.Milestone.Milestone

get_milestones(state: Opt[str] = NotSet, sort: Opt[str] = NotSet, direction: Opt[str] = NotSet) → PaginatedList[Milestone]
Calls

GET /repos/{owner}/{repo}/milestones

Parameters
  • state – string

  • sort – string

  • direction – string

Return type

PaginatedList of github.Milestone.Milestone

get_network_events() → PaginatedList[Event]
Calls

GET /networks/{owner}/{repo}/events

Return type

PaginatedList of github.Event.Event

get_public_key(secret_type: str = 'actions') → PublicKey
Calls

GET /repos/{owner}/{repo}/actions/secrets/public-key

Parameters

secret_type – string options actions or dependabot

Return type

github.PublicKey.PublicKey

get_pull(number: int) → PullRequest
Calls

GET /repos/{owner}/{repo}/pulls/{number}

Parameters

number – integer

Return type

github.PullRequest.PullRequest

get_pulls(state: Opt[str] = NotSet, sort: Opt[str] = NotSet, direction: Opt[str] = NotSet, base: Opt[str] = NotSet, head: Opt[str] = NotSet) → PaginatedList[PullRequest]
Calls

GET /repos/{owner}/{repo}/pulls

Parameters
  • state – string

  • sort – string

  • direction – string

  • base – string

  • head – string

Return type

PaginatedList of github.PullRequest.PullRequest

get_pulls_comments(sort: Opt[str] = NotSet, direction: Opt[str] = NotSet, since: Opt[datetime] = NotSet) → PaginatedList[PullRequestComment]
Calls

GET /repos/{owner}/{repo}/pulls/comments

Parameters
  • sort – string

  • direction – string

  • since – datetime

Return type

PaginatedList of github.PullRequestComment.PullRequestComment

get_pulls_review_comments(sort: Opt[str] = NotSet, direction: Opt[str] = NotSet, since: Opt[datetime] = NotSet) → PaginatedList[PullRequestComment]
Calls

GET /repos/{owner}/{repo}/pulls/comments

Parameters
  • sort – string ‘created’, ‘updated’, ‘created_at’

  • direction – string ‘asc’ or ‘desc’

  • since – datetime

Return type

PaginatedList of github.PullRequestComment.PullRequestComment

get_readme(ref: Opt[str] = NotSet) → ContentFile
Calls

GET /repos/{owner}/{repo}/readme

Parameters

ref – string

Return type

github.ContentFile.ContentFile

get_self_hosted_runner(runner_id: int) → SelfHostedActionsRunner
Calls

GET /repos/{owner}/{repo}/actions/runners/{id}

Parameters

runner_id – int

Return type

github.SelfHostedActionsRunner.SelfHostedActionsRunner

get_self_hosted_runners() → PaginatedList[SelfHostedActionsRunner]
Calls

GET /repos/{owner}/{repo}/actions/runners

Return type

PaginatedList of github.SelfHostedActionsRunner.SelfHostedActionsRunner

get_source_import() → SourceImport | None
Calls

GET /repos/{owner}/{repo}/import

get_stargazers() → PaginatedList[NamedUser]
Calls

GET /repos/{owner}/{repo}/stargazers

Return type

PaginatedList of github.NamedUser.NamedUser

get_stargazers_with_dates() → PaginatedList[Stargazer]
Calls

GET /repos/{owner}/{repo}/stargazers

Return type

PaginatedList of github.Stargazer.Stargazer

get_stats_contributors() → list[StatsContributor] | None
Calls

GET /repos/{owner}/{repo}/stats/contributors

Return type

None or list of github.StatsContributor.StatsContributor

get_stats_commit_activity() → list[StatsCommitActivity] | None
Calls

GET /repos/{owner}/{repo}/stats/commit_activity

Return type

None or list of github.StatsCommitActivity.StatsCommitActivity

get_stats_code_frequency() → list[StatsCodeFrequency] | None
Calls

GET /repos/{owner}/{repo}/stats/code_frequency

Return type

None or list of github.StatsCodeFrequency.StatsCodeFrequency

get_stats_participation() → StatsParticipation | None
Calls

GET /repos/{owner}/{repo}/stats/participation

Return type

None or github.StatsParticipation.StatsParticipation

get_stats_punch_card() → StatsPunchCard | None
Calls

GET /repos/{owner}/{repo}/stats/punch_card

Return type

None or github.StatsPunchCard.StatsPunchCard

get_subscribers() → PaginatedList[NamedUser]
Calls

GET /repos/{owner}/{repo}/subscribers

Return type

PaginatedList of github.NamedUser.NamedUser

get_tags() → PaginatedList[Tag]
Calls

GET /repos/{owner}/{repo}/tags

Return type

PaginatedList of github.Tag.Tag

get_releases() → PaginatedList[GitRelease]
Calls

GET /repos/{owner}/{repo}/releases

Return type

PaginatedList of github.GitRelease.GitRelease

get_release(id: int | str) → GitRelease
Calls

GET /repos/{owner}/{repo}/releases/{id}

Parameters

id – int (release id), str (tag name)

Return type

None or github.GitRelease.GitRelease

get_latest_release() → GitRelease
Calls

GET /repos/{owner}/{repo}/releases/latest

Return type

github.GitRelease.GitRelease

get_teams() → PaginatedList[Team]
Calls

GET /repos/{owner}/{repo}/teams

Return type

PaginatedList of github.Team.Team

get_topics() → list[str]
Calls

GET /repos/{owner}/{repo}/topics

Return type

list of strings

get_watchers() → PaginatedList[NamedUser]
Calls

GET /repos/{owner}/{repo}/watchers

Return type

PaginatedList of github.NamedUser.NamedUser

get_workflows() → PaginatedList[Workflow]
Calls

GET /repos/{owner}/{repo}/actions/workflows

Return type

PaginatedList of github.Workflow.Workflow

get_workflow(id_or_file_name: str | int) → Workflow
Calls

GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}

Parameters

id_or_file_name – int or string. Can be either a workflow ID or a filename.

Return type

github.Workflow.Workflow

get_workflow_runs(actor: Opt[NamedUser] = NotSet, branch: Opt[Branch] = NotSet, event: Opt[str] = NotSet, status: Opt[str] = NotSet, exclude_pull_requests: Opt[bool] = NotSet, head_sha: Opt[str] = NotSet, created: Opt[str] = NotSet, check_suite_id: Opt[int] = NotSet) → PaginatedList[WorkflowRun]
Calls

GET /repos/{owner}/{repo}/actions/runs

Parameters
Return type

PaginatedList of github.WorkflowRun.WorkflowRun

get_workflow_run(id_: int) → WorkflowRun
Calls

GET /repos/{owner}/{repo}/actions/runs/{run_id}

Parameters

id – int

Return type

github.WorkflowRun.WorkflowRun

has_in_assignees(assignee: str | NamedUser) → bool
Calls

GET /repos/{owner}/{repo}/assignees/{assignee}

Parameters

assignee – string or github.NamedUser.NamedUser

Return type

bool

has_in_collaborators(collaborator: str | NamedUser) → bool
Calls

GET /repos/{owner}/{repo}/collaborators/{user}

Parameters

collaborator – string or github.NamedUser.NamedUser

Return type

bool

legacy_search_issues(state: str, keyword: str) → list[Issue]
Calls

GET /legacy/issues/search/{owner}/{repository}/{state}/{keyword}

Parameters
  • state – “open” or “closed”

  • keyword – string

Return type

List of github.Issue.Issue

get_notifications(all: Opt[bool] = NotSet, participating: Opt[bool] = NotSet, since: Opt[datetime] = NotSet, before: Opt[datetime] = NotSet) → PaginatedList[Notification]
Calls

GET /repos/{owner}/{repo}/notifications

Parameters
  • all – bool

  • participating – bool

  • since – datetime

  • before – datetime

Return type

PaginatedList of github.Notification.Notification

mark_notifications_as_read(last_read_at: datetime.datetime = datetime.datetime(2024, 11, 6, 23, 13, 20, 39460, tzinfo=datetime.timezone.utc)) → None
Calls

PUT /repos/{owner}/{repo}/notifications

Parameters

last_read_at – datetime

merge(base: str, head: str, commit_message: Opt[str] = NotSet) → Commit | None
Calls

POST /repos/{owner}/{repo}/merges

Parameters
  • base – string

  • head – string

  • commit_message – string

Return type

github.Commit.Commit

replace_topics(topics: list[str]) → None
Calls

PUT /repos/{owner}/{repo}/topics

Parameters

topics – list of strings

Return type

None

get_vulnerability_alert() → bool
Calls

GET /repos/{owner}/{repo}/vulnerability-alerts

Return type

bool

enable_vulnerability_alert() → bool
Calls

PUT /repos/{owner}/{repo}/vulnerability-alerts

Return type

bool

disable_vulnerability_alert() → bool
Calls

DELETE /repos/{owner}/{repo}/vulnerability-alerts

Return type

bool

enable_automated_security_fixes() → bool
Calls

PUT /repos/{owner}/{repo}/automated-security-fixes

Return type

bool

disable_automated_security_fixes() → bool
Calls

DELETE /repos/{owner}/{repo}/automated-security-fixes

Return type

bool

remove_from_collaborators(collaborator: str | NamedUser) → None
Calls

DELETE /repos/{owner}/{repo}/collaborators/{user}

Parameters

collaborator – string or github.NamedUser.NamedUser

Return type

None

remove_self_hosted_runner(runner: SelfHostedActionsRunner | int) → bool
Calls

DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}

Parameters

runner – int or github.SelfHostedActionsRunner.SelfHostedActionsRunner

Return type

bool

Calls

DELETE /repos/{owner}/{repo}/autolinks/{id}

Parameters

autolink – int or github.Autolink.Autolink

Return type

None

subscribe_to_hub(event: str, callback: str, secret: Union[str, github.GithubObject._NotSetType] = NotSet) → None
Calls

POST /hub

Parameters
  • event – string

  • callback – string

  • secret – string

Return type

None

unsubscribe_from_hub(event: str, callback: str) → None
Calls

POST /hub

Parameters
  • event – string

  • callback – string

  • secret – string

Return type

None

create_check_suite(head_sha: str) → CheckSuite
Calls

POST /repos/{owner}/{repo}/check-suites

Parameters

head_sha – string

Return type

github.CheckSuite.CheckSuite

get_check_suite(check_suite_id: int) → CheckSuite
Calls

GET /repos/{owner}/{repo}/check-suites/{check_suite_id}

Parameters

check_suite_id – int

Return type

github.CheckSuite.CheckSuite

update_check_suites_preferences(auto_trigger_checks: list[dict[str, bool | int]]) → RepositoryPreferences
Calls

PATCH /repos/{owner}/{repo}/check-suites/preferences

Parameters

auto_trigger_checks – list of dict

Return type

github.RepositoryPreferences.RepositoryPreferences

create_check_run(name: str, head_sha: str, details_url: Opt[str] = NotSet, external_id: Opt[str] = NotSet, status: Opt[str] = NotSet, started_at: Opt[datetime] = NotSet, conclusion: Opt[str] = NotSet, completed_at: Opt[datetime] = NotSet, output: Opt[dict[str, str | list[dict[str, str | int]]]] = NotSet, actions: Opt[list[dict[str, str]]] = NotSet) → CheckRun
Calls

POST /repos/{owner}/{repo}/check-runs

Parameters
  • name – string

  • head_sha – string

  • details_url – string

  • external_id – string

  • status – string

  • started_at – datetime

  • conclusion – string

  • completed_at – datetime

  • output – dict

  • actions – list of dict

Return type

github.CheckRun.CheckRun

get_check_run(check_run_id: int) → CheckRun
Calls

GET /repos/{owner}/{repo}/check-runs/{check_run_id}

Parameters

check_run_id – int

Return type

github.CheckRun.CheckRun

get_artifacts(name: Opt[str] = NotSet) → PaginatedList[Artifact]
Calls

GET /repos/{owner}/{repo}/actions/artifacts

Parameters

name – str

Return type

PaginatedList of github.Artifact.Artifact

get_artifact(artifact_id: int) → Artifact
Calls

GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}

Parameters

artifact_id – int

Return type

github.Artifact.Artifact

get_codescan_alerts() → PaginatedList[CodeScanAlert]
Calls

GET https://api.github.com/repos/{owner}/{repo}/code-scanning/alerts

Return type

PaginatedList of github.CodeScanAlert.CodeScanAlert

get_environments() → github.PaginatedList.PaginatedList[github.Environment.Environment][github.Environment.Environment]
Calls

GET /repositories/{self._repository.id}/environments/{self.environment_name}/environments

Return type

PaginatedList of github.Environment.Environment

get_environment(environment_name: str) → github.Environment.Environment
Calls

GET /repositories/{self._repository.id}/environments/{self.environment_name}/environments/{environment_name}

Return type

github.Environment.Environment

create_environment(environment_name: str, wait_timer: int = 0, reviewers: list[ReviewerParams] = [], deployment_branch_policy: EnvironmentDeploymentBranchPolicyParams | None = None) → Environment
Calls

PUT /repositories/{self._repository.id}/environments/{self.environment_name}/environments/{environment_name}

Parameters
  • environment_name – string

  • wait_timer – int

  • reviews – List[:class:github.EnvironmentDeploymentBranchPolicy.EnvironmentDeploymentBranchPolicyParams]

  • deployment_branch_policy – Optional[:class:github.EnvironmentDeploymentBranchPolicy.EnvironmentDeploymentBranchPolicyParams`]

Return type

github.Environment.Environment

delete_environment(environment_name: str) → None
Calls

DELETE /repositories/{self._repository.id}/environments/{self.environment_name}/environments/{environment_name}

Parameters

environment_name – string

Return type

None

get_dependabot_alerts(state: Opt[str] = NotSet, severity: Opt[str] = NotSet, ecosystem: Opt[str] = NotSet, package: Opt[str] = NotSet, manifest: Opt[str] = NotSet, scope: Opt[str] = NotSet, sort: Opt[str] = NotSet, direction: Opt[str] = NotSet) → PaginatedList[DependabotAlert]
Calls

GET /repos/{owner}/{repo}/dependabot/alerts

Parameters
  • state – Optional string

  • severity – Optional string

  • ecosystem – Optional string

  • package – Optional string

  • manifest – Optional string

  • scope – Optional string

  • sort – Optional string

  • direction – Optional string

Return type

PaginatedList of github.DependabotAlert.DependabotAlert

get_dependabot_alert(number: int) → DependabotAlert
Calls

GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}

Parameters

number – int

Return type

github.DependabotAlert.DependabotAlert

update_dependabot_alert(number: int, state: str, dismissed_reason: Opt[str] = NotSet, dismissed_comment: Opt[str] = NotSet) → DependabotAlert
Calls

PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}

Parameters
  • number – int

  • state – string

  • dismissed_reason – Optional string

  • dismissed_comment – Optional string

Return type

github.DependabotAlert.DependabotAlert

get_custom_properties() → dict[str, None | str | list]
Calls

GET /repos/{owner}/{repo}/properties/values

Return type

dict[str, None | str | list]

update_custom_properties(properties: dict[str, None | str | list]) → None
Calls

PATCH /repos/{owner}/{repo}/properties/values

Return type

None