pub struct Client { /* private fields */ }Expand description
Client for Nucel API
Nucel Platform REST API v1. Authenticate via Authorization: Bearer <personal-access-token>.
Version: 1.0.0
Implementations§
Source§impl Client
impl Client
Sourcepub fn new(baseurl: &str) -> Self
pub fn new(baseurl: &str) -> Self
Create a new client.
baseurl is the base URL provided to the internal
reqwest::Client, and should include a scheme and hostname,
as well as port and a path stem if applicable.
Sourcepub fn new_with_client(baseurl: &str, client: Client) -> Self
pub fn new_with_client(baseurl: &str, client: Client) -> Self
Construct a new client with an existing reqwest::Client,
allowing more control over its configuration.
baseurl is the base URL provided to the internal
reqwest::Client, and should include a scheme and hostname,
as well as port and a path stem if applicable.
Sourcepub fn api_version(&self) -> &'static str
pub fn api_version(&self) -> &'static str
Get the version of this API.
This string is pulled directly from the source OpenAPI document and may be in any format the API selects.
Source§impl Client
impl Client
Sourcepub fn runner_complete(&self) -> RunnerComplete<'_>
pub fn runner_complete(&self) -> RunnerComplete<'_>
POST /api/v1/ci/runner/complete
Sends a POST request to /api/v1/ci/runner/complete
let response = client.runner_complete()
.body(body)
.send()
.await;Sourcepub fn runner_logs(&self) -> RunnerLogs<'_>
pub fn runner_logs(&self) -> RunnerLogs<'_>
POST /api/v1/ci/runner/logs
Sends a POST request to /api/v1/ci/runner/logs
let response = client.runner_logs()
.body(body)
.send()
.await;Sourcepub fn runner_start(&self) -> RunnerStart<'_>
pub fn runner_start(&self) -> RunnerStart<'_>
POST /api/v1/ci/runner/start
Sends a POST request to /api/v1/ci/runner/start
let response = client.runner_start()
.body(body)
.send()
.await;Sourcepub fn runner_step(&self) -> RunnerStep<'_>
pub fn runner_step(&self) -> RunnerStep<'_>
POST /api/v1/ci/runner/step
Sends a POST request to /api/v1/ci/runner/step
let response = client.runner_step()
.body(body)
.send()
.await;Sourcepub fn list_user_orgs(&self) -> ListUserOrgs<'_>
pub fn list_user_orgs(&self) -> ListUserOrgs<'_>
GET /api/v1/orgs
Sends a GET request to /api/v1/orgs
let response = client.list_user_orgs()
.send()
.await;Sourcepub fn list_repos(&self) -> ListRepos<'_>
pub fn list_repos(&self) -> ListRepos<'_>
GET /api/v1/orgs/:owner/repos
Sends a GET request to /api/v1/orgs/{owner}/repos
Arguments:
owner: Organization slugpage: Page number (default: 1)per_page: Items per page (default: 20, max: 100)
let response = client.list_repos()
.owner(owner)
.page(page)
.per_page(per_page)
.send()
.await;Sourcepub fn create_repo_handler(&self) -> CreateRepoHandler<'_>
pub fn create_repo_handler(&self) -> CreateRepoHandler<'_>
POST /api/v1/orgs/:owner/repos
Sends a POST request to /api/v1/orgs/{owner}/repos
Arguments:
owner: Organization slugbody
let response = client.create_repo_handler()
.owner(owner)
.body(body)
.send()
.await;Sourcepub fn get_org(&self) -> GetOrg<'_>
pub fn get_org(&self) -> GetOrg<'_>
GET /api/v1/orgs/:slug
Sends a GET request to /api/v1/orgs/{slug}
Arguments:
slug: Organization slug
let response = client.get_org()
.slug(slug)
.send()
.await;Sourcepub fn list_members(&self) -> ListMembers<'_>
pub fn list_members(&self) -> ListMembers<'_>
GET /api/v1/orgs/:slug/members
Sends a GET request to /api/v1/orgs/{slug}/members
Arguments:
slug: Organization slug
let response = client.list_members()
.slug(slug)
.send()
.await;Sourcepub fn get_repo(&self) -> GetRepo<'_>
pub fn get_repo(&self) -> GetRepo<'_>
GET /api/v1/repos/:owner/:repo
Sends a GET request to /api/v1/repos/{owner}/{repo}
Arguments:
owner: Organization slugrepo: Repository slug
let response = client.get_repo()
.owner(owner)
.repo(repo)
.send()
.await;Sourcepub fn get_blob(&self) -> GetBlob<'_>
pub fn get_blob(&self) -> GetBlob<'_>
GET /api/v1/repos/:owner/:repo/blob/:path?ref=main
Sends a GET request to /api/v1/repos/{owner}/{repo}/blob/{path}
Arguments:
ownerrepopath: Path to file (URL-encoded)ref_: Git ref (default: HEAD)
let response = client.get_blob()
.owner(owner)
.repo(repo)
.path(path)
.ref_(ref_)
.send()
.await;Sourcepub fn list_branches(&self) -> ListBranches<'_>
pub fn list_branches(&self) -> ListBranches<'_>
GET /api/v1/repos/:owner/:repo/branches
Sends a GET request to /api/v1/repos/{owner}/{repo}/branches
Arguments:
owner: Organization slugrepo: Repository slug
let response = client.list_branches()
.owner(owner)
.repo(repo)
.send()
.await;Sourcepub fn create_branch(&self) -> CreateBranch<'_>
pub fn create_branch(&self) -> CreateBranch<'_>
POST /api/v1/repos/:owner/:repo/branches
Sends a POST request to /api/v1/repos/{owner}/{repo}/branches
Arguments:
owner: Organization slugrepo: Repository slugbody
let response = client.create_branch()
.owner(owner)
.repo(repo)
.body(body)
.send()
.await;Sourcepub fn get_commit_status(&self) -> GetCommitStatus<'_>
pub fn get_commit_status(&self) -> GetCommitStatus<'_>
GET /api/v1/repos/:owner/:repo/commits/:sha/status
Sends a GET request to /api/v1/repos/{owner}/{repo}/commits/{sha}/status
Arguments:
owner: Organization slugrepo: Repository slugsha: Commit SHA
let response = client.get_commit_status()
.owner(owner)
.repo(repo)
.sha(sha)
.send()
.await;Sourcepub fn compare_branches(&self) -> CompareBranches<'_>
pub fn compare_branches(&self) -> CompareBranches<'_>
GET /api/v1/repos/:owner/:repo/compare/:spec (spec = “base…head”)
Sends a GET request to /api/v1/repos/{owner}/{repo}/compare/{spec}
Arguments:
ownerrepospec: Compare spec in the form ‘base…head’
let response = client.compare_branches()
.owner(owner)
.repo(repo)
.spec(spec)
.send()
.await;Sourcepub fn list_issues(&self) -> ListIssues<'_>
pub fn list_issues(&self) -> ListIssues<'_>
GET /api/v1/repos/:owner/:repo/issues
Sends a GET request to /api/v1/repos/{owner}/{repo}/issues
Arguments:
owner: Organization slugrepo: Repository slugpage: Page numberper_page: Items per page (max 100)state: Filter by state: open, closed
let response = client.list_issues()
.owner(owner)
.repo(repo)
.page(page)
.per_page(per_page)
.state(state)
.send()
.await;Sourcepub fn create_issue(&self) -> CreateIssue<'_>
pub fn create_issue(&self) -> CreateIssue<'_>
POST /api/v1/repos/:owner/:repo/issues
Sends a POST request to /api/v1/repos/{owner}/{repo}/issues
Arguments:
owner: Organization slugrepo: Repository slugbody
let response = client.create_issue()
.owner(owner)
.repo(repo)
.body(body)
.send()
.await;Sourcepub fn get_issue(&self) -> GetIssue<'_>
pub fn get_issue(&self) -> GetIssue<'_>
GET /api/v1/repos/:owner/:repo/issues/:number
Sends a GET request to /api/v1/repos/{owner}/{repo}/issues/{number}
Arguments:
owner: Organization slugrepo: Repository slugnumber: Issue number
let response = client.get_issue()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn close_issue(&self) -> CloseIssue<'_>
pub fn close_issue(&self) -> CloseIssue<'_>
POST /api/v1/repos/:owner/:repo/issues/:number/close
Sends a POST request to /api/v1/repos/{owner}/{repo}/issues/{number}/close
Arguments:
ownerreponumber: Issue number
let response = client.close_issue()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn add_comment(&self) -> AddComment<'_>
pub fn add_comment(&self) -> AddComment<'_>
POST /api/v1/repos/:owner/:repo/issues/:number/comments
Sends a POST request to /api/v1/repos/{owner}/{repo}/issues/{number}/comments
Arguments:
ownerreponumber: Issue numberbody
let response = client.add_comment()
.owner(owner)
.repo(repo)
.number(number)
.body(body)
.send()
.await;Sourcepub fn update_labels(&self) -> UpdateLabels<'_>
pub fn update_labels(&self) -> UpdateLabels<'_>
PUT /api/v1/repos/:owner/:repo/issues/:number/labels
Sends a PUT request to /api/v1/repos/{owner}/{repo}/issues/{number}/labels
Arguments:
ownerreponumber: Issue numberbody
let response = client.update_labels()
.owner(owner)
.repo(repo)
.number(number)
.body(body)
.send()
.await;Sourcepub fn remove_label(&self) -> RemoveLabel<'_>
pub fn remove_label(&self) -> RemoveLabel<'_>
DELETE /api/v1/repos/:owner/:repo/issues/:number/labels/:label
Sends a DELETE request to /api/v1/repos/{owner}/{repo}/issues/{number}/labels/{label}
Arguments:
ownerreponumber: Issue numberlabel: Label name
let response = client.remove_label()
.owner(owner)
.repo(repo)
.number(number)
.label(label)
.send()
.await;Sourcepub fn list_labels(&self) -> ListLabels<'_>
pub fn list_labels(&self) -> ListLabels<'_>
GET /api/v1/repos/:owner/:repo/labels
Sends a GET request to /api/v1/repos/{owner}/{repo}/labels
let response = client.list_labels()
.owner(owner)
.repo(repo)
.send()
.await;Sourcepub fn create_label(&self) -> CreateLabel<'_>
pub fn create_label(&self) -> CreateLabel<'_>
POST /api/v1/repos/:owner/:repo/labels
Sends a POST request to /api/v1/repos/{owner}/{repo}/labels
let response = client.create_label()
.owner(owner)
.repo(repo)
.body(body)
.send()
.await;Sourcepub fn list_pipelines(&self) -> ListPipelines<'_>
pub fn list_pipelines(&self) -> ListPipelines<'_>
GET /api/v1/repos/:owner/:repo/pipelines
Sends a GET request to /api/v1/repos/{owner}/{repo}/pipelines
Arguments:
owner: Organization slugrepo: Repository slugpage: Page number (default: 1)per_page: Items per page (default: 20, max: 100)ref_: Filter by git ref / branch
let response = client.list_pipelines()
.owner(owner)
.repo(repo)
.page(page)
.per_page(per_page)
.ref_(ref_)
.send()
.await;Sourcepub fn get_pipeline(&self) -> GetPipeline<'_>
pub fn get_pipeline(&self) -> GetPipeline<'_>
GET /api/v1/repos/:owner/:repo/pipelines/:number
Sends a GET request to /api/v1/repos/{owner}/{repo}/pipelines/{number}
Arguments:
owner: Organization slugrepo: Repository slugnumber: Pipeline number
let response = client.get_pipeline()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn cancel_pipeline(&self) -> CancelPipeline<'_>
pub fn cancel_pipeline(&self) -> CancelPipeline<'_>
POST /api/v1/repos/:owner/:repo/pipelines/:number/cancel
Sends a POST request to /api/v1/repos/{owner}/{repo}/pipelines/{number}/cancel
let response = client.cancel_pipeline()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn get_pipeline_logs(&self) -> GetPipelineLogs<'_>
pub fn get_pipeline_logs(&self) -> GetPipelineLogs<'_>
GET /api/v1/repos/:owner/:repo/pipelines/:number/logs
Sends a GET request to /api/v1/repos/{owner}/{repo}/pipelines/{number}/logs
let response = client.get_pipeline_logs()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn list_pulls(&self) -> ListPulls<'_>
pub fn list_pulls(&self) -> ListPulls<'_>
GET /api/v1/repos/:owner/:repo/pulls
Sends a GET request to /api/v1/repos/{owner}/{repo}/pulls
Arguments:
owner: Organization slugrepo: Repository slugpage: Page number (default: 1)per_page: Items per page (default: 20, max: 100)
let response = client.list_pulls()
.owner(owner)
.repo(repo)
.page(page)
.per_page(per_page)
.send()
.await;Sourcepub fn create_pull(&self) -> CreatePull<'_>
pub fn create_pull(&self) -> CreatePull<'_>
POST /api/v1/repos/:owner/:repo/pulls
Sends a POST request to /api/v1/repos/{owner}/{repo}/pulls
let response = client.create_pull()
.owner(owner)
.repo(repo)
.body(body)
.send()
.await;Sourcepub fn get_pull(&self) -> GetPull<'_>
pub fn get_pull(&self) -> GetPull<'_>
GET /api/v1/repos/:owner/:repo/pulls/:number
Sends a GET request to /api/v1/repos/{owner}/{repo}/pulls/{number}
Arguments:
owner: Organization slugrepo: Repository slugnumber: Pull request number
let response = client.get_pull()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn update_pull(&self) -> UpdatePull<'_>
pub fn update_pull(&self) -> UpdatePull<'_>
PUT /api/v1/repos/:owner/:repo/pulls/:number
Sends a PUT request to /api/v1/repos/{owner}/{repo}/pulls/{number}
Arguments:
ownerreponumber: Pull request numberbody
let response = client.update_pull()
.owner(owner)
.repo(repo)
.number(number)
.body(body)
.send()
.await;Sourcepub fn add_pr_comment(&self) -> AddPrComment<'_>
pub fn add_pr_comment(&self) -> AddPrComment<'_>
POST /api/v1/repos/:owner/:repo/pulls/:number/comments
Sends a POST request to /api/v1/repos/{owner}/{repo}/pulls/{number}/comments
let response = client.add_pr_comment()
.owner(owner)
.repo(repo)
.number(number)
.body(body)
.send()
.await;Sourcepub fn get_pull_diff(&self) -> GetPullDiff<'_>
pub fn get_pull_diff(&self) -> GetPullDiff<'_>
GET /api/v1/repos/:owner/:repo/pulls/:number/diff
Sends a GET request to /api/v1/repos/{owner}/{repo}/pulls/{number}/diff
let response = client.get_pull_diff()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn list_pull_files(&self) -> ListPullFiles<'_>
pub fn list_pull_files(&self) -> ListPullFiles<'_>
GET /api/v1/repos/:owner/:repo/pulls/:number/files
Sends a GET request to /api/v1/repos/{owner}/{repo}/pulls/{number}/files
let response = client.list_pull_files()
.owner(owner)
.repo(repo)
.number(number)
.send()
.await;Sourcepub fn merge_pull(&self) -> MergePull<'_>
pub fn merge_pull(&self) -> MergePull<'_>
POST /api/v1/repos/:owner/:repo/pulls/:number/merge
Sends a POST request to /api/v1/repos/{owner}/{repo}/pulls/{number}/merge
Arguments:
ownerreponumber: Pull request numberbody
let response = client.merge_pull()
.owner(owner)
.repo(repo)
.number(number)
.body(body)
.send()
.await;Sourcepub fn submit_review(&self) -> SubmitReview<'_>
pub fn submit_review(&self) -> SubmitReview<'_>
POST /api/v1/repos/:owner/:repo/pulls/:number/reviews
Sends a POST request to /api/v1/repos/{owner}/{repo}/pulls/{number}/reviews
let response = client.submit_review()
.owner(owner)
.repo(repo)
.number(number)
.body(body)
.send()
.await;Sourcepub fn get_raw(&self) -> GetRaw<'_>
pub fn get_raw(&self) -> GetRaw<'_>
GET /api/v1/repos/:owner/:repo/raw/:path?ref=main
Sends a GET request to /api/v1/repos/{owner}/{repo}/raw/{path}
Arguments:
ownerrepopath: Path to fileref_: Git ref
let response = client.get_raw()
.owner(owner)
.repo(repo)
.path(path)
.ref_(ref_)
.send()
.await;Sourcepub fn list_releases(&self) -> ListReleases<'_>
pub fn list_releases(&self) -> ListReleases<'_>
GET /api/v1/repos/:owner/:repo/releases
Sends a GET request to /api/v1/repos/{owner}/{repo}/releases
let response = client.list_releases()
.owner(owner)
.repo(repo)
.send()
.await;Sourcepub fn create_release(&self) -> CreateRelease<'_>
pub fn create_release(&self) -> CreateRelease<'_>
POST /api/v1/repos/:owner/:repo/releases
Sends a POST request to /api/v1/repos/{owner}/{repo}/releases
let response = client.create_release()
.owner(owner)
.repo(repo)
.body(body)
.send()
.await;Sourcepub fn get_release(&self) -> GetRelease<'_>
pub fn get_release(&self) -> GetRelease<'_>
GET /api/v1/repos/:owner/:repo/releases/:tag
Sends a GET request to /api/v1/repos/{owner}/{repo}/releases/{tag}
Arguments:
ownerrepotag: Release tag name
let response = client.get_release()
.owner(owner)
.repo(repo)
.tag(tag)
.send()
.await;Sourcepub fn delete_release(&self) -> DeleteRelease<'_>
pub fn delete_release(&self) -> DeleteRelease<'_>
DELETE /api/v1/repos/:owner/:repo/releases/:tag
Sends a DELETE request to /api/v1/repos/{owner}/{repo}/releases/{tag}
let response = client.delete_release()
.owner(owner)
.repo(repo)
.tag(tag)
.send()
.await;Sourcepub fn get_tree(&self) -> GetTree<'_>
pub fn get_tree(&self) -> GetTree<'_>
Sends a GET request to /api/v1/repos/{owner}/{repo}/tree
Arguments:
ownerrepopath: Subdirectory pathref_: Git ref (default: HEAD)
let response = client.get_tree()
.owner(owner)
.repo(repo)
.path(path)
.ref_(ref_)
.send()
.await;Sourcepub fn list_webhooks(&self) -> ListWebhooks<'_>
pub fn list_webhooks(&self) -> ListWebhooks<'_>
GET /api/v1/repos/:owner/:repo/webhooks
Sends a GET request to /api/v1/repos/{owner}/{repo}/webhooks
let response = client.list_webhooks()
.owner(owner)
.repo(repo)
.send()
.await;Sourcepub fn create_webhook(&self) -> CreateWebhook<'_>
pub fn create_webhook(&self) -> CreateWebhook<'_>
POST /api/v1/repos/:owner/:repo/webhooks
Sends a POST request to /api/v1/repos/{owner}/{repo}/webhooks
let response = client.create_webhook()
.owner(owner)
.repo(repo)
.body(body)
.send()
.await;Sourcepub fn delete_webhook(&self) -> DeleteWebhook<'_>
pub fn delete_webhook(&self) -> DeleteWebhook<'_>
DELETE /api/v1/repos/:owner/:repo/webhooks/:id
Sends a DELETE request to /api/v1/repos/{owner}/{repo}/webhooks/{id}
Arguments:
ownerrepoid: Webhook ID
let response = client.delete_webhook()
.owner(owner)
.repo(repo)
.id(id)
.send()
.await;Sourcepub fn get_current_user(&self) -> GetCurrentUser<'_>
pub fn get_current_user(&self) -> GetCurrentUser<'_>
GET /api/v1/user
Sends a GET request to /api/v1/user
let response = client.get_current_user()
.send()
.await;