Client API Reference
This reference is organized by the chained SDK entrypoints users call at
runtime, such as GitCode.branches.list() and
AsyncGitCode.pulls.list().
GitCode and AsyncGitCode are context managers: use with GitCode(...)
and async with AsyncGitCode(...) so the underlying httpx client is closed
when the block ends. The same applies to SyncAPIClient and
AsyncAPIClient; see Quickstart for examples. Closing the SDK client
also closes a supplied http_client instance.
Resource introspection
Every chained resource on GitCode and AsyncGitCode (for example
client.repos or client.pulls) exposes the methods property: a tuple
of public callable names in stable SDK-defined order. Private names (leading _), the
methods and method_signature() helpers,
and non-callables are omitted. The tuple is cached on first access for the lifetime of that
resource object.
The same objects provide method_signature()
(also on AsyncResource), which takes a method name and
returns that name plus the formatted inspect.signature string (cached per name, annotations
shortened by stripping the internal gitcode_api._models. prefix).
Synchronous client
- class GitCode(*, api_key: str | None = None, owner: str | None = None, repo: str | None = None, base_url: str = 'https://api.gitcode.com/api/v5', timeout: float | None = None, http_client: Client | None = None, decrypt: Callable | None = None)
Bases:
SyncAPIClientSynchronous GitCode API client.
- Parameters:
api_key – Personal access token used for GitCode API requests.
owner – Default repository owner used by repository-scoped helpers.
repo – Default repository name used by repository-scoped helpers.
base_url – Base URL for the GitCode REST API.
timeout – Request timeout in seconds.
http_client – Optional pre-configured
httpx.Clientinstance.decrypt – Optional decryption function for encrypted access token.
Create a synchronous client and attach resource groups.
- repos: ReposResource
Repository endpoints exposed as
client.repos.
- contents: RepoContentsResource
Repository content endpoints exposed as
client.contents.
- branches: BranchesResource
Repository branch endpoints exposed as
client.branches.
- commits: CommitsResource
Repository commit endpoints exposed as
client.commits.
- close() None
Close the underlying HTTP client and clear cache for garbage collection.
- request(method: str, path: str, *, params: Dict[str, Any] | None = None, json: Any = None, data: Dict[str, Any] | None = None, headers: Dict[str, str] | None = None, raw: bool = False) Any
Send an HTTP request to the GitCode API and parse the response.
- Parameters:
method – HTTP method such as
"GET"or"POST".path – Relative API path or absolute URL.
params – Optional query parameters.
json – Optional JSON request body.
data – Optional form payload.
headers – Optional extra HTTP headers.
raw – When
True, return response bytes instead of parsed JSON.
- Returns:
Parsed JSON payload, raw bytes, text, or
None.
- issues: IssuesResource
Issue endpoints exposed as
client.issues.
- pulls: PullsResource
Pull request endpoints exposed as
client.pulls.
- labels: LabelsResource
Label endpoints exposed as
client.labels.
- milestones: MilestonesResource
Milestone endpoints exposed as
client.milestones.
- members: MembersResource
Repository member endpoints exposed as
client.members.
- releases: ReleasesResource
Release endpoints exposed as
client.releases.
- tags: TagsResource
Tag endpoints exposed as
client.tags.
- webhooks: WebhooksResource
Webhook endpoints exposed as
client.webhooks.
- users: UsersResource
User endpoints exposed as
client.users.
- orgs: OrgsResource
Organization endpoints exposed as
client.orgs.
- search: SearchResource
Search endpoints exposed as
client.search.
- oauth: OAuthResource
OAuth helper endpoints exposed as
client.oauth.
Repository resources
GitCode.repos
- GitCode.repos: ReposResource
Repository endpoints exposed as
client.repos.
- ReposResource.get(*, owner: str | None = None, repo: str | None = None) Repository
Get a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Repository metadata.
- ReposResource.list_user(*, visibility: str | None = None, affiliation: str | None = None, type: str | None = None, sort: str | None = None, direction: str | None = None, q: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List repositories visible to the authenticated user.
- Parameters:
visibility – Visibility filter such as
public,private, orall.affiliation – Ownership filter accepted by the REST API.
type – Repository type filter.
sort – Sort field such as
createdorfull_name.direction – Sort direction.
q – Optional keyword filter.
page – Page number.
per_page – Page size.
- Returns:
Matching repositories.
- ReposResource.list_for_owner(*, owner: str, type: str | None = None, sort: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List public repositories for a user or owner path.
- Parameters:
owner – Repository owner path or username.
type – Repository type filter.
sort – Sort field.
direction – Sort direction.
page – Page number.
per_page – Page size.
- Returns:
Matching repositories.
- ReposResource.create_personal(*, name: str, description: str | None = None, path: str | None = None, private: bool | None = None, auto_init: bool | None = None, has_issues: bool | None = None, has_wiki: bool | None = None, default_branch: str | None = None, gitignore_template: str | None = None, license_template: str | None = None) Repository
Create a repository for the authenticated user.
- Parameters:
name – Repository name.
description – Repository description.
path – Optional repository path.
private – Whether the repository should be private.
auto_init – Whether to initialize the repository with a README.
has_issues – Whether issues are enabled.
has_wiki – Whether wiki support is enabled.
default_branch – Default branch name when initializing.
gitignore_template – Optional gitignore template.
license_template – Optional license template.
- Returns:
Created repository metadata.
- ReposResource.create_for_org(*, org: str, name: str, description: str | None = None, homepage: str | None = None, path: str | None = None, private: bool | None = None, public: int | None = None, auto_init: bool | None = None, has_issues: bool | None = None, has_wiki: bool | None = None, can_comment: bool | None = None, default_branch: str | None = None, gitignore_template: str | None = None, license_template: str | None = None) Repository
Create a repository under an organization.
- Parameters:
org – Organization path or login.
name – Repository name.
description – Repository description.
homepage – Repository homepage URL.
path – Optional repository path.
private – Whether the repository should be private.
public – Visibility mode used by the GitCode API.
auto_init – Whether to initialize the repository with a README.
has_issues – Whether issues are enabled.
has_wiki – Whether wiki support is enabled.
can_comment – Whether comments are enabled.
default_branch – Default branch name when initializing.
gitignore_template – Optional gitignore template.
license_template – Optional license template.
- Returns:
Created repository metadata.
- ReposResource.update(*, owner: str | None = None, repo: str | None = None, **changes) Repository
Update repository metadata.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
changes – Repository fields accepted by the update endpoint.
- Returns:
Updated repository metadata.
- ReposResource.delete(*, owner: str | None = None, repo: str | None = None) None
Delete a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- ReposResource.fork(*, owner: str | None = None, repo: str | None = None, namespace: str | None = None, path: str | None = None, name: str | None = None) Repository
Fork a repository.
- Parameters:
owner – Source repository owner path.
repo – Source repository name.
namespace – Optional destination namespace.
path – Optional destination repository path.
name – Optional destination repository name.
- Returns:
Forked repository metadata.
- ReposResource.list_forks(*, owner: str | None = None, repo: str | None = None, sort: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List forks of a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
sort – Optional sort field.
page – Page number.
per_page – Page size.
- Returns:
Fork repositories.
- ReposResource.list_contributors(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[Contributor]
List repository contributors.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Contributors for the repository.
- ReposResource.list_languages(*, owner: str | None = None, repo: str | None = None) Dict[str, int]
List language statistics for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Mapping of language names to byte counts.
- ReposResource.list_stargazers(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[UserSummary]
List users who starred a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Users who starred the repository.
- ReposResource.list_subscribers(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[UserSummary]
List users watching a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Subscribers for the repository.
- ReposResource.update_module_settings(*, owner: str | None = None, repo: str | None = None, **settings) ApiStatusResponse
Update repository module settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
settings – Module settings accepted by the GitCode API.
- Returns:
API response payload.
- ReposResource.update_reviewer_settings(*, owner: str | None = None, repo: str | None = None, **settings) RepositoryReviewerSettingsUpdate
Update repository reviewer settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
settings – Reviewer settings accepted by the GitCode API.
- Returns:
API response payload.
- ReposResource.set_org_repo_status(*, org: str, repo: str, **payload) ApiStatusResponse
Update organization repository status metadata.
- Parameters:
org – Organization path.
repo – Repository path.
payload – Status fields accepted by the API.
- Returns:
API response payload.
- ReposResource.transfer_to_org(*, org: str, repo: str, **payload) ApiStatusResponse
Transfer a repository to an organization.
- Parameters:
org – Destination organization path.
repo – Repository path.
payload – Transfer options accepted by the API.
- Returns:
API response payload.
- ReposResource.get_transition(*, owner: str | None = None, repo: str | None = None) RepositoryPermissionMode
Get repository transition settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Transition configuration.
- ReposResource.update_transition(*, owner: str | None = None, repo: str | None = None, **payload) ApiStatusResponse
Update repository transition settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Transition settings accepted by the API.
- Returns:
API response payload.
- ReposResource.update_push_config(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryPushConfig
Update repository push configuration.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Push configuration values accepted by the API.
- Returns:
API response payload.
- ReposResource.get_push_config(*, owner: str | None = None, repo: str | None = None) RepositoryPushConfig
Get repository push configuration.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Push configuration payload.
- ReposResource.upload_image(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryUploadResult
Upload an image asset for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Upload fields accepted by the API.
- Returns:
Uploaded image metadata.
- ReposResource.upload_file(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryUploadResult
Upload a file asset for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Upload fields accepted by the API.
- Returns:
Uploaded file metadata.
- ReposResource.update_repo_settings(*, owner: str | None = None, repo: str | None = None, **payload) RepositorySettings
Update repository settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Settings fields accepted by the API.
- Returns:
API response payload.
- ReposResource.get_repo_settings(*, owner: str | None = None, repo: str | None = None) RepositorySettings
Get repository settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Repository settings payload.
- ReposResource.get_pull_request_settings(*, owner: str | None = None, repo: str | None = None) PullRequestSettings
Get pull request settings for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Pull request settings payload.
- ReposResource.update_pull_request_settings(*, owner: str | None = None, repo: str | None = None, **payload) PullRequestSettings
Update pull request settings for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Pull request settings accepted by the API.
- Returns:
API response payload.
- ReposResource.set_member_role(*, username: str, owner: str | None = None, repo: str | None = None, permission: str | None = None) RepoMember
Set a repository member role.
- Parameters:
username – Member username or login.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
permission – Permission or role name accepted by the API.
- Returns:
API response payload.
- ReposResource.transfer(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryTransferResult
Transfer a repository to another owner or namespace.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Transfer options accepted by the API.
- Returns:
API response payload.
- ReposResource.list_customized_roles(*, owner: str | None = None, repo: str | None = None) List[RepositoryCustomizedRole]
List customized roles for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Customized role definitions.
- ReposResource.get_download_statistics(*, owner: str | None = None, repo: str | None = None, **params) RepositoryDownloadStatistics
Get download statistics for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters accepted by the statistics endpoint.
- Returns:
Download statistics payload.
- ReposResource.get_contributor_statistics(*, owner: str | None = None, repo: str | None = None) List[ContributorStatistics]
Get code contribution statistics for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Contributor statistics payload.
- ReposResource.list_events(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[APIObject]
List repository events.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Repository event payloads.
GitCode.contents
- GitCode.contents: RepoContentsResource
Repository content endpoints exposed as
client.contents.
- RepoContentsResource.get(*, path: str, owner: str | None = None, repo: str | None = None, ref: str | None = None) ContentObject
Get a file or directory entry from a repository.
- Parameters:
path – Repository-relative file path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
ref – Optional branch, tag, or commit SHA.
- Returns:
Content metadata and payload details.
- RepoContentsResource.create(*, path: str, content: str, message: str, owner: str | None = None, repo: str | None = None, branch: str | None = None, author_name: str | None = None, author_email: str | None = None) CommitResult
Create a file in a repository.
- Parameters:
path – Repository-relative file path.
content – File content, typically base64-encoded for this API.
message – Commit message.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
branch – Optional target branch.
author_name – Optional commit author name.
author_email – Optional commit author email.
- Returns:
Commit result payload.
- RepoContentsResource.update(*, path: str, content: str, message: str, sha: str, owner: str | None = None, repo: str | None = None, branch: str | None = None, author_name: str | None = None, author_email: str | None = None) CommitResult
Update a file in a repository.
- Parameters:
path – Repository-relative file path.
content – Updated file content, typically base64-encoded.
message – Commit message.
sha – Current blob SHA required by the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
branch – Optional target branch.
author_name – Optional commit author name.
author_email – Optional commit author email.
- Returns:
Commit result payload.
- RepoContentsResource.delete(*, path: str, message: str, sha: str, owner: str | None = None, repo: str | None = None, branch: str | None = None, author_name: str | None = None, author_email: str | None = None) CommitResult
Delete a file from a repository.
- Parameters:
path – Repository-relative file path.
message – Commit message.
sha – Current blob SHA required by the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
branch – Optional target branch.
author_name – Optional commit author name.
author_email – Optional commit author email.
- Returns:
Commit result payload.
- RepoContentsResource.list_paths(*, owner: str | None = None, repo: str | None = None, ref_name: str | None = None, file_name: str | None = None) List[str]
List repository paths known to GitCode.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
ref_name – Optional ref name to inspect.
file_name – Optional filename filter.
- Returns:
Matching repository paths.
- RepoContentsResource.get_tree(*, sha: str, owner: str | None = None, repo: str | None = None, recursive: int | None = None, page: int | None = None, per_page: int | None = None) Tree
Get a Git tree object.
- Parameters:
sha – Tree SHA.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
recursive – Pass
1to fetch the tree recursively (query parameter per Repository API).page – Page number for large trees.
per_page – Page size for large trees.
- Returns:
Tree metadata and entries.
- RepoContentsResource.get_blob(*, sha: str, owner: str | None = None, repo: str | None = None) Blob
Get a Git blob object by SHA.
- Parameters:
sha – Blob SHA.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Blob metadata and content.
- RepoContentsResource.get_raw(*, path: str, owner: str | None = None, repo: str | None = None, ref: str | None = None) bytes
Download raw file bytes from a repository.
- Parameters:
path – Repository-relative file path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
ref – Optional branch, tag, or commit SHA.
- Returns:
Raw file bytes.
GitCode.branches
- GitCode.branches: BranchesResource
Repository branch endpoints exposed as
client.branches.
- BranchesResource.list(*, owner: str | None = None, repo: str | None = None, sort: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Branch]
List branches in a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
sort – Optional sort field such as
nameorupdated.direction – Sort direction, usually
ascordesc.page – Page number.
per_page – Page size.
- Returns:
Repository branches.
- BranchesResource.get(*, branch: str, owner: str | None = None, repo: str | None = None) BranchDetail
Get a single branch.
- Parameters:
branch – Branch name.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Branch details.
- BranchesResource.create(*, branch: str, ref: str, owner: str | None = None, repo: str | None = None) Branch
Create a branch from an existing ref.
- Parameters:
branch – New branch name.
ref – Starting ref such as a branch, tag, or commit SHA.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Created branch details.
- BranchesResource.list_protected(*, owner: str | None = None, repo: str | None = None) List[ProtectedBranch]
List protected branch rules for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Protected branch rules.
GitCode.commits
- GitCode.commits: CommitsResource
Repository commit endpoints exposed as
client.commits.
- CommitsResource.list(*, owner: str | None = None, repo: str | None = None, sha: str | None = None, path: str | None = None, page: int | None = None, per_page: int | None = None) List[CommitSummary]
List commits in a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
sha – Optional starting SHA or ref.
path – Optional file path filter.
page – Page number.
per_page – Page size.
- Returns:
Matching commits.
- CommitsResource.get(*, sha: str, owner: str | None = None, repo: str | None = None) Commit
Get a single commit.
- Parameters:
sha – Commit SHA or branch name accepted by the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Commit details.
- CommitsResource.compare(*, base: str, head: str, owner: str | None = None, repo: str | None = None) CommitComparison
Compare two refs in a repository.
- Parameters:
base – Base commit SHA, branch, or tag.
head – Head commit SHA, branch, or tag.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Commit comparison payload.
- CommitsResource.list_comments(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[CommitComment]
List commit comments for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Commit comments.
- CommitsResource.get_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) CommitComment
Get a single commit comment.
- Parameters:
comment_id – Commit comment identifier.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Commit comment details.
- CommitsResource.create_comment(*, sha: str, body: str, owner: str | None = None, repo: str | None = None, path: str | None = None, position: int | None = None) CommitComment
Create a comment on a commit.
- Parameters:
sha – Commit SHA.
body – Comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
path – Optional file path associated with the comment.
position – Optional diff position.
- Returns:
Created commit comment.
- CommitsResource.update_comment(*, comment_id: int | str, body: str, owner: str | None = None, repo: str | None = None) CommitComment
Update a commit comment.
- Parameters:
comment_id – Commit comment identifier.
body – Updated comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Updated commit comment.
- CommitsResource.delete_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete a commit comment.
- Parameters:
comment_id – Commit comment identifier.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
Collaboration resources
GitCode.issues
- GitCode.issues: IssuesResource
Issue endpoints exposed as
client.issues.
- IssuesResource.list(*, owner: str | None = None, repo: str | None = None, state: str | None = None, sort: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Issue]
List issues for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
state – Issue state filter such as
openorclosed(see Issues API).sort – Optional sort field.
direction – Optional sort direction.
page – Page number.
per_page – Page size.
- Returns:
Matching issues.
- IssuesResource.get(*, number: int | str, owner: str | None = None, repo: str | None = None) Issue
Get a single issue by number.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Issue details.
- IssuesResource.create(*, owner: str, repo: str | None = None, title: str, body: str | None = None, assignee: str | None = None, labels: List[str] | None = None, milestone: int | str | None = None, security_hole: str | None = None) Issue
Create an issue for a repository.
- Parameters:
owner – Repository owner path.
repo – Repository name. Uses the client default when omitted.
title – Issue title.
body – Optional issue description.
assignee – Optional assignee username.
labels – Optional label names.
milestone – Optional milestone identifier.
security_hole – Whether the issue is private; form field described in the Issues API (default public).
- Returns:
Created issue details.
- IssuesResource.update(*, number: int | str, owner: str, repo: str | None = None, title: str | None = None, body: str | None = None, state: str | None = None, assignee: str | None = None, labels: List[str] | None = None, milestone: int | str | None = None, security_hole: str | None = None) Issue
Update an existing issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path.
repo – Repository name. Uses the client default when omitted.
title – Updated issue title.
body – Updated issue description.
state – Updated state such as
reopenorclose.assignee – Updated assignee username.
labels – Replacement label names.
milestone – Updated milestone identifier.
security_hole – Whether the issue is private; form field described in the Issues API.
- Returns:
Updated issue details.
- IssuesResource.list_comments(*, number: int | str, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[IssueComment]
List comments for an issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path (name). Uses the client default when omitted.
page – Current page number (query).
per_page – Page size; maximum per REST API is typically 100.
- Returns:
Issue comments.
- IssuesResource.create_comment(*, number: int | str, body: str, owner: str | None = None, repo: str | None = None) IssueComment
Create a comment on an issue.
- Parameters:
number – Repository-local issue number.
body – Comment body text.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Created comment.
- IssuesResource.get_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) IssueComment
Get a single issue comment by identifier.
- Parameters:
comment_id – Comment id from the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Issue comment.
- IssuesResource.update_comment(*, comment_id: int | str, body: str, owner: str | None = None, repo: str | None = None) IssueComment
Update an issue comment.
- Parameters:
comment_id – Comment id from the API.
body – Updated comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Updated comment.
- IssuesResource.delete_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete an issue comment.
- Parameters:
comment_id – Comment id from the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- IssuesResource.list_pull_requests(*, number: int | str, owner: str | None = None, repo: str | None = None) List[PullRequest]
List pull requests associated with an issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Pull requests linked to the issue.
- IssuesResource.add_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Add labels to an issue.
- Parameters:
number – Repository-local issue number.
labels – Label names to add (request body is a JSON array per REST API).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels on the issue after the operation.
- IssuesResource.remove_label(*, number: int | str, name: str, owner: str | None = None, repo: str | None = None) None
Remove one label from an issue (REST path includes the label name).
- Parameters:
number – Repository-local issue number.
name – Label name to remove.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- IssuesResource.list_enterprise(*, enterprise: str, **params) List[Issue]
List enterprise issues visible to the caller.
- Parameters:
enterprise – Enterprise path or login.
params – Additional query parameters accepted by
GET .../enterprises/{enterprise}/issues.
- Returns:
Enterprise-scoped issues.
- IssuesResource.list_user(**params) List[Issue]
List issues for the authenticated user.
- Parameters:
params – Query parameters for
GET /user/issues(filters, pagination, etc.).- Returns:
Issues assigned to or authored by the user, per API rules.
- IssuesResource.list_org(*, org: str, **params) List[Issue]
List organization issues visible to the current user.
- Parameters:
org – Organization path or login.
params – Query parameters for
GET .../orgs/{org}/issues.
- Returns:
Organization-scoped issues.
- IssuesResource.get_enterprise_issue(*, enterprise: str, number: int | str) Issue
Get a specific enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
number – Enterprise issue id or number as accepted by the API path.
- Returns:
Issue payload.
- IssuesResource.list_enterprise_comments(*, enterprise: str, number: int | str, **params) List[IssueComment]
List comments for an enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
number – Enterprise issue identifier in the path.
params – Optional pagination or filter query parameters.
- Returns:
Comments on the enterprise issue.
- IssuesResource.list_enterprise_labels(*, enterprise: str, issue_id: int | str) List[Label]
List labels attached to an enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
issue_id – Enterprise issue id in the path segment
.../issues/{issue_id}/labels.
- Returns:
Labels on the issue.
- IssuesResource.list_operation_logs(*, owner: str, number: int | str, page: int | None = None, per_page: int | None = None) List[IssueOperationLog]
List operation (audit) logs for an issue.
- Parameters:
owner – Repository owner path (path segment
repos/{owner}/...for this endpoint).number – Repository-local issue number.
page – Page number.
per_page – Page size.
- Returns:
Operation log entries.
GitCode.pulls
- GitCode.pulls: PullsResource
Pull request endpoints exposed as
client.pulls.
- PullsResource.list(*, owner: str | None = None, repo: str | None = None, state: str | None = None, sort: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None, **params) List[PullRequest] | PullRequestCount
List pull requests for a repository.
When
only_countis true inparams(or passed via**params), the API returns a JSON object with counts per state instead of an array (see Pull Request API).- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path (name). Uses the client default when omitted.
state – PR state filter:
all,open,closed,locked,merged(defaultallin API).sort – Sort field, typically
createdorupdated.direction –
ascordesc(API default is usuallydesc).page – Current page number.
per_page – Page size (max 100 per API documentation).
params – Extra query parameters from the Pull Request API, for example
base,since,author,assignee,reviewer,milestone_number,labels(comma-separated),merged_after,merged_before,created_after,created_before,updated_after,updated_before,only_count(boolean), and ISO 8601 timestamps (URL-encoded when sent).
- Returns:
A list of pull requests, or an
APIObjectwhen the response is a count object.
- PullsResource.get(*, number: int | str, owner: str | None = None, repo: str | None = None) PullRequest
Get a single pull request.
- Parameters:
number – Pull request number in the repository.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Pull request details.
- PullsResource.create(*, title: str, head: str, base: str, owner: str | None = None, repo: str | None = None, body: str | None = None, draft: bool | None = None, assignees: List[str] | None = None, testers: List[str] | None = None, labels: List[str] | None = None, milestone_number: int | None = None, issue: str | None = None, prune_source_branch: bool | None = None, squash: bool | None = None, squash_commit_message: str | None = None, fork_path: str | None = None) PullRequest
Create a pull request.
- Parameters:
title – Pull request title.
head – Source branch ref (head branch, in forks use
owner:branchlike “SushiNinja:develop”).base – Target branch ref (base branch).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
body – Description body.
draft – Whether to create as draft.
assignees – Assignee logins; sent as a comma-separated string per API.
testers – Tester logins; comma-separated in the JSON body.
labels – Label names; comma-separated in the JSON body.
milestone_number – Target milestone number.
issue – Related issue reference when supported by the API.
prune_source_branch – Whether to delete the source branch after merge when applicable.
squash – Squash-merge preference where supported.
squash_commit_message – Custom squash commit message.
fork_path – Fork
owner/repowhen opening a PR from a fork, like “SushiNinja/agent-core-contrib”.
- Returns:
Created pull request.
- PullsResource.update(*, number: int | str, owner: str | None = None, repo: str | None = None, title: str | None = None, body: str | None = None, state: str | None = None, base: str | None = None, labels: List[str] | None = None, draft: bool | None = None) PullRequest
Update a pull request.
- Parameters:
number – Pull request number in the repository.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
title – New title.
body – New description.
state – New state as accepted by the API (for example close or reopen semantics).
base – New base branch name.
labels – Replacement labels; comma-separated in the JSON body.
draft – Draft flag.
- Returns:
Updated pull request.
- PullsResource.merge(*, number: int | str, owner: str | None = None, repo: str | None = None, merge_commit_message: str | None = None, squash: bool | None = None) MergeResult
Merge a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
merge_commit_message – Optional merge commit message.
squash – Whether to squash merge when supported.
- Returns:
Merge result payload.
- PullsResource.get_merge_status(*, number: int | str, owner: str | None = None, repo: str | None = None) MergeStatus
Get mergeability status for a pull request (GET on the merge resource).
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Merge status / mergeability information.
- PullsResource.list_commits(*, number: int | str, owner: str | None = None, repo: str | None = None) List[APIObject]
List commits included in a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Commit objects (wrapped as
APIObject).
- PullsResource.list_files(*, number: int | str, owner: str | None = None, repo: str | None = None) List[PullRequestFile]
List files changed by a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
File change entries.
- PullsResource.list_comments(*, number: int | str, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[PullRequestComment]
List comments on a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Pull request review comments.
- PullsResource.create_comment(*, number: int | str, body: str, owner: str | None = None, repo: str | None = None, commit_id: str | None = None, path: str | None = None, position: int | None = None) PullRequestComment
Create a pull request (review) comment.
- Parameters:
number – Pull request number.
body – Comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
commit_id – Commit SHA the comment applies to.
path – File path in the diff.
position – Line or diff position as defined by the API.
- Returns:
Created comment.
- PullsResource.get_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) PullRequestComment
Get a single pull request comment by id (global comment endpoint).
- Parameters:
comment_id – Comment id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Pull request comment.
- PullsResource.update_comment(*, comment_id: int | str, body: str, owner: str | None = None, repo: str | None = None) PullRequestComment
Update a pull request comment.
- Parameters:
comment_id – Comment id.
body – Updated body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Updated comment.
- PullsResource.delete_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete a pull request comment.
- Parameters:
comment_id – Comment id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- PullsResource.list_labels(*, number: int | str, owner: str | None = None, repo: str | None = None) List[Label]
List labels attached to a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels on the pull request.
- PullsResource.add_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Add labels to a pull request.
- Parameters:
number – Pull request number.
labels – Label names (JSON array body per API).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels after the operation.
- PullsResource.replace_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Replace all labels on a pull request.
- Parameters:
number – Pull request number.
labels – Complete new label set (JSON array body).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels after replacement.
- PullsResource.remove_label(*, number: int | str, label: str, owner: str | None = None, repo: str | None = None) None
Remove a label from a pull request.
- Parameters:
number – Pull request number.
label – Label name to remove.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- PullsResource.request_review(*, number: int | str, owner: str | None = None, repo: str | None = None, event: str, body: str | None = None) None
Submit a pull request review event (approve, request changes, etc., per API).
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
event – Review event name as required by GitCode (for example
APPROVE; see API docs).body – Optional comment body accompanying the event.
- Returns:
Review result object.
- PullsResource.list_operation_logs(*, number: int | str, owner: str | None = None, repo: str | None = None, **params) List[PullRequestOperationLog]
List operation logs for a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
params – Additional query parameters accepted by the operate_logs endpoint.
- Returns:
Log entries as generic API objects.
- PullsResource.request_test(*, number: int | str, owner: str | None = None, repo: str | None = None, **payload) None
Request testing for a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
payload – JSON fields required by the test request endpoint.
- Returns:
Test request result.
- PullsResource.update_testers(*, number: int | str, testers: List[str], owner: str | None = None, repo: str | None = None) None
Replace pull request testers.
- Parameters:
number – Pull request number.
testers – New tester list; serialized as a comma-separated
testersfield in JSON.owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- PullsResource.add_testers(*, number: int | str, testers: List[str], owner: str | None = None, repo: str | None = None) List[UserSummary]
Add testers to a pull request.
- Parameters:
number – Pull request number.
testers – Usernames to add; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- PullsResource.update_assignees(*, number: int | str, assignees: List[str], owner: str | None = None, repo: str | None = None) None
Replace pull request assignees.
- Parameters:
number – Pull request number.
assignees – New assignee list; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- PullsResource.add_assignees(*, number: int | str, assignees: List[str], owner: str | None = None, repo: str | None = None) PullRequestAssigneeCount
Add assignees to a pull request.
- Parameters:
number – Pull request number.
assignees – Usernames to add; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- PullsResource.remove_assignees(*, number: int | str, assignees: List[str], owner: str | None = None, repo: str | None = None) None
Remove assignees from a pull request.
- Parameters:
number – Pull request number.
assignees – Usernames to remove; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- PullsResource.list_issues(*, number: int | str, owner: str | None = None, repo: str | None = None) List[Issue]
List issues linked to a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Linked issues.
- PullsResource.list_enterprise(*, enterprise: str, **params) List[PullRequest]
List enterprise pull requests.
- Parameters:
enterprise – Enterprise path or login.
params – Query parameters for the enterprise pull_requests listing.
- Returns:
Pull requests in the enterprise scope.
- PullsResource.list_org(*, org: str, **params) List[PullRequest]
List pull requests for an organization scope.
- Parameters:
org – Organization path (
GET .../org/{org}/pull_requests).params – Query parameters accepted by that listing.
- Returns:
Organization-scoped pull requests.
- PullsResource.list_issue_pull_requests(*, enterprise: str, number: int | str) List[PullRequest]
List pull requests associated with an enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
number – Enterprise issue number or id in the path.
- Returns:
Related pull requests.
GitCode.labels
- GitCode.labels: LabelsResource
Label endpoints exposed as
client.labels.
- LabelsResource.list(*, owner: str | None = None, repo: str | None = None) List[Label]
List repository labels.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
All labels defined on the repository.
- LabelsResource.create(*, name: str, color: str, owner: str | None = None, repo: str | None = None) Label
Create a repository label.
- Parameters:
name – Label name.
color – Label color (typically a
#RRGGBBhex string per API examples).owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Created label.
- LabelsResource.update(*, original_name: str, owner: str | None = None, repo: str | None = None, name: str | None = None, color: str | None = None) Label
Update a repository label.
- Parameters:
original_name – Current label name in the URL path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
name – New label name, if renaming.
color – New color value.
- Returns:
Updated label.
- LabelsResource.delete(*, name: str, owner: str | None = None, repo: str | None = None) None
Delete a repository label.
- Parameters:
name – Label name in the path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- LabelsResource.clear_issue_labels(*, number: int | str, owner: str | None = None, repo: str | None = None) None
Remove all labels from an issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- LabelsResource.replace_issue_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Replace all labels on an issue.
- Parameters:
number – Repository-local issue number.
labels – Complete new label set (JSON array body).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels after replacement.
- LabelsResource.list_enterprise(*, enterprise: str, search: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None, api_version: str = 'v5') List[Label]
List labels for an enterprise, optionally using a different API version.
- Parameters:
enterprise – Enterprise path or login.
search – Optional name search string.
direction – Sort direction for results.
page – Page number.
per_page – Page size.
api_version –
v5uses/api/v5/...; other values build/api/{version}/...on the same host.
- Returns:
Enterprise label definitions.
GitCode.milestones
- GitCode.milestones: MilestonesResource
Milestone endpoints exposed as
client.milestones.
- MilestonesResource.list(*, owner: str | None = None, repo: str | None = None, **params) List[Milestone]
List milestones for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
params – Query parameters accepted by the milestones listing (state, sort, pagination, etc.).
- Returns:
Milestones.
- MilestonesResource.get(*, number: int | str, owner: str | None = None, repo: str | None = None) Milestone
Get a single milestone.
- Parameters:
number – Milestone number in the repository.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Milestone details.
- MilestonesResource.create(*, title: str, due_on: str, owner: str | None = None, repo: str | None = None, description: str | None = None) Milestone
Create a milestone.
- Parameters:
title – Milestone title.
due_on – Due date string in the format expected by the API (often ISO 8601).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
description – Optional description.
- Returns:
Created milestone.
- MilestonesResource.update(*, number: int | str, title: str, due_on: str, owner: str | None = None, repo: str | None = None, description: str | None = None, state: str | None = None) Milestone
Update a milestone.
- Parameters:
number – Milestone number.
title – Updated title.
due_on – Updated due date.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
description – Updated description.
state – Milestone state such as
openorclosedper API.
- Returns:
Updated milestone.
- MilestonesResource.delete(*, number: int | str, owner: str | None = None, repo: str | None = None) None
Delete a milestone.
- Parameters:
number – Milestone number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
GitCode.members
- GitCode.members: MembersResource
Repository member endpoints exposed as
client.members.
- MembersResource.add_or_update(*, username: str, owner: str | None = None, repo: str | None = None, permission: str | None = None) RepoMember
Add or update repository member permissions.
- Parameters:
username – Collaborator login.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
permission – Permission string (for example
pull,push,adminper GitCode API).
- Returns:
Collaborator record.
- MembersResource.remove(*, username: str, owner: str | None = None, repo: str | None = None) None
Remove a repository member.
- Parameters:
username – Collaborator login to remove.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- MembersResource.list(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[RepoCollaborator]
List repository members (collaborators).
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Collaborators with permission metadata.
- MembersResource.get(*, username: str, owner: str | None = None, repo: str | None = None) RepositoryCollaboratorCheck
Check whether a user is a repository member.
- MembersResource.get_permission(*, username: str, owner: str | None = None, repo: str | None = None) RepoMemberPermission
Get repository member permissions.
- Parameters:
username – Collaborator login.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Effective permission for the user on the repository.
Account and discovery resources
GitCode.users
- GitCode.users: UsersResource
User endpoints exposed as
client.users.
- UsersResource.get(*, username: str) User
Get a user profile.
- Parameters:
username – GitCode username or login.
- Returns:
User profile details.
- UsersResource.me() User
Get the profile of the authenticated user.
- Returns:
Authorized user profile.
- UsersResource.list_emails() List[Email]
List email addresses for the authenticated user.
- Returns:
Email records associated with the current account.
- UsersResource.list_events(*, username: str, year: str | None = None, next: str | None = None) UserEventsResponse
List activity events for a user.
- Parameters:
username – GitCode username or login (path segment, see User API).
year – Optional start year filter (query
year, e.g.2024per documentation).next – Optional end date / pagination cursor (query
next; often an ISO timestamp from a prior page).
- Returns:
Event payload grouped by date.
- UsersResource.list_repos(*, username: str, **params) List[Repository]
List public repositories owned by a user.
Supported filters follow the user repository API documentation, such as
type,sort,direction,page, andper_page.- Parameters:
username – GitCode username or login.
params – Query parameters accepted by the REST endpoint.
- Returns:
Matching repositories.
- UsersResource.create_key(*, key: str, title: str) PublicKey
Add a public SSH key for the authenticated user.
- Parameters:
key – Public key material.
title – Human-readable key name.
- Returns:
Created key metadata.
- UsersResource.list_keys(*, page: int | None = None, per_page: int | None = None) List[APIObject]
List public SSH keys for the authenticated user.
- Parameters:
page – Page number.
per_page – Page size.
- Returns:
Public key records.
- UsersResource.delete_key(*, key_id: int | str) None
Delete a public SSH key.
- Parameters:
key_id – Public key identifier.
- UsersResource.get_key(*, key_id: int | str) PublicKey
Get a single public SSH key.
- Parameters:
key_id – Public key identifier.
- Returns:
Public key metadata.
- UsersResource.get_namespace(*, path: str) Namespace
Resolve namespace information for the authenticated user.
- Parameters:
path – Namespace path to look up.
- Returns:
Namespace details.
- UsersResource.list_starred(*, sort: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List repositories starred by the authenticated user.
- Parameters:
sort – Sort field such as
createdorupdated.direction – Sort direction, usually
ascordesc.page – Page number.
per_page – Page size.
- Returns:
Starred repositories.
GitCode.orgs
- GitCode.orgs: OrgsResource
Organization endpoints exposed as
client.orgs.
- OrgsResource.list_for_user(*, username: str, page: int | None = None, per_page: int | None = None) List[OrganizationSummary]
List organizations for a user.
- Parameters:
username – GitCode username or login.
page – Page number.
per_page – Page size.
- Returns:
Organizations the user belongs to.
- OrgsResource.list_authenticated(*, page: int | None = None, per_page: int | None = None, admin: bool | None = None) List[OrganizationSummary]
List organizations for the authenticated user.
- Parameters:
page – Page number.
per_page – Page size.
admin – Optional admin-only filter.
- Returns:
Organizations visible to the authorized user.
- OrgsResource.get_member(*, org: str, username: str) OrganizationMembership
Get an organization member profile.
- Parameters:
org – Organization path or login.
username – Member username or login.
- Returns:
Organization membership details.
- OrgsResource.get(*, org: str) Organization
Get an organization.
- Parameters:
org – Organization path or login.
- Returns:
Organization details.
- OrgsResource.list_repos(*, org: str, type: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List repositories for an organization.
- Parameters:
org – Organization path or login.
type – Repository type filter such as
all,public, orprivate.page – Page number.
per_page – Page size.
- Returns:
Matching repositories.
- OrgsResource.create_repo(*, org: str, name: str, **payload) Repository
Create an organization repository.
Additional payload fields match the organization repository creation endpoint, such as
description,homepage,private,public,auto_init, anddefault_branch.- Parameters:
org – Organization path or login.
name – Repository name.
payload – Additional repository creation fields.
- Returns:
Created repository metadata.
- OrgsResource.get_enterprise_member(*, enterprise: str, username: str) EnterpriseMember
Get a member profile for an enterprise.
- Parameters:
enterprise – Enterprise path or login.
username – Member username or login.
- Returns:
Enterprise membership details.
- OrgsResource.get_membership(*, org: str) OrganizationMembership
Get the authenticated user’s membership in an organization.
- Parameters:
org – Organization path or login.
- Returns:
Membership details for the current user.
- OrgsResource.list_members(*, org: str, page: int | None = None, per_page: int | None = None, role: str | None = None) List[User]
List members of an organization.
- Parameters:
org – Organization path or login.
page – Page number.
per_page – Page size.
role – Optional role filter such as
all,admin, ormember.
- Returns:
Organization members.
- OrgsResource.list_enterprise_members(*, enterprise: str, page: int | None = None, per_page: int | None = None, role: str | None = None) List[EnterpriseMember]
List members of an enterprise.
- Parameters:
enterprise – Enterprise path or login.
page – Page number.
per_page – Page size.
role – Optional role filter.
- Returns:
Enterprise members.
- OrgsResource.remove_member(*, org: str, username: str) EmptyResponse
Remove a member from an organization.
- Parameters:
org – Organization path or login.
username – Member username or login.
- Returns:
API response payload, if any.
- OrgsResource.list_followers(*, owner: str, page: int | None = None, per_page: int | None = None) List[User]
List followers of an organization.
- Parameters:
owner – Organization path.
page – Page number.
per_page – Page size.
- Returns:
Followers of the organization.
- OrgsResource.get_issue_extend_settings(*, org: str) List[APIObject]
Get extended issue type and status settings for an organization.
- Parameters:
org – Organization path or login.
- Returns:
Extended issue configuration entries.
- OrgsResource.invite_member(*, org: str, username: str, permission: str | None = None, role_id: str | None = None) User
Invite a user to an organization.
- Parameters:
org – Organization path or login.
username – Member username or login.
permission – Permission level such as
pull,push, oradmin.role_id – Custom role identifier when using a customized permission.
- Returns:
Invited user information with permissions.
- OrgsResource.update_enterprise_member(*, enterprise: str, username: str, role: str) EnterpriseMember
Update the role of an enterprise member.
- Parameters:
enterprise – Enterprise path or login.
username – Member username or login.
role – Enterprise role such as
viewer,developer, oradmin.
- Returns:
Updated enterprise membership.
- OrgsResource.update(*, org: str, **payload) Organization
Update organization metadata.
- Parameters:
org – Organization path or login.
payload – Updatable fields such as
name,email, ordescription.
- Returns:
Updated organization details.
- OrgsResource.leave(*, org: str) None
Leave an organization as the authenticated user.
- Parameters:
org – Organization path or login.
GitCode.search
- GitCode.search: SearchResource
Search endpoints exposed as
client.search.
- SearchResource.users(*, q: str, page: int | None = None, per_page: int | None = None, sort: str | None = None, order: str | None = None) List[SearchUser]
Search users.
- Parameters:
q – Search keywords.
page – Page number.
per_page – Page size.
sort – Optional sort field such as
joined_at.order – Sort order, usually
ascordesc.
- Returns:
Matching user search results.
- SearchResource.issues(*, q: str, page: int | None = None, per_page: int | None = None, sort: str | None = None, order: str | None = None, repo: str | None = None, state: str | None = None) List[SearchIssue]
Search issues.
- Parameters:
q – Search keywords.
page – Page number.
per_page – Page size.
sort – Optional sort field.
order – Sort order, usually
ascordesc.repo – Optional repository path filter.
state – Optional issue state filter.
- Returns:
Matching issue search results.
- SearchResource.repositories(*, q: str, page: int | None = None, per_page: int | None = None, sort: str | None = None, order: str | None = None, owner: str | None = None, fork: str | None = None, language: str | None = None) List[SearchRepository]
Search repositories.
- Parameters:
q – Search keywords.
page – Page number.
per_page – Page size.
sort – Optional sort field such as
stars_count.order – Sort order, usually
ascordesc.owner – Optional owner path filter.
fork – Optional fork visibility filter.
language – Optional programming language filter.
- Returns:
Matching repository search results.
GitCode.oauth
- GitCode.oauth: OAuthResource
OAuth helper endpoints exposed as
client.oauth.
- OAuthResource.build_authorize_url(*, client_id: str, redirect_uri: str, scope: str | None = None, state: str | None = None, response_type: str = 'code') str
Build the GitCode OAuth authorization URL.
- Parameters:
client_id – OAuth application client ID.
redirect_uri – Registered redirect URI.
scope – Optional OAuth scopes.
state – Optional CSRF protection value.
response_type – OAuth response type, defaults to
"code".
- Returns:
Browser URL for the authorization step.
- OAuthResource.exchange_token(*, code: str, client_id: str, client_secret: str) OAuthToken
Exchange an authorization code for an OAuth token.
- Parameters:
code – Authorization code returned by GitCode.
client_id – OAuth application client ID.
client_secret – OAuth application client secret.
- Returns:
OAuth access token payload.
- OAuthResource.refresh_token(*, refresh_token: str) OAuthToken
Refresh an OAuth token.
- Parameters:
refresh_token – Refresh token previously issued by GitCode.
- Returns:
Refreshed OAuth token payload.
Miscellaneous repository resources
GitCode.releases
- GitCode.releases: ReleasesResource
Release endpoints exposed as
client.releases.
- ReleasesResource.create(*, tag: str, name: str, body: str, owner: str | None = None, repo: str | None = None, target_commitish: str | None = None, release_status: str | None = None) Release
Create a repository release.
- Parameters:
tag – Tag name for the release.
name – Release title.
body – Release description.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
target_commitish – Branch name or commit SHA for creating a missing tag.
release_status – Release status, such as
preorlatest.
- Returns:
Created release payload.
- ReleasesResource.update(*, tag: str, name: str, body: str, owner: str | None = None, repo: str | None = None, release_status: str | None = None) Release
Update a repository release.
- Parameters:
tag – Tag name in the release URL path.
name – Release name.
body – Release description.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
release_status – Release status, such as
preorlatest.
- Returns:
Updated release payload.
- ReleasesResource.get_upload_url(*, tag: str, file_name: str, owner: str | None = None, repo: str | None = None) ReleaseUploadURL
Get a pre-signed URL for uploading a release attachment.
- Parameters:
tag – Tag name in the release URL path.
file_name – Attachment file name to upload.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Upload URL and required headers.
- ReleasesResource.upload(*, tag: str, file_name: str, content: bytes | str, owner: str | None = None, repo: str | None = None, upload_timeout: float | None = 300.0) None
Upload a release attachment through the pre-signed upload URL.
- Parameters:
tag – Tag name in the release URL path.
file_name – Attachment file name to upload.
content – Attachment bytes, or a local file path to read as bytes.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
upload_timeout – Timeout for upload operation. Default to 300 (5 minutes).
- ReleasesResource.get_by_tag(*, tag: str, owner: str | None = None, repo: str | None = None) Release
Get a repository release by tag name.
- Parameters:
tag – Git tag the release is attached to.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Release metadata for that tag.
- ReleasesResource.list(*, owner: str | None = None, repo: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Release]
List releases for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
direction – Sort direction, for example
ascordesc.page – Page number.
per_page – Page size, up to 100.
- Returns:
Releases ordered as returned by the API.
- ReleasesResource.get_latest(*, owner: str | None = None, repo: str | None = None, type: str | None = None) Release
Get the latest repository release.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
type – Selection type, either
updatedorlatest.
- Returns:
Latest release metadata.
- ReleasesResource.get(*, tag: str, owner: str | None = None, repo: str | None = None, temp_download_url: bool | str | None = None) Release
Get a repository release by tag path.
- Parameters:
tag – Tag name in the release URL path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
temp_download_url – Whether to return temporary source package and attachment URLs.
- Returns:
Release metadata.
- ReleasesResource.download_attachment(*, tag: str, file_name: str, owner: str | None = None, repo: str | None = None) bytes
Download a release attachment as bytes.
- Parameters:
tag – Tag name in the release URL path.
file_name – Attachment file name.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Attachment bytes.
GitCode.webhooks
- GitCode.webhooks: WebhooksResource
Webhook endpoints exposed as
client.webhooks.
- WebhooksResource.list(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[Webhook]
List webhooks for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Hook configurations.
- WebhooksResource.create(*, url: str, owner: str | None = None, repo: str | None = None, **payload) Webhook
Create a repository webhook.
- Parameters:
url – Payload URL GitCode should POST events to.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
payload – Additional fields from the Webhooks API (events list, secret, content type, etc.).
- Returns:
Created webhook.
- WebhooksResource.get(*, hook_id: int | str, owner: str | None = None, repo: str | None = None) Webhook
Get a repository webhook by identifier.
- Parameters:
hook_id – Webhook id from the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Webhook configuration.
- WebhooksResource.update(*, hook_id: int | str, url: str, owner: str | None = None, repo: str | None = None, **payload) Webhook
Update a repository webhook.
- Parameters:
hook_id – Webhook id.
url – New payload URL (merged into the JSON body).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
payload – Other mutable webhook fields accepted by the API.
- Returns:
Updated webhook.
- WebhooksResource.delete(*, hook_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete a repository webhook.
- Parameters:
hook_id – Webhook id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- WebhooksResource.test(*, hook_id: int | str, owner: str | None = None, repo: str | None = None) None
Send a test delivery for a repository webhook.
- Parameters:
hook_id – Webhook id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
Asynchronous client
- class AsyncGitCode(*, api_key: str | None = None, owner: str | None = None, repo: str | None = None, base_url: str = 'https://api.gitcode.com/api/v5', timeout: float | None = None, http_client: AsyncClient | None = None, decrypt: Callable | None = None)
Bases:
AsyncAPIClientAsynchronous GitCode API client.
- Parameters:
api_key – Personal access token used for GitCode API requests.
owner – Default repository owner used by repository-scoped helpers.
repo – Default repository name used by repository-scoped helpers.
base_url – Base URL for the GitCode REST API.
timeout – Request timeout in seconds.
http_client – Optional pre-configured
httpx.AsyncClientinstance.decrypt – Optional decryption function for encrypted access token.
Create an asynchronous client and attach resource groups.
- async close() None
Close the underlying async HTTP client and clear cache for garbage collection.
- async request(method: str, path: str, *, params: Dict[str, Any] | None = None, json: Any = None, data: Dict[str, Any] | None = None, headers: Dict[str, str] | None = None, raw: bool = False) Any
Send an asynchronous HTTP request to the GitCode API.
- Parameters:
method – HTTP method such as
"GET"or"POST".path – Relative API path or absolute URL.
params – Optional query parameters.
json – Optional JSON request body.
data – Optional form payload.
headers – Optional extra HTTP headers.
raw – When
True, return response bytes instead of parsed JSON.
- Returns:
Parsed JSON payload, raw bytes, text, or
None.
- repos: AsyncReposResource
Repository endpoints exposed as
client.repos.
- contents: AsyncRepoContentsResource
Repository content endpoints exposed as
client.contents.
- branches: AsyncBranchesResource
Repository branch endpoints exposed as
client.branches.
- commits: AsyncCommitsResource
Repository commit endpoints exposed as
client.commits.
- issues: AsyncIssuesResource
Issue endpoints exposed as
client.issues.
- pulls: AsyncPullsResource
Pull request endpoints exposed as
client.pulls.
- labels: AsyncLabelsResource
Label endpoints exposed as
client.labels.
- milestones: AsyncMilestonesResource
Milestone endpoints exposed as
client.milestones.
- members: AsyncMembersResource
Repository member endpoints exposed as
client.members.
- releases: AsyncReleasesResource
Release endpoints exposed as
client.releases.
- tags: AsyncTagsResource
Tag endpoints exposed as
client.tags.
- webhooks: AsyncWebhooksResource
Webhook endpoints exposed as
client.webhooks.
- users: AsyncUsersResource
User endpoints exposed as
client.users.
- orgs: AsyncOrgsResource
Organization endpoints exposed as
client.orgs.
- search: AsyncSearchResource
Search endpoints exposed as
client.search.
- oauth: AsyncOAuthResource
OAuth helper endpoints exposed as
client.oauth.
Repository resources
AsyncGitCode.repos
- AsyncGitCode.repos: AsyncReposResource
Repository endpoints exposed as
client.repos.
- async AsyncReposResource.get(*, owner: str | None = None, repo: str | None = None) Repository
Get a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Repository metadata.
- async AsyncReposResource.list_user(**params) List[Repository]
List repositories visible to the authenticated user.
Pass query parameters as keyword arguments (same names as
ReposResource.list_user(), for examplevisibility,affiliation,type,sort,direction,q,page,per_page).- Parameters:
params – Query parameters for
GET /user/repos.- Returns:
Matching repositories.
- async AsyncReposResource.list_for_owner(*, owner: str, **params) List[Repository]
List public repositories for a user or owner path.
- Parameters:
owner – Repository owner path or username.
params – Query parameters such as
type,sort,direction,page,per_page.
- Returns:
Matching repositories.
- async AsyncReposResource.create_personal(*, name: str, **payload) Repository
Create a repository for the authenticated user.
- Parameters:
name – Repository name (also written into
payload).payload – Additional JSON fields; see
ReposResource.create_personal()for supported keys.
- Returns:
Created repository metadata.
- async AsyncReposResource.create_for_org(*, org: str, name: str, **payload) Repository
Create a repository under an organization.
- Parameters:
org – Organization path or login.
name – Repository name (also written into
payload).payload – Additional JSON fields; see
ReposResource.create_for_org().
- Returns:
Created repository metadata.
- async AsyncReposResource.update(*, owner: str | None = None, repo: str | None = None, **changes) Repository
Update repository metadata.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
changes – Repository fields accepted by the update endpoint.
- Returns:
Updated repository metadata.
- async AsyncReposResource.delete(*, owner: str | None = None, repo: str | None = None) None
Delete a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- async AsyncReposResource.fork(*, owner: str | None = None, repo: str | None = None, **payload) Repository
Fork a repository.
- Parameters:
owner – Source repository owner path. Uses the client default when omitted.
repo – Source repository name. Uses the client default when omitted.
payload – JSON body fields such as
namespace,path, andname(seeReposResource.fork()).
- Returns:
Forked repository metadata.
- async AsyncReposResource.list_forks(*, owner: str | None = None, repo: str | None = None, **params) List[Repository]
List forks of a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
sort,page,per_page.
- Returns:
Fork repositories.
- async AsyncReposResource.list_contributors(*, owner: str | None = None, repo: str | None = None, **params) List[Contributor]
List repository contributors.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
pageandper_page.
- Returns:
Contributors for the repository.
- async AsyncReposResource.list_languages(*, owner: str | None = None, repo: str | None = None) Dict[str, int]
List language statistics for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Mapping of language names to byte counts.
- async AsyncReposResource.list_stargazers(*, owner: str | None = None, repo: str | None = None, **params) List[UserSummary]
List users who starred a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
pageandper_page.
- Returns:
Users who starred the repository.
- async AsyncReposResource.list_subscribers(*, owner: str | None = None, repo: str | None = None, **params) List[UserSummary]
List users watching a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
pageandper_page.
- Returns:
Subscribers for the repository.
- async AsyncReposResource.update_module_settings(*, owner: str | None = None, repo: str | None = None, **settings) ApiStatusResponse
Update repository module settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
settings – Module settings accepted by the GitCode API.
- Returns:
API response payload.
- async AsyncReposResource.update_reviewer_settings(*, owner: str | None = None, repo: str | None = None, **settings) RepositoryReviewerSettingsUpdate
Update repository reviewer settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
settings – Reviewer settings accepted by the GitCode API.
- Returns:
API response payload.
- async AsyncReposResource.set_org_repo_status(*, org: str, repo: str, **payload) ApiStatusResponse
Update organization repository status metadata.
- Parameters:
org – Organization path.
repo – Repository path.
payload – Status fields accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.transfer_to_org(*, org: str, repo: str, **payload) ApiStatusResponse
Transfer a repository to an organization.
- Parameters:
org – Destination organization path.
repo – Repository path.
payload – Transfer options accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.get_transition(*, owner: str | None = None, repo: str | None = None) RepositoryPermissionMode
Get repository transition settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Transition configuration.
- async AsyncReposResource.update_transition(*, owner: str | None = None, repo: str | None = None, **payload) ApiStatusResponse
Update repository transition settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Transition settings accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.update_push_config(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryPushConfig
Update repository push configuration.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Push configuration values accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.get_push_config(*, owner: str | None = None, repo: str | None = None) RepositoryPushConfig
Get repository push configuration.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Push configuration payload.
- async AsyncReposResource.upload_image(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryUploadResult
Upload an image asset for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Upload fields accepted by the API.
- Returns:
Uploaded image metadata.
- async AsyncReposResource.upload_file(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryUploadResult
Upload a file asset for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Upload fields accepted by the API.
- Returns:
Uploaded file metadata.
- async AsyncReposResource.update_repo_settings(*, owner: str | None = None, repo: str | None = None, **payload) RepositorySettings
Update repository settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Settings fields accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.get_repo_settings(*, owner: str | None = None, repo: str | None = None) RepositorySettings
Get repository settings.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Repository settings payload.
- async AsyncReposResource.get_pull_request_settings(*, owner: str | None = None, repo: str | None = None) PullRequestSettings
Get pull request settings for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Pull request settings payload.
- async AsyncReposResource.update_pull_request_settings(*, owner: str | None = None, repo: str | None = None, **payload) PullRequestSettings
Update pull request settings for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Pull request settings accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.set_member_role(*, username: str, owner: str | None = None, repo: str | None = None, permission: str | None = None) RepoMember
Set a repository member role.
- Parameters:
username – Member username or login.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
permission – Permission or role name accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.transfer(*, owner: str | None = None, repo: str | None = None, **payload) RepositoryTransferResult
Transfer a repository to another owner or namespace.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
payload – Transfer options accepted by the API.
- Returns:
API response payload.
- async AsyncReposResource.list_customized_roles(*, owner: str | None = None, repo: str | None = None) List[RepositoryCustomizedRole]
List customized roles for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Customized role definitions.
- async AsyncReposResource.get_download_statistics(*, owner: str | None = None, repo: str | None = None, **params) RepositoryDownloadStatistics
Get download statistics for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters accepted by the statistics endpoint.
- Returns:
Download statistics payload.
- async AsyncReposResource.get_contributor_statistics(*, owner: str | None = None, repo: str | None = None) List[ContributorStatistics]
Get code contribution statistics for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Contributor statistics payload.
- async AsyncReposResource.list_events(*, owner: str | None = None, repo: str | None = None, **params) List[APIObject]
List repository events.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
pageandper_page.
- Returns:
Repository event payloads.
AsyncGitCode.contents
- AsyncGitCode.contents: AsyncRepoContentsResource
Repository content endpoints exposed as
client.contents.
- async AsyncRepoContentsResource.get(*, path: str, owner: str | None = None, repo: str | None = None, ref: str | None = None) ContentObject
Get a file or directory entry from a repository.
- Parameters:
path – Repository-relative file path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
ref – Optional branch, tag, or commit SHA.
- Returns:
Content metadata and payload details.
- async AsyncRepoContentsResource.create(*, path: str, content: str, message: str, owner: str | None = None, repo: str | None = None, branch: str | None = None, author_name: str | None = None, author_email: str | None = None) CommitResult
Create a file in a repository.
- Parameters:
path – Repository-relative file path.
content – File content, typically base64-encoded for this API.
message – Commit message.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
branch – Optional target branch.
author_name – Optional commit author name.
author_email – Optional commit author email.
- Returns:
Commit result payload.
- async AsyncRepoContentsResource.update(*, path: str, content: str, message: str, sha: str, owner: str | None = None, repo: str | None = None, branch: str | None = None, author_name: str | None = None, author_email: str | None = None) CommitResult
Update a file in a repository.
- Parameters:
path – Repository-relative file path.
content – Updated file content, typically base64-encoded.
message – Commit message.
sha – Current blob SHA required by the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
branch – Optional target branch.
author_name – Optional commit author name.
author_email – Optional commit author email.
- Returns:
Commit result payload.
- async AsyncRepoContentsResource.delete(*, path: str, message: str, sha: str, owner: str | None = None, repo: str | None = None, branch: str | None = None, author_name: str | None = None, author_email: str | None = None) CommitResult
Delete a file from a repository.
- Parameters:
path – Repository-relative file path.
message – Commit message.
sha – Current blob SHA required by the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
branch – Optional target branch.
author_name – Optional commit author name.
author_email – Optional commit author email.
- Returns:
Commit result payload.
- async AsyncRepoContentsResource.list_paths(*, owner: str | None = None, repo: str | None = None, ref_name: str | None = None, file_name: str | None = None) List[str]
List repository paths known to GitCode.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
ref_name – Optional ref name to inspect.
file_name – Optional filename filter.
- Returns:
Matching repository paths.
- async AsyncRepoContentsResource.get_tree(*, sha: str, owner: str | None = None, repo: str | None = None, recursive: int | None = None, page: int | None = None, per_page: int | None = None) Tree
Get a Git tree object.
- Parameters:
sha – Tree SHA.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
recursive – Pass
1to fetch the tree recursively (query parameter per Repository API).page – Page number for large trees.
per_page – Page size for large trees.
- Returns:
Tree metadata and entries.
- async AsyncRepoContentsResource.get_blob(*, sha: str, owner: str | None = None, repo: str | None = None) Blob
Get a Git blob object by SHA.
- Parameters:
sha – Blob SHA.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Blob metadata and content.
- async AsyncRepoContentsResource.get_raw(*, path: str, owner: str | None = None, repo: str | None = None, ref: str | None = None) bytes
Download raw file bytes from a repository.
- Parameters:
path – Repository-relative file path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
ref – Optional branch, tag, or commit SHA.
- Returns:
Raw file bytes.
AsyncGitCode.branches
- AsyncGitCode.branches: AsyncBranchesResource
Repository branch endpoints exposed as
client.branches.
- async AsyncBranchesResource.list(*, owner: str | None = None, repo: str | None = None, **params) List[Branch]
List branches in a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
sort,direction,page,per_page.
- Returns:
Repository branches.
- async AsyncBranchesResource.get(*, branch: str, owner: str | None = None, repo: str | None = None) BranchDetail
Get a single branch.
- Parameters:
branch – Branch name.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Branch details.
- async AsyncBranchesResource.create(*, branch: str, ref: str, owner: str | None = None, repo: str | None = None) Branch
Create a branch from an existing ref.
- Parameters:
branch – New branch name.
ref – Starting ref such as a branch, tag, or commit SHA.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Created branch details.
- async AsyncBranchesResource.list_protected(*, owner: str | None = None, repo: str | None = None) List[ProtectedBranch]
List protected branch rules for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Protected branch rules.
AsyncGitCode.commits
- AsyncGitCode.commits: AsyncCommitsResource
Repository commit endpoints exposed as
client.commits.
- async AsyncCommitsResource.list(*, owner: str | None = None, repo: str | None = None, **params) List[CommitSummary]
List commits in a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
sha,path,page,per_page.
- Returns:
Matching commits.
- async AsyncCommitsResource.get(*, sha: str, owner: str | None = None, repo: str | None = None) Commit
Get a single commit.
- Parameters:
sha – Commit SHA or branch name accepted by the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Commit details.
- async AsyncCommitsResource.compare(*, base: str, head: str, owner: str | None = None, repo: str | None = None) CommitComparison
Compare two refs in a repository.
- Parameters:
base – Base commit SHA, branch, or tag.
head – Head commit SHA, branch, or tag.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Commit comparison payload.
- async AsyncCommitsResource.list_comments(*, owner: str | None = None, repo: str | None = None, **params) List[CommitComment]
List commit comments for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
pageandper_page.
- Returns:
Commit comments.
- async AsyncCommitsResource.get_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) CommitComment
Get a single commit comment.
- Parameters:
comment_id – Commit comment identifier.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Commit comment details.
- async AsyncCommitsResource.create_comment(*, sha: str, body: str, owner: str | None = None, repo: str | None = None, path: str | None = None, position: int | None = None) CommitComment
Create a comment on a commit.
- Parameters:
sha – Commit SHA.
body – Comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
path – Optional file path associated with the comment.
position – Optional diff position.
- Returns:
Created commit comment.
- async AsyncCommitsResource.update_comment(*, comment_id: int | str, body: str, owner: str | None = None, repo: str | None = None) CommitComment
Update a commit comment.
- Parameters:
comment_id – Commit comment identifier.
body – Updated comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Updated commit comment.
- async AsyncCommitsResource.delete_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete a commit comment.
- Parameters:
comment_id – Commit comment identifier.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
Collaboration resources
AsyncGitCode.issues
- AsyncGitCode.issues: AsyncIssuesResource
Issue endpoints exposed as
client.issues.
- async AsyncIssuesResource.list(*, owner: str | None = None, repo: str | None = None, **params) List[Issue]
List issues for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
params – Query parameters such as
state,sort,direction,page,per_page.
- Returns:
Matching issues.
- async AsyncIssuesResource.get(*, number: int | str, owner: str | None = None, repo: str | None = None) Issue
Get a single issue by number.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository name. Uses the client default when omitted.
- Returns:
Issue details.
- async AsyncIssuesResource.create(*, owner: str, repo: str | None = None, title: str, body: str | None = None, assignee: str | None = None, labels: List[str] | None = None, milestone: int | str | None = None, security_hole: str | None = None) Issue
Create an issue for a repository.
- Parameters:
owner – Repository owner path.
repo – Repository name. Uses the client default when omitted.
title – Issue title.
body – Optional issue description.
assignee – Optional assignee username.
labels – Optional label names (comma-separated in the JSON body).
milestone – Optional milestone identifier.
security_hole – Whether the issue is private; form field described in the Issues API.
- Returns:
Created issue details.
- async AsyncIssuesResource.update(*, number: int | str, owner: str, repo: str | None = None, title: str | None = None, body: str | None = None, state: str | None = None, assignee: str | None = None, labels: List[str] | None = None, milestone: int | str | None = None, security_hole: str | None = None) Issue
Update an existing issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path.
repo – Repository name. Uses the client default when omitted.
title – Updated issue title.
body – Updated issue description.
state – Updated state such as
reopenorclose.assignee – Updated assignee username.
labels – Replacement label names (comma-separated in the JSON body).
milestone – Updated milestone identifier.
security_hole – Whether the issue is private; form field described in the Issues API.
- Returns:
Updated issue details.
- async AsyncIssuesResource.list_comments(*, number: int | str, owner: str | None = None, repo: str | None = None, **params) List[IssueComment]
List comments for an issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path (name). Uses the client default when omitted.
params – Optional query parameters (for example
page,per_page).
- Returns:
Issue comments.
- async AsyncIssuesResource.create_comment(*, number: int | str, body: str, owner: str | None = None, repo: str | None = None) IssueComment
Create a comment on an issue.
- Parameters:
number – Repository-local issue number.
body – Comment body text.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Created comment.
- async AsyncIssuesResource.get_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) IssueComment
Get a single issue comment by identifier.
- Parameters:
comment_id – Comment id from the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Issue comment.
- async AsyncIssuesResource.update_comment(*, comment_id: int | str, body: str, owner: str | None = None, repo: str | None = None) IssueComment
Update an issue comment.
- Parameters:
comment_id – Comment id from the API.
body – Updated comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Updated comment.
- async AsyncIssuesResource.delete_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete an issue comment.
- Parameters:
comment_id – Comment id from the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncIssuesResource.list_pull_requests(*, number: int | str, owner: str | None = None, repo: str | None = None) List[PullRequest]
List pull requests associated with an issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Pull requests linked to the issue.
- async AsyncIssuesResource.add_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Add labels to an issue.
- Parameters:
number – Repository-local issue number.
labels – Label names to add (request body is a JSON array per REST API).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels on the issue after the operation.
- async AsyncIssuesResource.remove_label(*, number: int | str, name: str, owner: str | None = None, repo: str | None = None) None
Remove one label from an issue (REST path includes the label name).
- Parameters:
number – Repository-local issue number.
name – Label name to remove.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncIssuesResource.list_enterprise(*, enterprise: str, **params) List[Issue]
List enterprise issues visible to the caller.
- Parameters:
enterprise – Enterprise path or login.
params – Additional query parameters accepted by
GET .../enterprises/{enterprise}/issues.
- Returns:
Enterprise-scoped issues.
- async AsyncIssuesResource.list_user(**params) List[Issue]
List issues for the authenticated user.
- Parameters:
params – Query parameters for
GET /user/issues(filters, pagination, etc.).- Returns:
Issues assigned to or authored by the user, per API rules.
- async AsyncIssuesResource.list_org(*, org: str, **params) List[Issue]
List organization issues visible to the current user.
- Parameters:
org – Organization path or login.
params – Query parameters for
GET .../orgs/{org}/issues.
- Returns:
Organization-scoped issues.
- async AsyncIssuesResource.get_enterprise_issue(*, enterprise: str, number: int | str) Issue
Get a specific enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
number – Enterprise issue id or number as accepted by the API path.
- Returns:
Issue payload.
- async AsyncIssuesResource.list_enterprise_comments(*, enterprise: str, number: int | str, **params) List[IssueComment]
List comments for an enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
number – Enterprise issue identifier in the path.
params – Optional pagination or filter query parameters.
- Returns:
Comments on the enterprise issue.
- async AsyncIssuesResource.list_enterprise_labels(*, enterprise: str, issue_id: int | str) List[Label]
List labels attached to an enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
issue_id – Enterprise issue id in the path segment
.../issues/{issue_id}/labels.
- Returns:
Labels on the issue.
- async AsyncIssuesResource.list_operation_logs(*, owner: str, number: int | str, **params) List[IssueOperationLog]
List operation (audit) logs for an issue.
- Parameters:
owner – Repository owner path (path segment
repos/{owner}/...for this endpoint).number – Repository-local issue number.
params – Optional query parameters (for example
page,per_page).
- Returns:
Operation log entries.
AsyncGitCode.pulls
- AsyncGitCode.pulls: AsyncPullsResource
Pull request endpoints exposed as
client.pulls.
- async AsyncPullsResource.list(*, owner: str | None = None, repo: str | None = None, **params) List[PullRequest] | PullRequestCount
List pull requests for a repository.
When
only_countis true inparams, the API returns a JSON object with counts per state instead of an array (see Pull Request API).- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path (name). Uses the client default when omitted.
params – Query parameters:
state,sort,direction,page,per_page,base,since,author,assignee,reviewer,milestone_number,labels, time filters,only_count, and other fields documented underdocs/rest_api.
- Returns:
A list of pull requests, or an
APIObjectfor count-only responses.
- async AsyncPullsResource.get(*, number: int | str, owner: str | None = None, repo: str | None = None) PullRequest
Get a single pull request.
- Parameters:
number – Pull request number in the repository.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Pull request details.
- async AsyncPullsResource.create(*, title: str, head: str, base: str, owner: str | None = None, repo: str | None = None, body: str | None = None, draft: bool | None = None, assignees: List[str] | None = None, testers: List[str] | None = None, labels: List[str] | None = None, milestone_number: int | None = None, issue: str | None = None, prune_source_branch: bool | None = None, squash: bool | None = None, squash_commit_message: str | None = None, fork_path: str | None = None) PullRequest
Create a pull request.
- Parameters:
title – Pull request title.
head – Source branch ref (head branch, in forks use
owner:branchlike “SushiNinja:develop”).base – Target branch ref (base branch).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
body – Description body.
draft – Whether to create as draft.
assignees – Assignee logins; sent as a comma-separated string per API.
testers – Tester logins; comma-separated in the JSON body.
labels – Label names; comma-separated in the JSON body.
milestone_number – Target milestone number.
issue – Related issue reference when supported by the API.
prune_source_branch – Whether to delete the source branch after merge when applicable.
squash – Squash-merge preference where supported.
squash_commit_message – Custom squash commit message.
fork_path – Fork
owner/repowhen opening a PR from a fork, like “SushiNinja/agent-core-contrib”.
- Returns:
Created pull request.
- async AsyncPullsResource.update(*, number: int | str, owner: str | None = None, repo: str | None = None, title: str | None = None, body: str | None = None, state: str | None = None, base: str | None = None, labels: List[str] | None = None, draft: bool | None = None) PullRequest
Update a pull request.
- Parameters:
number – Pull request number in the repository.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
title – New title.
body – New description.
state – New state as accepted by the API.
base – New base branch name.
labels – Replacement labels; comma-separated in the JSON body.
draft – Draft flag.
- Returns:
Updated pull request.
- async AsyncPullsResource.merge(*, number: int | str, owner: str | None = None, repo: str | None = None, merge_commit_message: str | None = None, squash: bool | None = None) MergeResult
Merge a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
merge_commit_message – Optional merge commit message.
squash – Whether to squash merge when supported.
- Returns:
Merge result payload.
- async AsyncPullsResource.get_merge_status(*, number: int | str, owner: str | None = None, repo: str | None = None) MergeStatus
Get mergeability status for a pull request (GET on the merge resource).
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Merge status / mergeability information.
- async AsyncPullsResource.list_commits(*, number: int | str, owner: str | None = None, repo: str | None = None) List[APIObject]
List commits included in a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Commit objects (wrapped as
APIObject).
- async AsyncPullsResource.list_files(*, number: int | str, owner: str | None = None, repo: str | None = None) List[PullRequestFile]
List files changed by a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
File change entries.
- async AsyncPullsResource.list_comments(*, number: int | str, owner: str | None = None, repo: str | None = None, **params) List[PullRequestComment]
List comments on a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
params – Optional query parameters (for example
page,per_page).
- Returns:
Pull request review comments.
- async AsyncPullsResource.create_comment(*, number: int | str, body: str, owner: str | None = None, repo: str | None = None, commit_id: str | None = None, path: str | None = None, position: int | None = None) PullRequestComment
Create a pull request (review) comment.
- Parameters:
number – Pull request number.
body – Comment body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
commit_id – Commit SHA the comment applies to.
path – File path in the diff.
position – Line or diff position as defined by the API.
- Returns:
Created comment.
- async AsyncPullsResource.get_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) PullRequestComment
Get a single pull request comment by id (global comment endpoint).
- Parameters:
comment_id – Comment id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Pull request comment.
- async AsyncPullsResource.update_comment(*, comment_id: int | str, body: str, owner: str | None = None, repo: str | None = None) PullRequestComment
Update a pull request comment.
- Parameters:
comment_id – Comment id.
body – Updated body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Updated comment.
- async AsyncPullsResource.delete_comment(*, comment_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete a pull request comment.
- Parameters:
comment_id – Comment id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncPullsResource.list_labels(*, number: int | str, owner: str | None = None, repo: str | None = None) List[Label]
List labels attached to a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels on the pull request.
- async AsyncPullsResource.add_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Add labels to a pull request.
- Parameters:
number – Pull request number.
labels – Label names (JSON array body per API).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels after the operation.
- async AsyncPullsResource.replace_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Replace all labels on a pull request.
- Parameters:
number – Pull request number.
labels – Complete new label set (JSON array body).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels after replacement.
- async AsyncPullsResource.remove_label(*, number: int | str, label: str, owner: str | None = None, repo: str | None = None) None
Remove a label from a pull request.
- Parameters:
number – Pull request number.
label – Label name to remove.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncPullsResource.request_review(*, number: int | str, owner: str | None = None, repo: str | None = None, event: str, body: str | None = None) None
Submit a pull request review event (approve, request changes, etc., per API).
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
event – Review event name as required by GitCode (see API docs).
body – Optional comment body accompanying the event.
- Returns:
Review result object.
- async AsyncPullsResource.list_operation_logs(*, number: int | str, owner: str | None = None, repo: str | None = None, **params) List[PullRequestOperationLog]
List operation logs for a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
params – Additional query parameters accepted by the operate_logs endpoint.
- Returns:
Log entries as generic API objects.
- async AsyncPullsResource.request_test(*, number: int | str, owner: str | None = None, repo: str | None = None, **payload) None
Request testing for a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
payload – JSON fields required by the test request endpoint.
- Returns:
Test request result.
- async AsyncPullsResource.update_testers(*, number: int | str, testers: List[str], owner: str | None = None, repo: str | None = None) None
Replace pull request testers.
- Parameters:
number – Pull request number.
testers – New tester list; serialized as a comma-separated
testersfield in JSON.owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- async AsyncPullsResource.add_testers(*, number: int | str, testers: List[str], owner: str | None = None, repo: str | None = None) List[UserSummary]
Add testers to a pull request.
- Parameters:
number – Pull request number.
testers – Usernames to add; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- async AsyncPullsResource.update_assignees(*, number: int | str, assignees: List[str], owner: str | None = None, repo: str | None = None) None
Replace pull request assignees.
- Parameters:
number – Pull request number.
assignees – New assignee list; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- async AsyncPullsResource.add_assignees(*, number: int | str, assignees: List[str], owner: str | None = None, repo: str | None = None) PullRequestAssigneeCount
Add assignees to a pull request.
- Parameters:
number – Pull request number.
assignees – Usernames to add; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
API response payload.
- async AsyncPullsResource.remove_assignees(*, number: int | str, assignees: List[str], owner: str | None = None, repo: str | None = None) None
Remove assignees from a pull request.
- Parameters:
number – Pull request number.
assignees – Usernames to remove; comma-separated in the JSON body.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncPullsResource.list_issues(*, number: int | str, owner: str | None = None, repo: str | None = None) List[Issue]
List issues linked to a pull request.
- Parameters:
number – Pull request number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Linked issues.
- async AsyncPullsResource.list_enterprise(*, enterprise: str, **params) List[PullRequest]
List enterprise pull requests.
- Parameters:
enterprise – Enterprise path or login.
params – Query parameters for the enterprise pull_requests listing.
- Returns:
Pull requests in the enterprise scope.
- async AsyncPullsResource.list_org(*, org: str, **params) List[PullRequest]
List pull requests for an organization scope.
- Parameters:
org – Organization path (
GET .../org/{org}/pull_requests).params – Query parameters accepted by that listing.
- Returns:
Organization-scoped pull requests.
- async AsyncPullsResource.list_issue_pull_requests(*, enterprise: str, number: int | str) List[PullRequest]
List pull requests associated with an enterprise issue.
- Parameters:
enterprise – Enterprise path or login.
number – Enterprise issue number or id in the path.
- Returns:
Related pull requests.
AsyncGitCode.labels
- AsyncGitCode.labels: AsyncLabelsResource
Label endpoints exposed as
client.labels.
- async AsyncLabelsResource.list(*, owner: str | None = None, repo: str | None = None) List[Label]
List repository labels.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
All labels defined on the repository.
- async AsyncLabelsResource.create(*, name: str, color: str, owner: str | None = None, repo: str | None = None) Label
Create a repository label.
- Parameters:
name – Label name.
color – Label color (typically a
#RRGGBBhex string per API examples).owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Created label.
- async AsyncLabelsResource.update(*, original_name: str, owner: str | None = None, repo: str | None = None, name: str | None = None, color: str | None = None) Label
Update a repository label.
- Parameters:
original_name – Current label name in the URL path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
name – New label name, if renaming.
color – New color value.
- Returns:
Updated label.
- async AsyncLabelsResource.delete(*, name: str, owner: str | None = None, repo: str | None = None) None
Delete a repository label.
- Parameters:
name – Label name in the path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncLabelsResource.clear_issue_labels(*, number: int | str, owner: str | None = None, repo: str | None = None) None
Remove all labels from an issue.
- Parameters:
number – Repository-local issue number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncLabelsResource.replace_issue_labels(*, number: int | str, labels: List[str], owner: str | None = None, repo: str | None = None) List[Label]
Replace all labels on an issue.
- Parameters:
number – Repository-local issue number.
labels – Complete new label set (JSON array body).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Labels after replacement.
- async AsyncLabelsResource.list_enterprise(*, enterprise: str, search: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None, api_version: str = 'v5') List[Label]
List labels for an enterprise, optionally using a different API version.
- Parameters:
enterprise – Enterprise path or login.
search – Optional name search string.
direction – Sort direction for results.
page – Page number.
per_page – Page size.
api_version –
v5uses/api/v5/...; other values build/api/{version}/...on the same host.
- Returns:
Enterprise label definitions.
AsyncGitCode.milestones
- AsyncGitCode.milestones: AsyncMilestonesResource
Milestone endpoints exposed as
client.milestones.
- async AsyncMilestonesResource.list(*, owner: str | None = None, repo: str | None = None, **params) List[Milestone]
List milestones for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
params – Query parameters accepted by the milestones listing (state, sort, pagination, etc.).
- Returns:
Milestones.
- async AsyncMilestonesResource.get(*, number: int | str, owner: str | None = None, repo: str | None = None) Milestone
Get a single milestone.
- Parameters:
number – Milestone number in the repository.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Milestone details.
- async AsyncMilestonesResource.create(*, title: str, due_on: str, owner: str | None = None, repo: str | None = None, description: str | None = None) Milestone
Create a milestone.
- Parameters:
title – Milestone title.
due_on – Due date string in the format expected by the API (often ISO 8601).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
description – Optional description.
- Returns:
Created milestone.
- async AsyncMilestonesResource.update(*, number: int | str, title: str, due_on: str, owner: str | None = None, repo: str | None = None, description: str | None = None, state: str | None = None) Milestone
Update a milestone.
- Parameters:
number – Milestone number.
title – Updated title.
due_on – Updated due date.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
description – Updated description.
state – Milestone state such as
openorclosedper API.
- Returns:
Updated milestone.
- async AsyncMilestonesResource.delete(*, number: int | str, owner: str | None = None, repo: str | None = None) None
Delete a milestone.
- Parameters:
number – Milestone number.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
AsyncGitCode.members
- AsyncGitCode.members: AsyncMembersResource
Repository member endpoints exposed as
client.members.
- async AsyncMembersResource.add_or_update(*, username: str, owner: str | None = None, repo: str | None = None, permission: str | None = None) RepoMember
Add or update repository member permissions.
- Parameters:
username – Collaborator login.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
permission – Permission string (for example
pull,push,adminper GitCode API).
- Returns:
Collaborator record.
- async AsyncMembersResource.remove(*, username: str, owner: str | None = None, repo: str | None = None) None
Remove a repository member.
- Parameters:
username – Collaborator login to remove.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncMembersResource.list(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[RepoCollaborator]
List repository members (collaborators).
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Collaborators with permission metadata.
- async AsyncMembersResource.get(*, username: str, owner: str | None = None, repo: str | None = None) RepositoryCollaboratorCheck
Check whether a user is a repository member.
- Parameters:
username – User login to look up.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Membership payload (typically includes whether the user is a collaborator).
- async AsyncMembersResource.get_permission(*, username: str, owner: str | None = None, repo: str | None = None) RepoMemberPermission
Get repository member permissions.
- Parameters:
username – Collaborator login.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Effective permission for the user on the repository.
Account and discovery resources
AsyncGitCode.users
- AsyncGitCode.users: AsyncUsersResource
User endpoints exposed as
client.users.
- async AsyncUsersResource.get(*, username: str) User
Get a user profile.
- Parameters:
username – GitCode username or login.
- Returns:
User profile details.
- async AsyncUsersResource.me() User
Get the profile of the authenticated user.
- Returns:
Authorized user profile.
- async AsyncUsersResource.list_emails() List[Email]
List email addresses for the authenticated user.
- Returns:
Email records associated with the current account.
- async AsyncUsersResource.list_events(*, username: str, year: str | None = None, next: str | None = None) UserEventsResponse
List activity events for a user.
- Parameters:
username – GitCode username or login (path segment, see User API).
year – Optional start year filter (query
year, e.g.2024per documentation).next – Optional end date / pagination cursor (query
next; often an ISO timestamp from a prior page).
- Returns:
Event payload grouped by date.
- async AsyncUsersResource.list_repos(*, username: str, **params) List[Repository]
List public repositories owned by a user.
Supported filters follow the user repository API documentation, such as
type,sort,direction,page, andper_page.- Parameters:
username – GitCode username or login.
params – Query parameters accepted by the REST endpoint.
- Returns:
Matching repositories.
- async AsyncUsersResource.create_key(*, key: str, title: str) PublicKey
Add a public SSH key for the authenticated user.
- Parameters:
key – Public key material.
title – Human-readable key name.
- Returns:
Created key metadata.
- async AsyncUsersResource.list_keys(*, page: int | None = None, per_page: int | None = None) List[APIObject]
List public SSH keys for the authenticated user.
- Parameters:
page – Page number.
per_page – Page size.
- Returns:
Public key records.
- async AsyncUsersResource.delete_key(*, key_id: int | str) None
Delete a public SSH key.
- Parameters:
key_id – Public key identifier.
- async AsyncUsersResource.get_key(*, key_id: int | str) PublicKey
Get a single public SSH key.
- Parameters:
key_id – Public key identifier.
- Returns:
Public key metadata.
- async AsyncUsersResource.get_namespace(*, path: str) Namespace
Resolve namespace information for the authenticated user.
- Parameters:
path – Namespace path to look up.
- Returns:
Namespace details.
- async AsyncUsersResource.list_starred(*, sort: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List repositories starred by the authenticated user.
- Parameters:
sort – Sort field such as
createdorupdated.direction – Sort direction, usually
ascordesc.page – Page number.
per_page – Page size.
- Returns:
Starred repositories.
AsyncGitCode.orgs
- AsyncGitCode.orgs: AsyncOrgsResource
Organization endpoints exposed as
client.orgs.
- async AsyncOrgsResource.list_for_user(*, username: str, page: int | None = None, per_page: int | None = None) List[OrganizationSummary]
List organizations for a user.
- Parameters:
username – GitCode username or login.
page – Page number.
per_page – Page size.
- Returns:
Organizations the user belongs to.
- async AsyncOrgsResource.list_authenticated(*, page: int | None = None, per_page: int | None = None, admin: bool | None = None) List[OrganizationSummary]
List organizations for the authenticated user.
- Parameters:
page – Page number.
per_page – Page size.
admin – Optional admin-only filter.
- Returns:
Organizations visible to the authorized user.
- async AsyncOrgsResource.get_member(*, org: str, username: str) OrganizationMembership
Get an organization member profile.
- Parameters:
org – Organization path or login.
username – Member username or login.
- Returns:
Organization membership details.
- async AsyncOrgsResource.get(*, org: str) Organization
Get an organization.
- Parameters:
org – Organization path or login.
- Returns:
Organization details.
- async AsyncOrgsResource.list_repos(*, org: str, type: str | None = None, page: int | None = None, per_page: int | None = None) List[Repository]
List repositories for an organization.
- Parameters:
org – Organization path or login.
type – Repository type filter such as
all,public, orprivate.page – Page number.
per_page – Page size.
- Returns:
Matching repositories.
- async AsyncOrgsResource.create_repo(*, org: str, name: str, **payload) Repository
Create an organization repository.
Additional payload fields match the organization repository creation endpoint, such as
description,homepage,private,public,auto_init, anddefault_branch.- Parameters:
org – Organization path or login.
name – Repository name.
payload – Additional repository creation fields.
- Returns:
Created repository metadata.
- async AsyncOrgsResource.get_enterprise_member(*, enterprise: str, username: str) EnterpriseMember
Get a member profile for an enterprise.
- Parameters:
enterprise – Enterprise path or login.
username – Member username or login.
- Returns:
Enterprise membership details.
- async AsyncOrgsResource.get_membership(*, org: str) OrganizationMembership
Get the authenticated user’s membership in an organization.
- Parameters:
org – Organization path or login.
- Returns:
Membership details for the current user.
- async AsyncOrgsResource.list_members(*, org: str, page: int | None = None, per_page: int | None = None, role: str | None = None) List[User]
List members of an organization.
- Parameters:
org – Organization path or login.
page – Page number.
per_page – Page size.
role – Optional role filter such as
all,admin, ormember.
- Returns:
Organization members.
- async AsyncOrgsResource.list_enterprise_members(*, enterprise: str, page: int | None = None, per_page: int | None = None, role: str | None = None) List[EnterpriseMember]
List members of an enterprise.
- Parameters:
enterprise – Enterprise path or login.
page – Page number.
per_page – Page size.
role – Optional role filter.
- Returns:
Enterprise members.
- async AsyncOrgsResource.remove_member(*, org: str, username: str) EmptyResponse
Remove a member from an organization.
- Parameters:
org – Organization path or login.
username – Member username or login.
- Returns:
API response payload, if any.
- async AsyncOrgsResource.list_followers(*, owner: str, page: int | None = None, per_page: int | None = None) List[User]
List followers of an organization.
- Parameters:
owner – Organization path.
page – Page number.
per_page – Page size.
- Returns:
Followers of the organization.
- async AsyncOrgsResource.get_issue_extend_settings(*, org: str) List[APIObject]
Get extended issue type and status settings for an organization.
- Parameters:
org – Organization path or login.
- Returns:
Extended issue configuration entries.
- async AsyncOrgsResource.invite_member(*, org: str, username: str, permission: str | None = None, role_id: str | None = None) User
Invite a user to an organization.
- Parameters:
org – Organization path or login.
username – Member username or login.
permission – Permission level such as
pull,push, oradmin.role_id – Custom role identifier when using a customized permission.
- Returns:
Invited user information with permissions.
- async AsyncOrgsResource.update_enterprise_member(*, enterprise: str, username: str, role: str) EnterpriseMember
Update the role of an enterprise member.
- Parameters:
enterprise – Enterprise path or login.
username – Member username or login.
role – Enterprise role such as
viewer,developer, oradmin.
- Returns:
Updated enterprise membership.
- async AsyncOrgsResource.update(*, org: str, **payload) Organization
Update organization metadata.
- Parameters:
org – Organization path or login.
payload – Updatable fields such as
name,email, ordescription.
- Returns:
Updated organization details.
- async AsyncOrgsResource.leave(*, org: str) None
Leave an organization as the authenticated user.
- Parameters:
org – Organization path or login.
AsyncGitCode.search
- AsyncGitCode.search: AsyncSearchResource
Search endpoints exposed as
client.search.
- async AsyncSearchResource.users(*, q: str, **params) List[SearchUser]
Search users.
- Parameters:
q – Search keywords (required).
params – Optional query parameters merged into the request, such as
page,per_page,sort, andorder(same meanings asSearchResource.users()).
- Returns:
Matching user search results.
- async AsyncSearchResource.issues(*, q: str, **params) List[SearchIssue]
Search issues.
- Parameters:
q – Search keywords (required).
params – Optional query parameters merged into the request, such as
page,per_page,sort,order,repo, andstate(seeSearchResource.issues()).
- Returns:
Matching issue search results.
- async AsyncSearchResource.repositories(*, q: str, **params) List[SearchRepository]
Search repositories.
- Parameters:
q – Search keywords (required).
params – Optional query parameters merged into the request, such as
page,per_page,sort,order,owner,fork, andlanguage(seeSearchResource.repositories()).
- Returns:
Matching repository search results.
AsyncGitCode.oauth
- AsyncGitCode.oauth: AsyncOAuthResource
OAuth helper endpoints exposed as
client.oauth.
- AsyncOAuthResource.build_authorize_url(*, client_id: str, redirect_uri: str, scope: str | None = None, state: str | None = None, response_type: str = 'code') str
Build the GitCode OAuth authorization URL.
- Parameters:
client_id – OAuth application client ID.
redirect_uri – Registered redirect URI.
scope – Optional OAuth scopes.
state – Optional CSRF protection value.
response_type – OAuth response type, defaults to
"code".
- Returns:
Browser URL for the authorization step.
- async AsyncOAuthResource.exchange_token(*, code: str, client_id: str, client_secret: str) OAuthToken
Exchange an authorization code for an OAuth token.
- Parameters:
code – Authorization code returned by GitCode.
client_id – OAuth application client ID.
client_secret – OAuth application client secret.
- Returns:
OAuth access token payload.
- async AsyncOAuthResource.refresh_token(*, refresh_token: str) OAuthToken
Refresh an OAuth token.
- Parameters:
refresh_token – Refresh token previously issued by GitCode.
- Returns:
Refreshed OAuth token payload.
Miscellaneous repository resources
AsyncGitCode.releases
- AsyncGitCode.releases: AsyncReleasesResource
Release endpoints exposed as
client.releases.
- async AsyncReleasesResource.create(*, tag: str, name: str, body: str, owner: str | None = None, repo: str | None = None, target_commitish: str | None = None, release_status: str | None = None) Release
Create a repository release.
- Parameters:
tag – Tag name for the release.
name – Release title.
body – Release description.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
target_commitish – Branch name or commit SHA for creating a missing tag.
release_status – Release status, such as
preorlatest.
- Returns:
Created release payload.
- async AsyncReleasesResource.update(*, tag: str, name: str, body: str, owner: str | None = None, repo: str | None = None, release_status: str | None = None) Release
Update a repository release.
- Parameters:
tag – Tag name in the release URL path.
name – Release name.
body – Release description.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
release_status – Release status, such as
preorlatest.
- Returns:
Updated release payload.
- async AsyncReleasesResource.get_upload_url(*, tag: str, file_name: str, owner: str | None = None, repo: str | None = None) ReleaseUploadURL
Get a pre-signed URL for uploading a release attachment.
- Parameters:
tag – Tag name in the release URL path.
file_name – Attachment file name to upload.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Upload URL and required headers.
- async AsyncReleasesResource.upload(*, tag: str, file_name: str, content: bytes | str, owner: str | None = None, repo: str | None = None, upload_timeout: float | None = 300.0) None
Upload a release attachment through the pre-signed upload URL.
- Parameters:
tag – Tag name in the release URL path.
file_name – Attachment file name to upload.
content – Attachment bytes, or a local file path to read as bytes.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
upload_timeout – Timeout for upload operation. Default to 300 (5 minutes).
- async AsyncReleasesResource.get_by_tag(*, tag: str, owner: str | None = None, repo: str | None = None) Release
Get a repository release by tag name.
- Parameters:
tag – Git tag the release is attached to.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Release metadata for that tag.
- async AsyncReleasesResource.list(*, owner: str | None = None, repo: str | None = None, direction: str | None = None, page: int | None = None, per_page: int | None = None) List[Release]
List releases for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
direction – Sort direction, for example
ascordesc.page – Page number.
per_page – Page size, up to 100.
- Returns:
Releases ordered as returned by the API.
- async AsyncReleasesResource.get_latest(*, owner: str | None = None, repo: str | None = None, type: str | None = None) Release
Get the latest repository release.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
type – Selection type, either
updatedorlatest.
- Returns:
Latest release metadata.
- async AsyncReleasesResource.get(*, tag: str, owner: str | None = None, repo: str | None = None, temp_download_url: bool | str | None = None) Release
Get a repository release by tag path.
- Parameters:
tag – Tag name in the release URL path.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
temp_download_url – Whether to return temporary source package and attachment URLs.
- Returns:
Release metadata.
- async AsyncReleasesResource.download_attachment(*, tag: str, file_name: str, owner: str | None = None, repo: str | None = None) bytes
Download a release attachment as bytes.
- Parameters:
tag – Tag name in the release URL path.
file_name – Attachment file name.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Attachment bytes.
AsyncGitCode.webhooks
- AsyncGitCode.webhooks: AsyncWebhooksResource
Webhook endpoints exposed as
client.webhooks.
- async AsyncWebhooksResource.list(*, owner: str | None = None, repo: str | None = None, page: int | None = None, per_page: int | None = None) List[Webhook]
List webhooks for a repository.
- Parameters:
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
page – Page number.
per_page – Page size.
- Returns:
Hook configurations.
- async AsyncWebhooksResource.create(*, url: str, owner: str | None = None, repo: str | None = None, **payload) Webhook
Create a repository webhook.
- Parameters:
url – Payload URL GitCode should POST events to.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
payload – Additional fields from the Webhooks API (events list, secret, content type, etc.).
- Returns:
Created webhook.
- async AsyncWebhooksResource.get(*, hook_id: int | str, owner: str | None = None, repo: str | None = None) Webhook
Get a repository webhook by identifier.
- Parameters:
hook_id – Webhook id from the API.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- Returns:
Webhook configuration.
- async AsyncWebhooksResource.update(*, hook_id: int | str, url: str, owner: str | None = None, repo: str | None = None, **payload) Webhook
Update a repository webhook.
- Parameters:
hook_id – Webhook id.
url – New payload URL (merged into the JSON body).
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
payload – Other mutable webhook fields accepted by the API.
- Returns:
Updated webhook.
- async AsyncWebhooksResource.delete(*, hook_id: int | str, owner: str | None = None, repo: str | None = None) None
Delete a repository webhook.
- Parameters:
hook_id – Webhook id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.
- async AsyncWebhooksResource.test(*, hook_id: int | str, owner: str | None = None, repo: str | None = None) None
Send a test delivery for a repository webhook.
- Parameters:
hook_id – Webhook id.
owner – Repository owner path. Uses the client default when omitted.
repo – Repository path. Uses the client default when omitted.