auth.andert.me/schema.graphql
2023-07-29 15:09:21 +02:00

8155 lines
174 KiB
GraphQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

directive @enum(value: String) on ENUM_VALUE
directive @globalOptions(endpoint: String, operationHeaders: ObjMap, queryParams: ObjMap, queryStringOptions: ObjMap, sourceName: String) on OBJECT
directive @httpOperation(httpMethod: HTTPMethod, isBinary: Boolean, operationSpecificHeaders: ObjMap, path: String, queryParamArgMap: ObjMap, queryStringOptionsByParam: ObjMap, requestBaseBody: ObjMap) on FIELD_DEFINITION
directive @oneOf on INPUT_OBJECT | INTERFACE | OBJECT
directive @resolveRoot on FIELD_DEFINITION
directive @resolveRootField(field: String) on ARGUMENT_DEFINITION | FIELD_DEFINITION | INPUT_FIELD_DEFINITION
directive @statusCodeTypeName(statusCode: ID, typeName: String) on UNION
"""APIError is an api error with a message"""
type APIError {
message: String
url: String
}
"""
Either `null` to set no restrictions or an object with following properties
"""
input AccessRestriction_Input {
"""Array of group ids"""
groups: [String]
"""Array of user ids"""
users: [String]
}
type AccessToken_represents_an_API_access_token_ {
id: BigInt
name: String
scopes: [String]
sha1: String
token_last_eight: String
}
"""ActivityPub type"""
type ActivityPub {
_AT_context: String
}
"""
AddCollaboratorOption options when adding a user as a collaborator of a repository
"""
input AddCollaboratorOption_Input {
permission: String
}
"""AddTimeOption options for adding time to an issue"""
input AddTimeOption_Input {
created: DateTime
"""time in seconds"""
time: BigInt!
"""User who spent the time (optional)"""
user_name: String
}
type AddonConfig {
"""Memory limit in bytes. Example is 256MB"""
memory: Int
"""Swap memory limit in bytes. Example is 512MB"""
memorySwap: Int
}
input AddonConfig_Input {
"""Memory limit in bytes. Example is 256MB"""
memory: Int
"""Swap memory limit in bytes. Example is 512MB"""
memorySwap: Int
}
"""AnnotatedTag represents an annotated tag"""
type AnnotatedTag {
message: String
object: AnnotatedTagObject
sha: String
tag: String
tagger: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
url: String
verification: PayloadCommitVerification
}
"""AnnotatedTagObject contains meta information of the tag object"""
type AnnotatedTagObject {
sha: String
type: String
url: String
}
type App {
appStoreId: String
"""Time the app was installed"""
creationTime: DateTime
domain: String
error: JSON
"""FullQualifiedDomainName is essentially `subdomain`.`domain`"""
fqdn: String
health: String
iconUrl: String
id: String
installationState: String
label: String
manifest: AppManifest
portBindings: PortBindings
runState: String
"""
This is the subdomain, the app is installed on. May be an empty string if no subdomain is configured
"""
subdomain: String
tags: [JSON]
taskId: String
"""Time the app was last modified"""
ts: DateTime
}
type AppManifest {
id: String
}
input AppManifest_Input {
id: String
}
"""Attachment a generic attachment"""
type Attachment {
browser_download_url: String
created_at: DateTime
download_count: BigInt
id: BigInt
name: String
size: BigInt
uuid: String
}
type BackupConfig {
acceptSelfSignedCerts: Boolean
"""only for S3 style provider"""
accessKeyId: String
"""only for filesystem provider"""
backupFolder: String
"""only for S3 and gcs style provider"""
bucket: String
credentials: mutationInput_post_cloudron_restore_input_backupConfig_credentials
"""only for S3 style provider"""
endpoint: String
"""only for filesystem provider"""
externalDisk: Boolean
format: BackupFormat
"""
Interval for automatic backups in seconds. Must be atleast 6 hours (21600 seconds)
"""
intervalSecs: PositiveInt
"""Encyrption key. May contain a placeholder string to not leak the key"""
key: String
"""only for filesystem provider"""
noHardlinks: Boolean
"""only for S3 and gcs style provider"""
prefix: String
"""only for gcs provider"""
projectId: String
provider: mutationInput_post_cloudron_restore_input_backupConfig_provider
"""only for S3 style provider"""
region: String
"""Maximum time to keep backups in seconds (1 week is 604800 seconds)"""
retentionSecs: Int
"""only for S3 style provider"""
secretAccessKey: String
"""only for S3 style provider"""
signatureVersion: String
syncConcurrency: PositiveInt
}
input BackupConfig_Input {
acceptSelfSignedCerts: Boolean
"""only for S3 style provider"""
accessKeyId: String
"""only for filesystem provider"""
backupFolder: String
"""only for S3 and gcs style provider"""
bucket: String
credentials: mutationInput_post_cloudron_restore_input_backupConfig_credentials_Input
"""only for S3 style provider"""
endpoint: String
"""only for filesystem provider"""
externalDisk: Boolean
format: BackupFormat
"""
Interval for automatic backups in seconds. Must be atleast 6 hours (21600 seconds)
"""
intervalSecs: PositiveInt
"""Encyrption key. May contain a placeholder string to not leak the key"""
key: String
"""only for filesystem provider"""
noHardlinks: Boolean
"""only for S3 and gcs style provider"""
prefix: String
"""only for gcs provider"""
projectId: String
provider: mutationInput_post_cloudron_restore_input_backupConfig_provider
"""only for S3 style provider"""
region: String
"""Maximum time to keep backups in seconds (1 week is 604800 seconds)"""
retentionSecs: Int
"""only for S3 style provider"""
secretAccessKey: String
"""only for S3 style provider"""
signatureVersion: String
syncConcurrency: PositiveInt
}
enum BackupFormat {
rsync
targz
}
"""
The `BigInt` scalar type represents non-fractional signed whole numeric values.
"""
scalar BigInt
"""Branch represents a repository branch"""
type Branch {
commit: PayloadCommit
effective_branch_protection_name: String
enable_status_check: Boolean
name: String
protected: Boolean
required_approvals: BigInt
status_check_contexts: [String]
user_can_merge: Boolean
user_can_push: Boolean
}
"""BranchProtection represents a branch protection for a repository"""
type BranchProtection {
approvals_whitelist_teams: [String]
approvals_whitelist_username: [String]
block_on_official_review_requests: Boolean
block_on_outdated_branch: Boolean
block_on_rejected_reviews: Boolean
"""Deprecated: true"""
branch_name: String
created_at: DateTime
dismiss_stale_approvals: Boolean
enable_approvals_whitelist: Boolean
enable_merge_whitelist: Boolean
enable_push: Boolean
enable_push_whitelist: Boolean
enable_status_check: Boolean
merge_whitelist_teams: [String]
merge_whitelist_usernames: [String]
protected_file_patterns: String
push_whitelist_deploy_keys: Boolean
push_whitelist_teams: [String]
push_whitelist_usernames: [String]
require_signed_commits: Boolean
required_approvals: BigInt
rule_name: String
status_check_contexts: [String]
unprotected_file_patterns: String
updated_at: DateTime
}
"""ChangedFile store information about files affected by the pull request"""
type ChangedFile {
additions: BigInt
changes: BigInt
contents_url: String
deletions: BigInt
filename: String
html_url: String
previous_filename: String
raw_url: String
status: String
}
type CloudronNameConfig {
name: String!
}
input CloudronNameConfig_Input {
name: String! = "Cloudron"
}
"""
CombinedStatus holds the combined state of several statuses for a single commit
"""
type CombinedStatus {
commit_url: String
repository: Repository
sha: String
"""
CommitStatusState holds the state of a CommitStatus
It can be "pending", "success", "error", "failure", and "warning"
"""
state: String
statuses: [CommitStatus]
total_count: BigInt
url: String
}
"""Comment represents a comment on a commit or issue"""
type Comment {
assets: [Attachment]
body: String
created_at: DateTime
html_url: String
id: BigInt
issue_url: String
original_author: String
original_author_id: BigInt
pull_request_url: String
updated_at: DateTime
user: User
}
"""
CommitAffectedFiles store information about files affected by the commit
"""
type CommitAffectedFiles {
filename: String
}
"""
CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE
"""
input CommitDateOptions_Input {
author: DateTime
committer: DateTime
}
type CommitMeta_contains_meta_information_of_a_commit_in_terms_of_API_ {
created: DateTime
sha: String
url: String
}
"""CommitStats is statistics for a RepoCommit"""
type CommitStats {
additions: BigInt
deletions: BigInt
total: BigInt
}
"""CommitStatus holds a single status of a single Commit"""
type CommitStatus {
context: String
created_at: DateTime
creator: User
description: String
id: BigInt
"""
CommitStatusState holds the state of a CommitStatus
It can be "pending", "success", "error", "failure", and "warning"
"""
status: String
target_url: String
updated_at: DateTime
url: String
}
type CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_ {
date: String
email: EmailAddress
name: String
}
type Commit_contains_information_generated_from_a_Git_commit_ {
author: User
commit: RepoCommit_contains_information_of_a_commit_in_the_context_of_a_repository_
committer: User
created: DateTime
files: [CommitAffectedFiles]
html_url: String
parents: [CommitMeta_contains_meta_information_of_a_commit_in_terms_of_API_]
sha: String
stats: CommitStats
url: String
}
"""
ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content
"""
type ContentsResponse {
_links: FileLinksResponse
"""`content` is populated when `type` is `file`, otherwise null"""
content: String
download_url: String
"""`encoding` is populated when `type` is `file`, otherwise null"""
encoding: String
git_url: String
html_url: String
last_commit_sha: String
name: String
path: String
sha: String
size: BigInt
"""
`submodule_git_url` is populated when `type` is `submodule`, otherwise null
"""
submodule_git_url: String
"""`target` is populated when `type` is `symlink`, otherwise null"""
target: String
"""`type` will be `file`, `dir`, `symlink`, or `submodule`"""
type: String
url: String
}
"""CreateAccessTokenOption options when create access token"""
input CreateAccessTokenOption_Input {
name: String!
scopes: [String]
}
"""CreateBranchProtectionOption options for creating a branch protection"""
input CreateBranchProtectionOption_Input {
approvals_whitelist_teams: [String]
approvals_whitelist_username: [String]
block_on_official_review_requests: Boolean
block_on_outdated_branch: Boolean
block_on_rejected_reviews: Boolean
"""Deprecated: true"""
branch_name: String
dismiss_stale_approvals: Boolean
enable_approvals_whitelist: Boolean
enable_merge_whitelist: Boolean
enable_push: Boolean
enable_push_whitelist: Boolean
enable_status_check: Boolean
merge_whitelist_teams: [String]
merge_whitelist_usernames: [String]
protected_file_patterns: String
push_whitelist_deploy_keys: Boolean
push_whitelist_teams: [String]
push_whitelist_usernames: [String]
require_signed_commits: Boolean
required_approvals: BigInt
rule_name: String
status_check_contexts: [String]
unprotected_file_patterns: String
}
"""CreateBranchRepoOption options when creating a branch in a repository"""
input CreateBranchRepoOption_Input {
"""Name of the branch to create"""
new_branch_name: String!
"""Name of the old branch to create from"""
old_branch_name: String
}
"""CreateEmailOption options when creating email addresses"""
input CreateEmailOption_Input {
"""email addresses to add"""
emails: [String]
}
"""
CreateFileOptions options for creating files
Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
"""
input CreateFileOptions_Input {
author: Identity_Input
"""
branch (optional) to base this file from. if not given, the default branch is used
"""
branch: String
committer: Identity_Input
"""content must be base64 encoded"""
content: String!
dates: CommitDateOptions_Input
"""
message (optional) for the commit of this file. if not supplied, a default message will be used
"""
message: String
"""
new_branch (optional) will make a new branch from `branch` before creating the file
"""
new_branch: String
"""
Add a Signed-off-by trailer by the committer at the end of the commit log message.
"""
signoff: Boolean
}
"""CreateForkOption options for creating a fork"""
input CreateForkOption_Input {
"""name of the forked repository"""
name: String
"""organization name, if forking into an organization"""
organization: String
}
"""CreateGPGKeyOption options create user GPG key"""
input CreateGPGKeyOption_Input {
"""An armored GPG key to add"""
armored_public_key: String!
armored_signature: String
}
"""CreateHookOption options when create a hook"""
input CreateHookOption_Input {
active: Boolean
authorization_header: String
branch_filter: String
"""
CreateHookOptionConfig has all config options in it
required are "content_type" and "url" Required
"""
config: JSON!
events: [String]
type: mutationInput_adminCreateHook_input_type!
}
"""CreateIssueCommentOption options for creating a comment on an issue"""
input CreateIssueCommentOption_Input {
body: String!
}
"""CreateIssueOption options to create one issue"""
input CreateIssueOption_Input {
"""deprecated"""
assignee: String
assignees: [String]
body: String
closed: Boolean
due_date: DateTime
"""list of label ids"""
labels: [BigInt]
"""milestone id"""
milestone: BigInt
ref: String
title: String!
}
"""CreateKeyOption options when creating a key"""
input CreateKeyOption_Input {
"""An armored SSH key to add"""
key: String!
"""Describe if the key has only read access or read/write"""
read_only: Boolean
"""Title of the key to add"""
title: String!
}
"""CreateLabelOption options for creating a label"""
input CreateLabelOption_Input {
color: String!
description: String
exclusive: Boolean
name: String!
}
"""CreateMilestoneOption options for creating a milestone"""
input CreateMilestoneOption_Input {
description: String
due_on: DateTime
state: mutationInput_issueCreateMilestone_input_state
title: String
}
"""
CreateOAuth2ApplicationOptions holds options to create an oauth2 application
"""
input CreateOAuth2ApplicationOptions_Input {
confidential_client: Boolean
name: String
redirect_uris: [String]
}
"""CreateOrgOption options for creating an organization"""
input CreateOrgOption_Input {
description: String
full_name: String
location: String
repo_admin_change_team_access: Boolean
username: String!
visibility: mutationInput_adminCreateOrg_input_visibility
website: String
}
"""CreatePullRequestOption options when creating a pull request"""
input CreatePullRequestOption_Input {
assignee: String
assignees: [String]
base: String
body: String
due_date: DateTime
head: String
labels: [BigInt]
milestone: BigInt
title: String
}
"""CreatePullReviewComment represent a review comment for creation api"""
input CreatePullReviewComment_Input {
body: String
"""if comment to new file line or 0"""
new_position: BigInt
"""if comment to old file line or 0"""
old_position: BigInt
"""the tree path"""
path: String
}
"""CreatePullReviewOptions are options to create a pull review"""
input CreatePullReviewOptions_Input {
body: String
comments: [CreatePullReviewComment_Input]
commit_id: String
"""ReviewStateType review state type"""
event: String
}
input CreatePushMirrorOption_represents_need_information_to_create_a_push_mirror_of_a_repository__Input {
interval: String
remote_address: String
remote_password: String
remote_username: String
sync_on_commit: Boolean
}
"""CreateReleaseOption options when creating a release"""
input CreateReleaseOption_Input {
body: String
draft: Boolean
name: String
prerelease: Boolean
tag_name: String!
target_commitish: String
}
"""CreateRepoOption options when creating repository"""
input CreateRepoOption_Input {
"""Whether the repository should be auto-initialized?"""
auto_init: Boolean
"""
DefaultBranch of the repository (used when initializes and in template)
"""
default_branch: String
"""Description of the repository to create"""
description: String
"""Gitignores to use"""
gitignores: String
"""Label-Set to use"""
issue_labels: String
"""License to use"""
license: String
"""Name of the repository to create"""
name: String!
"""Whether the repository is private"""
private: Boolean
"""Readme of the repository to create"""
readme: String
"""Whether the repository is template"""
template: Boolean
trust_model: mutationInput_adminCreateRepo_input_trust_model
}
"""
CreateStatusOption holds the information needed to create a new CommitStatus for a Commit
"""
input CreateStatusOption_Input {
context: String
description: String
"""
CommitStatusState holds the state of a CommitStatus
It can be "pending", "success", "error", "failure", and "warning"
"""
state: String
target_url: String
}
"""CreateTagOption options when creating a tag"""
input CreateTagOption_Input {
message: String
tag_name: String!
target: String
}
"""CreateTeamOption options for creating a team"""
input CreateTeamOption_Input {
can_create_org_repo: Boolean
description: String
includes_all_repositories: Boolean
name: String!
permission: mutationInput_orgCreateTeam_input_permission
units: [String]
units_map: mutationInput_orgCreateTeam_input_units_map_Input
}
"""CreateUserOption create user options"""
input CreateUserOption_Input {
"""
For explicitly setting the user creation timestamp. Useful when users are
migrated from other systems. When omitted, the user's creation timestamp
will be set to "now".
"""
created_at: DateTime
email: EmailAddress!
full_name: String
login_name: String
must_change_password: Boolean
password: String!
restricted: Boolean
send_notify: Boolean
source_id: BigInt
username: String!
visibility: String
}
"""CreateWikiPageOptions form for creating wiki"""
input CreateWikiPageOptions_Input {
"""content must be base64 encoded"""
content_base64: String
"""optional commit message summarizing the change"""
message: String
"""page title. leave empty to keep unchanged"""
title: String
}
"""Cron represents a Cron task"""
type Cron {
exec_times: BigInt
name: String
next: DateTime
prev: DateTime
schedule: String
}
"""
A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.
"""
scalar DateTime
"""DeleteEmailOption options when deleting email addresses"""
input DeleteEmailOption_Input {
"""email addresses to delete"""
emails: [String]
}
"""
DeleteFileOptions options for deleting files (used for other File structs below)
Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
"""
input DeleteFileOptions_Input {
author: Identity_Input
"""
branch (optional) to base this file from. if not given, the default branch is used
"""
branch: String
committer: Identity_Input
dates: CommitDateOptions_Input
"""
message (optional) for the commit of this file. if not supplied, a default message will be used
"""
message: String
"""
new_branch (optional) will make a new branch from `branch` before creating the file
"""
new_branch: String
"""sha is the SHA for the file that already exists"""
sha: String!
"""
Add a Signed-off-by trailer by the committer at the end of the commit log message.
"""
signoff: Boolean
}
"""DeployKey a deploy key"""
type DeployKey {
created_at: DateTime
fingerprint: String
id: BigInt
key: String
key_id: BigInt
read_only: Boolean
repository: Repository
title: String
url: String
}
"""DismissPullReviewOptions are options to dismiss a pull review"""
input DismissPullReviewOptions_Input {
message: String
priors: Boolean
}
enum DnsProvider {
cloudflare
digitalocean
gandi
gcdns
godaddy
linode
manual
namecheap
namecom
noop
route53
wildcard
}
"""Domain Info"""
type Domain {
banner: query_mail_by_domain_banner
catchAll: [JSON]
domain: String
enabled: Boolean
mailFromValidation: Boolean
relay: query_mail_by_domain_relay
}
input DomainConfig_Input {
config: JSON!
fallbackCertificate: mutationInput_post_domains_input_allOf_1_fallbackCertificate_Input
hyphenatedSubdomains: Boolean
provider: DnsProvider!
tlsConfig: TlsConfig_Input
wildcard: Boolean
zoneName: String
}
input DynamicDnsConfig_request_Input {
enabled: Boolean!
}
"""EditAttachmentOptions options for editing attachments"""
input EditAttachmentOptions_Input {
name: String
}
"""EditBranchProtectionOption options for editing a branch protection"""
input EditBranchProtectionOption_Input {
approvals_whitelist_teams: [String]
approvals_whitelist_username: [String]
block_on_official_review_requests: Boolean
block_on_outdated_branch: Boolean
block_on_rejected_reviews: Boolean
dismiss_stale_approvals: Boolean
enable_approvals_whitelist: Boolean
enable_merge_whitelist: Boolean
enable_push: Boolean
enable_push_whitelist: Boolean
enable_status_check: Boolean
merge_whitelist_teams: [String]
merge_whitelist_usernames: [String]
protected_file_patterns: String
push_whitelist_deploy_keys: Boolean
push_whitelist_teams: [String]
push_whitelist_usernames: [String]
require_signed_commits: Boolean
required_approvals: BigInt
status_check_contexts: [String]
unprotected_file_patterns: String
}
"""EditDeadlineOption options for creating a deadline"""
input EditDeadlineOption_Input {
due_date: DateTime!
}
"""EditGitHookOption options when modifying one Git hook"""
input EditGitHookOption_Input {
content: String
}
"""EditHookOption options when modify one hook"""
input EditHookOption_Input {
active: Boolean
authorization_header: String
branch_filter: String
config: JSON
events: [String]
}
"""EditIssueCommentOption options for editing a comment"""
input EditIssueCommentOption_Input {
body: String!
}
"""EditIssueOption options for editing an issue"""
input EditIssueOption_Input {
"""deprecated"""
assignee: String
assignees: [String]
body: String
due_date: DateTime
milestone: BigInt
ref: String
state: String
title: String
unset_due_date: Boolean
}
"""EditLabelOption options for editing a label"""
input EditLabelOption_Input {
color: String
description: String
exclusive: Boolean
name: String
}
"""EditMilestoneOption options for editing a milestone"""
input EditMilestoneOption_Input {
description: String
due_on: DateTime
state: String
title: String
}
"""EditOrgOption options for editing an organization"""
input EditOrgOption_Input {
description: String
full_name: String
location: String
repo_admin_change_team_access: Boolean
visibility: mutationInput_orgEdit_input_visibility
website: String
}
"""EditPullRequestOption options when modify pull request"""
input EditPullRequestOption_Input {
allow_maintainer_edit: Boolean
assignee: String
assignees: [String]
base: String
body: String
due_date: DateTime
labels: [BigInt]
milestone: BigInt
state: String
title: String
unset_due_date: Boolean
}
"""EditReactionOption contain the reaction type"""
input EditReactionOption_Input {
content: String
}
"""EditReleaseOption options when editing a release"""
input EditReleaseOption_Input {
body: String
draft: Boolean
name: String
prerelease: Boolean
tag_name: String
target_commitish: String
}
"""EditRepoOption options when editing a repository's properties"""
input EditRepoOption_Input {
"""
either `true` to allow mark pr as merged manually, or `false` to prevent it.
"""
allow_manual_merge: Boolean
"""
either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits.
"""
allow_merge_commits: Boolean
"""
either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging.
"""
allow_rebase: Boolean
"""
either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits.
"""
allow_rebase_explicit: Boolean
"""
either `true` to allow updating pull request branch by rebase, or `false` to prevent it.
"""
allow_rebase_update: Boolean
"""
either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging.
"""
allow_squash_merge: Boolean
"""set to `true` to archive this repository."""
archived: Boolean
"""
either `true` to enable AutodetectManualMerge, or `false` to prevent it. Note: In some special cases, misjudgments can occur.
"""
autodetect_manual_merge: Boolean
"""set to `true` to allow edits from maintainers by default"""
default_allow_maintainer_edit: Boolean
"""sets the default branch for this repository."""
default_branch: String
"""set to `true` to delete pr branch after merge by default"""
default_delete_branch_after_merge: Boolean
"""
set to a merge style to be used by this repository: "merge", "rebase", "rebase-merge", or "squash".
"""
default_merge_style: String
"""a short description of the repository."""
description: String
"""enable prune - remove obsolete remote-tracking references"""
enable_prune: Boolean
external_tracker: ExternalTracker_Input
external_wiki: ExternalWiki_Input
"""
either `true` to enable issues for this repository or `false` to disable them.
"""
has_issues: Boolean
"""either `true` to enable project unit, or `false` to disable them."""
has_projects: Boolean
"""
either `true` to allow pull requests, or `false` to prevent pull request.
"""
has_pull_requests: Boolean
"""
either `true` to enable the wiki for this repository or `false` to disable it.
"""
has_wiki: Boolean
"""
either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace.
"""
ignore_whitespace_conflicts: Boolean
internal_tracker: InternalTracker_Input
"""set to a string like `8h30m0s` to set the mirror interval time"""
mirror_interval: String
"""name of the repository"""
name: String
"""
either `true` to make the repository private or `false` to make it public.
Note: you will get a 422 error if the organization restricts changing repository visibility to organization
owners and a non-owner tries to change the value of private.
"""
private: Boolean
"""
either `true` to make this repository a template or `false` to make it a normal repository
"""
template: Boolean
"""a URL with more information about the repository."""
website: String
}
"""EditTeamOption options for editing a team"""
input EditTeamOption_Input {
can_create_org_repo: Boolean
description: String
includes_all_repositories: Boolean
name: String!
permission: mutationInput_orgEditTeam_input_permission
units: [String]
units_map: mutationInput_orgEditTeam_input_units_map_Input
}
"""EditUserOption edit user options"""
input EditUserOption_Input {
active: Boolean
admin: Boolean
allow_create_organization: Boolean
allow_git_hook: Boolean
allow_import_local: Boolean
description: String
email: EmailAddress
full_name: String
location: String
login_name: String!
max_repo_creation: BigInt
must_change_password: Boolean
password: String
prohibit_login: Boolean
restricted: Boolean
source_id: BigInt!
visibility: String
website: String
}
"""Email an email address belonging to a user"""
type Email {
email: EmailAddress
primary: Boolean
verified: Boolean
}
"""
A field whose value conforms to the standard internet email address format as specified in HTML Spec: https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address.
"""
scalar EmailAddress
input EnableMailboxes_request_Input {
enabled: Boolean!
}
type ExternalLdapConfig {
autoCreate: Boolean
baseDn: String!
bindDn: String
bindPassword: String
filter: String!
provider: mutationInput_post_settings_external_ldap_config_input_provider!
url: String!
usernameField: String
}
input ExternalLdapConfig_Input {
autoCreate: Boolean
baseDn: String!
bindDn: String
bindPassword: String
filter: String!
provider: mutationInput_post_settings_external_ldap_config_input_provider!
url: String!
usernameField: String = "uid"
}
"""ExternalTracker represents settings for external tracker"""
type ExternalTracker {
"""
External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.
"""
external_tracker_format: String
"""External Issue Tracker issue regular expression"""
external_tracker_regexp_pattern: String
"""
External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp`
"""
external_tracker_style: String
"""URL of external issue tracker."""
external_tracker_url: String
}
"""ExternalTracker represents settings for external tracker"""
input ExternalTracker_Input {
"""
External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.
"""
external_tracker_format: String
"""External Issue Tracker issue regular expression"""
external_tracker_regexp_pattern: String
"""
External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp`
"""
external_tracker_style: String
"""URL of external issue tracker."""
external_tracker_url: String
}
"""ExternalWiki represents setting for external wiki"""
type ExternalWiki {
"""URL of external wiki."""
external_wiki_url: String
}
"""ExternalWiki represents setting for external wiki"""
input ExternalWiki_Input {
"""URL of external wiki."""
external_wiki_url: String
}
"""The `File` scalar type represents a file upload."""
scalar File
type FileCommitResponse_contains_information_generated_from_a_Git_commit_for_a_repo_SINGLE_QUOTE_s_file_ {
author: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
committer: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
created: DateTime
html_url: String
message: String
parents: [CommitMeta_contains_meta_information_of_a_commit_in_terms_of_API_]
sha: String
tree: CommitMeta_contains_meta_information_of_a_commit_in_terms_of_API_
url: String
}
"""
FileDeleteResponse contains information about a repo's file that was deleted
"""
type FileDeleteResponse {
commit: FileCommitResponse_contains_information_generated_from_a_Git_commit_for_a_repo_SINGLE_QUOTE_s_file_
content: JSON
verification: PayloadCommitVerification
}
"""FileLinksResponse contains the links for a repo's file"""
type FileLinksResponse {
git: String
html: String
self: String
}
"""FileResponse contains information about a repo's file"""
type FileResponse {
commit: FileCommitResponse_contains_information_generated_from_a_Git_commit_for_a_repo_SINGLE_QUOTE_s_file_
content: ContentsResponse
verification: PayloadCommitVerification
}
"""GPGKey a user GPG key to sign commit and tag in repository"""
type GPGKey {
can_certify: Boolean
can_encrypt_comms: Boolean
can_encrypt_storage: Boolean
can_sign: Boolean
created_at: DateTime
emails: [GPGKeyEmail]
expires_at: DateTime
id: BigInt
key_id: String
primary_key_id: String
public_key: String
subkeys: [GPGKey]
verified: Boolean
}
"""GPGKeyEmail an email attached to a GPGKey"""
type GPGKeyEmail {
email: String
verified: Boolean
}
"""GeneralAPISettings contains global api settings exposed by it"""
type GeneralAPISettings {
default_git_trees_per_page: BigInt
default_max_blob_size: BigInt
default_paging_num: BigInt
max_response_items: BigInt
}
"""
GeneralAttachmentSettings contains global Attachment settings exposed by API
"""
type GeneralAttachmentSettings {
allowed_types: String
enabled: Boolean
max_files: BigInt
max_size: BigInt
}
"""GeneralRepoSettings contains global repository settings exposed by API"""
type GeneralRepoSettings {
http_git_disabled: Boolean
lfs_disabled: Boolean
migrations_disabled: Boolean
mirrors_disabled: Boolean
stars_disabled: Boolean
time_tracking_disabled: Boolean
}
"""GeneralUISettings contains global ui settings exposed by API"""
type GeneralUISettings {
allowed_reactions: [String]
custom_emojis: [String]
default_theme: String
}
"""GenerateRepoOption options when creating repository using a template"""
input GenerateRepoOption_Input {
"""include avatar of the template repo"""
avatar: Boolean
"""Default branch of the new repository"""
default_branch: String
"""Description of the repository to create"""
description: String
"""include git content of default branch in template repo"""
git_content: Boolean
"""include git hooks in template repo"""
git_hooks: Boolean
"""include labels in template repo"""
labels: Boolean
"""Name of the repository to create"""
name: String!
"""The organization or person who will own the new repository"""
owner: String!
"""Whether the repository is private"""
private: Boolean
"""include topics in template repo"""
topics: Boolean
"""include webhooks in template repo"""
webhooks: Boolean
}
"""GitBlobResponse represents a git blob"""
type GitBlobResponse {
content: String
encoding: String
sha: String
size: BigInt
url: String
}
"""GitEntry represents a git tree"""
type GitEntry {
mode: String
path: String
sha: String
size: BigInt
type: String
url: String
}
"""GitHook represents a Git repository hook"""
type GitHook {
content: String
is_active: Boolean
name: String
}
type GitObject_represents_a_Git_object_ {
sha: String
type: String
url: String
}
"""GitTreeResponse returns a git tree"""
type GitTreeResponse {
page: BigInt
sha: String
total_count: BigInt
tree: [GitEntry]
truncated: Boolean
url: String
}
type Group {
id: String
name: String
}
type GroupWithMembers {
id: String
name: String
userIds: [String]
}
input Group_request_Input {
name: String!
}
enum HTTPMethod {
CONNECT
DELETE
GET
HEAD
OPTIONS
PATCH
POST
PUT
TRACE
}
"""Hook a hook is a web hook when one repository changed"""
type Hook {
active: Boolean
authorization_header: String
config: JSON
created_at: DateTime
events: [String]
id: BigInt
type: String
updated_at: DateTime
}
"""Identity for a person's identity like an author or committer"""
input Identity_Input {
email: EmailAddress
name: String
}
"""InternalTracker represents settings for internal tracker"""
type InternalTracker {
"""Let only contributors track time (Built-in issue tracker)"""
allow_only_contributors_to_track_time: Boolean
"""
Enable dependencies for issues and pull requests (Built-in issue tracker)
"""
enable_issue_dependencies: Boolean
"""Enable time tracking (Built-in issue tracker)"""
enable_time_tracker: Boolean
}
"""InternalTracker represents settings for internal tracker"""
input InternalTracker_Input {
"""Let only contributors track time (Built-in issue tracker)"""
allow_only_contributors_to_track_time: Boolean
"""
Enable dependencies for issues and pull requests (Built-in issue tracker)
"""
enable_issue_dependencies: Boolean
"""Enable time tracking (Built-in issue tracker)"""
enable_time_tracker: Boolean
}
"""Issue represents an issue in a repository"""
type Issue {
assets: [Attachment]
assignee: User
assignees: [User]
body: String
closed_at: DateTime
comments: BigInt
created_at: DateTime
due_date: DateTime
html_url: String
id: BigInt
is_locked: Boolean
labels: [Label]
milestone: Milestone
number: BigInt
original_author: String
original_author_id: BigInt
pull_request: PullRequestMeta
ref: String
repository: RepositoryMeta
"""StateType issue state type"""
state: String
title: String
updated_at: DateTime
url: String
user: User
}
"""IssueDeadline represents an issue deadline"""
type IssueDeadline {
due_date: DateTime
}
"""IssueFormField represents a form field"""
type IssueFormField {
attributes: JSON
id: String
type: String
validations: JSON
}
"""IssueLabelsOption a collection of labels"""
input IssueLabelsOption_Input {
"""list of label IDs"""
labels: [BigInt]
}
"""IssueTemplate represents an issue template for a repository"""
type IssueTemplate {
about: String
body: [IssueFormField]
content: String
file_name: String
labels: [String]
name: String
ref: String
title: String
}
"""
The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
"""
scalar JSON
"""Label a label to an issue or a pr"""
type Label {
color: String
description: String
exclusive: Boolean
id: BigInt
name: String
url: String
}
"""Mail SMTP relay provider"""
enum MailRelayProvider {
cloudron_smtp
elasticemail_smtp
external_smtp
external_smtp_noauth
google_smtp
mailgun_smtp
mailjet_smtp
noop
postmark_smtp
sendgrid_smtp
ses_smtp
sparkpost_smtp
}
"""Mailbox"""
type Mailbox {
aliases: [JSON]
domain: String
name: String
ownerId: String
ownerType: String
}
"""MarkdownOption markdown options"""
input MarkdownOption_Input {
"""
Context to render
in: body
"""
Context: String
"""
Mode to render
in: body
"""
Mode: String
"""
Text markdown to render
in: body
"""
Text: String
"""
Is it a wiki page ?
in: body
"""
Wiki: Boolean
}
"""MergePullRequestForm form for merging Pull Request"""
input MergePullRequestOption_Input {
Do: mutationInput_repoMergePullRequest_input_Do!
MergeCommitID: String
MergeMessageField: String
MergeTitleField: String
delete_branch_after_merge: Boolean
force_merge: Boolean
head_commit_id: String
merge_when_checks_succeed: Boolean
}
"""
MigrateRepoOptions options for migrating repository's
this is used to interact with api v1
"""
input MigrateRepoOptions_Input {
auth_password: String
auth_token: String
auth_username: String
clone_addr: String!
description: String
issues: Boolean
labels: Boolean
lfs: Boolean
lfs_endpoint: String
milestones: Boolean
mirror: Boolean
mirror_interval: String
private: Boolean
pull_requests: Boolean
releases: Boolean
repo_name: String!
"""Name of User or Organisation who will own Repo after migration"""
repo_owner: String
service: mutationInput_repoMigrate_input_service
"""deprecated (only for backwards compatibility)"""
uid: BigInt
wiki: Boolean
}
"""Milestone milestone is a collection of issues on one repository"""
type Milestone {
closed_at: DateTime
closed_issues: BigInt
created_at: DateTime
description: String
due_on: DateTime
id: BigInt
open_issues: BigInt
"""StateType issue state type"""
state: String
title: String
updated_at: DateTime
}
type Mutation {
"""Accept a repo transfer"""
acceptRepoTransfer(
"""owner of the repo to transfer"""
owner: String!
"""name of the repo to transfer"""
repo: String!
): Repository
"""Send to the inbox"""
activitypubPersonInbox(
"""user ID of the user"""
user_id: Int!
): Void
"""Adopt unadopted files as a repository"""
adminAdoptRepository(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Create a hook"""
adminCreateHook(input: CreateHookOption_Input!): Hook
"""Create an organization"""
adminCreateOrg(
input: CreateOrgOption_Input!
"""username of the user that will own the created organization"""
username: String!
): Organization
"""Add a public key on behalf of a user"""
adminCreatePublicKey(
input: CreateKeyOption_Input
"""username of the user"""
username: String!
): PublicKey
"""Create a repository on behalf of a user"""
adminCreateRepo(
input: CreateRepoOption_Input!
"""username of the user. This user will own the created repository"""
username: String!
): Repository
"""Create a user"""
adminCreateUser(input: CreateUserOption_Input): User
"""Run cron task"""
adminCronRun(
"""task to run"""
task: String!
): Void
"""Delete a hook"""
adminDeleteHook(
"""id of the hook to delete"""
id: BigInt!
): Void
"""Delete unadopted files"""
adminDeleteUnadoptedRepository(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a user"""
adminDeleteUser(
"""purge the user from the system completely"""
purge: Boolean
"""username of user to delete"""
username: String!
): Void
"""Delete a user's public key"""
adminDeleteUserPublicKey(
"""id of the key to delete"""
id: BigInt!
"""username of user"""
username: String!
): Void
"""Update a hook"""
adminEditHook(
"""id of the hook to update"""
id: BigInt!
input: EditHookOption_Input
): Hook
"""Edit an existing user"""
adminEditUser(
input: EditUserOption_Input
"""username of user to edit"""
username: String!
): User
"""Create a repository"""
createCurrentUserRepo(input: CreateRepoOption_Input!): Repository
"""Fork a repository"""
createFork(
input: CreateForkOption_Input
"""owner of the repo to fork"""
owner: String!
"""name of the repo to fork"""
repo: String!
): Repository
"""Create a repository in an organization"""
createOrgRepo(
input: CreateRepoOption_Input!
"""name of organization"""
org: String!
): Repository
"""Create a repository in an organization"""
createOrgRepoDeprecated(
input: CreateRepoOption_Input!
"""name of organization"""
org: String!
): Repository
"""Delete a package"""
deletePackage(
"""name of the package"""
name: String!
"""owner of the package"""
owner: String!
"""type of the package"""
type: String!
"""version of the package"""
version: String!
): Void
"""Remove Domain"""
delete_domains_by_domain(
"""Domain"""
domain: String!
): Void
"""Delete group"""
delete_groups_by_groupId(
"""Group ID"""
groupId: String!
): Void
"""Delete mailbox."""
delete_mail_by_domain_mailboxes_by_name(
"""Domain"""
domain: String!
input: delete_mail_by_domain_mailboxes_by_name_request_Input
"""Mailbox"""
name: String!
): JSON
"""Delete user"""
delete_users_by_userId(
"""User ID"""
userId: String!
): Void
"""Create a repository using a template"""
generateRepo(
input: GenerateRepoOption_Input
"""name of the template repository owner"""
template_owner: String!
"""name of the template repository"""
template_repo: String!
): Repository
"""Add a label to an issue"""
issueAddLabel(
"""index of the issue"""
index: BigInt!
input: IssueLabelsOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Label]
"""Subscribe user to issue"""
issueAddSubscription(
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""user to subscribe"""
user: String!
): JSON
"""Add tracked time to a issue"""
issueAddTime(
"""index of the issue"""
index: BigInt!
input: AddTimeOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): TrackedTime
"""Remove all labels from an issue"""
issueClearLabels(
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Add a comment to an issue"""
issueCreateComment(
"""index of the issue"""
index: BigInt!
input: CreateIssueCommentOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Comment
"""
Create an issue. If using deadline only the date will be taken into account, and time of day ignored.
"""
issueCreateIssue(
input: CreateIssueOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Issue
"""Create an issue attachment"""
issueCreateIssueAttachment(
"""index of the issue"""
index: BigInt!
"""name of the attachment"""
name: String
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Create a comment attachment"""
issueCreateIssueCommentAttachment(
"""id of the comment"""
id: BigInt!
"""name of the attachment"""
name: String
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Create a label"""
issueCreateLabel(
input: CreateLabelOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Label
"""Create a milestone"""
issueCreateMilestone(
input: CreateMilestoneOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Milestone
"""Delete an issue"""
issueDelete(
"""index of issue to delete"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a comment"""
issueDeleteComment(
"""id of comment to delete"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a comment"""
issueDeleteCommentDeprecated(
"""id of comment to delete"""
id: BigInt!
"""this parameter is ignored"""
index: Int!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Remove a reaction from a comment of an issue"""
issueDeleteCommentReaction(
"""id of the comment to edit"""
id: BigInt!
input: EditReactionOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""Delete an issue attachment"""
issueDeleteIssueAttachment(
"""id of the attachment to delete"""
attachment_id: BigInt!
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a comment attachment"""
issueDeleteIssueCommentAttachment(
"""id of the attachment to delete"""
attachment_id: BigInt!
"""id of the comment"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Remove a reaction from an issue"""
issueDeleteIssueReaction(
"""index of the issue"""
index: BigInt!
input: EditReactionOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""Delete a label"""
issueDeleteLabel(
"""id of the label to delete"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a milestone"""
issueDeleteMilestone(
"""the milestone to delete, identified by ID and if not available by name"""
id: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete an issue's existing stopwatch."""
issueDeleteStopWatch(
"""index of the issue to stop the stopwatch on"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Unsubscribe user from issue"""
issueDeleteSubscription(
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""user witch unsubscribe"""
user: String!
): JSON
"""Delete specific tracked time"""
issueDeleteTime(
"""id of time to delete"""
id: BigInt!
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Edit a comment"""
issueEditComment(
"""id of the comment to edit"""
id: BigInt!
input: EditIssueCommentOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): issueEditComment_response
"""Edit a comment"""
issueEditCommentDeprecated(
"""id of the comment to edit"""
id: BigInt!
"""this parameter is ignored"""
index: Int!
input: EditIssueCommentOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): issueEditCommentDeprecated_response
"""
Edit an issue. If using deadline only the date will be taken into account, and time of day ignored.
"""
issueEditIssue(
"""index of the issue to edit"""
index: BigInt!
input: EditIssueOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Issue
"""Edit an issue attachment"""
issueEditIssueAttachment(
"""id of the attachment to edit"""
attachment_id: BigInt!
"""index of the issue"""
index: BigInt!
input: EditAttachmentOptions_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Edit a comment attachment"""
issueEditIssueCommentAttachment(
"""id of the attachment to edit"""
attachment_id: BigInt!
"""id of the comment"""
id: BigInt!
input: EditAttachmentOptions_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""
Set an issue deadline. If set to null, the deadline is deleted. If using deadline only the date will be taken into account, and time of day ignored.
"""
issueEditIssueDeadline(
"""index of the issue to create or update a deadline on"""
index: BigInt!
input: EditDeadlineOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): IssueDeadline
"""Update a label"""
issueEditLabel(
"""id of the label to edit"""
id: BigInt!
input: EditLabelOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Label
"""Update a milestone"""
issueEditMilestone(
"""the milestone to edit, identified by ID and if not available by name"""
id: String!
input: EditMilestoneOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Milestone
"""Add a reaction to a comment of an issue"""
issuePostCommentReaction(
"""id of the comment to edit"""
id: BigInt!
input: EditReactionOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Reaction
"""Add a reaction to an issue"""
issuePostIssueReaction(
"""index of the issue"""
index: BigInt!
input: EditReactionOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Reaction
"""Remove a label from an issue"""
issueRemoveLabel(
"""id of the label to remove"""
id: BigInt!
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Replace an issue's labels"""
issueReplaceLabels(
"""index of the issue"""
index: BigInt!
input: IssueLabelsOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Label]
"""Reset a tracked time of an issue"""
issueResetTime(
"""index of the issue to add tracked time to"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Start stopwatch on an issue."""
issueStartStopWatch(
"""index of the issue to create the stopwatch on"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""Stop an issue's existing stopwatch."""
issueStopStopWatch(
"""index of the issue to stop the stopwatch on"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""Mark notification threads as read, pinned or unread"""
notifyReadList(
"""If true, mark all notifications on this repo. Default value is false"""
all: String
"""
Describes the last point that notifications were checked. Anything updated since this time will not be updated.
"""
last_read_at: DateTime
"""
Mark notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread.
"""
status_types: [String]
"""Status to mark notifications as, Defaults to read."""
to_status: String
): [NotificationThread]
"""Mark notification threads as read, pinned or unread on a specific repo"""
notifyReadRepoList(
"""If true, mark all notifications on this repo. Default value is false"""
all: String
"""
Describes the last point that notifications were checked. Anything updated since this time will not be updated.
"""
last_read_at: DateTime
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""
Mark notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread.
"""
status_types: [String]
"""Status to mark notifications as. Defaults to read."""
to_status: String
): [NotificationThread]
"""Mark notification thread as read by ID"""
notifyReadThread(
"""id of notification thread"""
id: String!
"""Status to mark notifications as"""
to_status: String = "read"
): NotificationThread
"""Add a team member"""
orgAddTeamMember(
"""id of the team"""
id: BigInt!
"""username of the user to add"""
username: String!
): Void
"""Add a repository to a team"""
orgAddTeamRepository(
"""id of the team"""
id: BigInt!
"""organization that owns the repo to add"""
org: String!
"""name of the repo to add"""
repo: String!
): Void
"""Conceal a user's membership"""
orgConcealMember(
"""name of the organization"""
org: String!
"""username of the user"""
username: String!
): Void
"""Create an organization"""
orgCreate(input: CreateOrgOption_Input!): Organization
"""Create a hook"""
orgCreateHook(
input: CreateHookOption_Input!
"""name of the organization"""
org: String!
): Hook
"""Create a label for an organization"""
orgCreateLabel(
input: CreateLabelOption_Input
"""name of the organization"""
org: String!
): Label
"""Create a team"""
orgCreateTeam(
input: CreateTeamOption_Input
"""name of the organization"""
org: String!
): Team
"""Delete an organization"""
orgDelete(
"""organization that is to be deleted"""
org: String!
): Void
"""Delete a hook"""
orgDeleteHook(
"""id of the hook to delete"""
id: BigInt!
"""name of the organization"""
org: String!
): Void
"""Delete a label"""
orgDeleteLabel(
"""id of the label to delete"""
id: BigInt!
"""name of the organization"""
org: String!
): Void
"""Remove a member from an organization"""
orgDeleteMember(
"""name of the organization"""
org: String!
"""username of the user"""
username: String!
): Void
"""Delete a team"""
orgDeleteTeam(
"""id of the team to delete"""
id: BigInt!
): Void
"""Edit an organization"""
orgEdit(
input: EditOrgOption_Input!
"""name of the organization to edit"""
org: String!
): Organization
"""Update a hook"""
orgEditHook(
"""id of the hook to update"""
id: BigInt!
input: EditHookOption_Input
"""name of the organization"""
org: String!
): Hook
"""Update a label"""
orgEditLabel(
"""id of the label to edit"""
id: BigInt!
input: EditLabelOption_Input
"""name of the organization"""
org: String!
): Label
"""Edit a team"""
orgEditTeam(
"""id of the team to edit"""
id: Int!
input: EditTeamOption_Input
): Team
"""Publicize a user's membership"""
orgPublicizeMember(
"""name of the organization"""
org: String!
"""username of the user"""
username: String!
): Void
"""Remove a team member"""
orgRemoveTeamMember(
"""id of the team"""
id: BigInt!
"""username of the user to remove"""
username: String!
): Void
"""
This does not delete the repository, it only removes the repository from the team.
"""
orgRemoveTeamRepository(
"""id of the team"""
id: BigInt!
"""organization that owns the repo to remove"""
org: String!
"""name of the repo to remove"""
repo: String!
): Void
"""Create a backup for an app"""
post_apps_by_appid_backup: post_apps_by_appid_backup_202_response
"""Update meta info and retention for this backup."""
post_apps_by_appid_backups_by_backupId(
"""Backup ID"""
backupId: String!
input: post_apps_by_appid_backups_by_backupId_request_Input
): JSON
"""
Clone app identified by appid from a backup to a new instance with the same version and data
"""
post_apps_by_appid_clone(input: post_apps_by_appid_clone_request_Input): post_apps_by_appid_clone_201_response
"""
Configure access to apps for Cloudron usermanagement or dashboard visibility
"""
post_apps_by_appid_configure_access_restriction(input: post_apps_by_appid_configure_access_restriction_request_Input): JSON
"""Enable or disable the automatic backup"""
post_apps_by_appid_configure_automatic_backup(input: post_apps_by_appid_configure_automatic_backup_request_Input): post_apps_by_appid_configure_automatic_backup_202_response
"""Configure the domain, subdomain, alias of an app"""
post_apps_by_appid_configure_location(input: post_apps_by_appid_configure_location_request_Input): post_apps_by_appid_configure_location_202_response
"""Increase or the decrease the allocated memory limit"""
post_apps_by_appid_configure_memory_limit(input: post_apps_by_appid_configure_memory_limit_request_Input): post_apps_by_appid_configure_memory_limit_202_response
"""Restart an installed app"""
post_apps_by_appid_restart: post_apps_by_appid_restart_202_response
"""Restore an app from a specific backup"""
post_apps_by_appid_restore(input: post_apps_by_appid_restore_request_Input): post_apps_by_appid_restore_202_response
"""Start a stopped app"""
post_apps_by_appid_start: post_apps_by_appid_start_202_response
"""Stop a running app"""
post_apps_by_appid_stop: post_apps_by_appid_stop_202_response
"""Uninstall an app"""
post_apps_by_appid_uninstall: post_apps_by_appid_uninstall_202_response
"""
This triggers an app installation. Use the `taskId` from the response with the Tasks API to follow the installation progress <br/> <br/> **Either `manifest` or `appStoreId` are required!** In most cases the `appStoreId` is the correct property to be used for installing apps from the Cloudron app catalogue.
"""
post_apps_install(input: post_apps_install_request_Input): post_apps_install_200_response
"""
Register this Cloudron with cloudron.io AppStore and enable access to the app library.
"""
post_appstore_register_cloudron(input: post_appstore_register_cloudron_request_Input): JSON
"""
Based on the backup creation and `retentionSecs` specified in the backup config, backups will be purged. This should not need to be called manually as the same logic is called automatically very 6 hours.
"""
post_backups_cleanup: post_backups_cleanup_202_response
"""
This will trigger a new backup for the whole system, including all apps.
"""
post_backups_create: post_backups_create_202_response
"""
Public route to activate the Cloudron. This creates the first user (aka owner) account. <br/><br/> Before installing apps, the Cloudron must be registered with a valid Appstore account as well using the 'Register Cloudron' route.
"""
post_cloudron_activate(input: post_cloudron_activate_request_Input): post_cloudron_activate_201_response
"""Login to the Cloudron API to obtain an access token"""
post_cloudron_login(input: post_cloudron_login_request_Input): post_cloudron_login_200_response
"""Renew SSL certificates of all or optionally provided domains"""
post_cloudron_renew_certs(input: post_cloudron_renew_certs_request_Input): post_cloudron_renew_certs_202_response
"""
Public route to restore a whole Cloudron from backup. This is only available until the Cloudron is activated.
"""
post_cloudron_restore(input: post_cloudron_restore_request_Input): JSON
"""
Public route and very first call to setup the dashboard domain.
<br/><br/>
<b>This call has to be made against the raw IP address (eg. https://1.2.3.4 ) accepting self-signed certificates.</b>
<br/><br/>
A curl example could look like:<br/>
```curl -k -X POST -H 'Content-Type: application/json' --data '{...}' http://1.2.3.4/api/v1/cloudron/setup```
<br/><br/>
Once called, the process can be tracked through the `setup` object in the `/api/v1/cloudron/status` API reply.
After the status API returns a success, future API requests must be made to `https://my.domain.com`.
<br/><br/>
This routes gets disabled once the Cloudron has been activated.
"""
post_cloudron_setup(input: post_cloudron_setup_request_Input): JSON
"""Add a new domain"""
post_domains(input: post_domains_request_Input): JSON
"""Update Domain"""
post_domains_by_domain(
"""Domain"""
domain: String!
input: DomainConfig_Input
): Void
"""Add group"""
post_groups(input: Group_request_Input): Group
"""Update group"""
post_groups_by_groupId(
"""Group ID"""
groupId: String!
input: Group_request_Input
): JSON
"""Set Mail Signature"""
post_mail_by_domain_banner(
"""Domain"""
domain: String!
input: post_mail_by_domain_banner_request_Input
): JSON
"""Set Catchall addresses"""
post_mail_by_domain_catch_all(
"""Domain"""
domain: String!
input: post_mail_by_domain_catch_all_request_Input
): JSON
"""
Enable incoming email for the domain to receive emails. By default, only email sending is enabled.
"""
post_mail_by_domain_enable(
"""Domain"""
domain: String!
input: EnableMailboxes_request_Input
): JSON
"""Set Mail From Validation"""
post_mail_by_domain_mail_from_validation(
"""Domain"""
domain: String!
input: EnableMailboxes_request_Input
): JSON
"""Add mailbox."""
post_mail_by_domain_mailboxes(
"""Domain"""
domain: String!
input: post_mail_by_domain_mailboxes_request_Input
): JSON
"""Update mailbox."""
post_mail_by_domain_mailboxes_by_name(
"""Domain"""
domain: String!
"""Mailbox"""
name: String!
): Void
"""Configure a SMTP relay for this domain"""
post_mail_by_domain_relay(
"""Domain"""
domain: String!
input: post_mail_by_domain_relay_request_Input
): JSON
"""Sent a test mail from domain."""
post_mail_by_domain_send_test_mail(
"""Domain"""
domain: String!
input: post_mail_by_domain_send_test_mail_request_Input
): JSON
"""Set notification acknowledged state"""
post_notifications_by_notificationId(
"""Notification Id"""
notificationId: String!
): Void
"""Configure Service"""
post_services_by_service(input: post_services_by_service_request_Input, service: ServiceName_parameter!): JSON
"""Restart Service"""
post_services_by_service_restart(service: ServiceName_parameter!): JSON
"""Set Apps Autoupdate Pattern"""
post_settings_app_autoupdate_pattern(input: UpdatePattern_Input): JSON
"""Set Backup Config"""
post_settings_backup_config(input: BackupConfig_Input): JSON
"""Set Cloudron Autoupdate Pattern"""
post_settings_box_autoupdate_pattern(input: UpdatePattern_Input): JSON
"""Set Cloudron Avatar"""
post_settings_cloudron_avatar(input: post_settings_cloudron_avatar_request_Input): JSON
"""Set Cloudron Name"""
post_settings_cloudron_name(input: CloudronNameConfig_Input): JSON
"""Set Dynamic DNS State"""
post_settings_dynamic_dns(input: DynamicDnsConfig_request_Input): JSON
"""Set External LDAP Config"""
post_settings_external_ldap_config(input: ExternalLdapConfig_Input): JSON
"""Set Platform Config"""
post_settings_platform_config(input: PlatformConfig_Input): JSON
"""Set Registry Config"""
post_settings_registry_config(input: RegistryConfig_Input): JSON
"""Set Sysinfo Config"""
post_settings_sysinfo_config(input: SysinfoConfig_Input): JSON
"""Set Timezone"""
post_settings_time_zone(input: TimezoneConfig_Input): JSON
"""Set Unstable Apps State"""
post_settings_unstable_apps(input: DynamicDnsConfig_request_Input): JSON
"""Stop Task"""
post_tasks_by_taskId_stop(
"""Task ID"""
taskId: Int!
): Void
"""Add new User"""
post_users(input: post_users_request_Input): User
"""Update user"""
post_users_by_userId(
input: post_users_by_userId_request_Input
"""User ID"""
userId: String!
): User
"""Change Password"""
post_users_by_userId_password(
input: post_users_by_userId_password_request_Input
"""User ID"""
userId: String!
): Void
"""
Send user invite email. This will not reset the invite token. See the create invite route.
"""
post_users_by_userId_send_invite_email(
input: post_users_by_userId_send_invite_email_request_Input
"""User ID"""
userId: String!
): JSON
"""Set group members"""
put_groups_by_groupId_members(
"""Group ID"""
groupId: String!
input: put_groups_by_groupId_members_request_Input
): JSON
"""Set groups a user belongs to"""
put_users_by_userId_groups(
input: put_users_by_userId_groups_request_Input
"""User ID"""
userId: String!
): Void
"""Reject a repo transfer"""
rejectRepoTransfer(
"""owner of the repo to transfer"""
owner: String!
"""name of the repo to transfer"""
repo: String!
): Repository
"""Render a markdown document as HTML"""
renderMarkdown(input: MarkdownOption_Input): String
"""Render raw markdown as HTML"""
renderMarkdownRaw(
"""Request body to render"""
input: String!
): String
"""Add a collaborator to a repository"""
repoAddCollaborator(
"""username of the collaborator to add"""
collaborator: String!
input: AddCollaboratorOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""add a push mirror to the repository"""
repoAddPushMirror(
input: CreatePushMirrorOption_represents_need_information_to_create_a_push_mirror_of_a_repository__Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PushMirror
"""Add a team to a repository"""
repoAddTeam(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""team name"""
team: String!
): Void
"""Add a topic to a repository"""
repoAddTopic(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""name of the topic to add"""
topic: String!
): Void
"""Apply diff patch to repository"""
repoApplyDiffPatch(
input: UpdateFileOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): FileResponse
"""Cancel the scheduled auto merge for the given pull request"""
repoCancelScheduledAutoMerge(
"""index of the pull request to merge"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Create a branch"""
repoCreateBranch(
input: CreateBranchRepoOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Branch
"""Create a branch protections for a repository"""
repoCreateBranchProtection(
input: CreateBranchProtectionOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): BranchProtection
"""Create a file in a repository"""
repoCreateFile(
"""path of the file to create"""
filepath: String!
input: CreateFileOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): FileResponse
"""Create a hook"""
repoCreateHook(
input: CreateHookOption_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Hook
"""Add a key to a repository"""
repoCreateKey(
input: CreateKeyOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): DeployKey
"""Create a pull request"""
repoCreatePullRequest(
input: CreatePullRequestOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullRequest
"""Create a review to an pull request"""
repoCreatePullReview(
"""index of the pull request"""
index: BigInt!
input: CreatePullReviewOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullReview
"""create review requests for a pull request"""
repoCreatePullReviewRequests(
"""index of the pull request"""
index: BigInt!
input: PullReviewRequestOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [PullReview]
"""Create a release"""
repoCreateRelease(
input: CreateReleaseOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Release
"""Create a release attachment"""
repoCreateReleaseAttachment(
"""id of the release"""
id: BigInt!
"""name of the attachment"""
name: String
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Create a commit status"""
repoCreateStatus(
input: CreateStatusOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""sha of the commit"""
sha: String!
): CommitStatus
"""Create a new git tag in a repository"""
repoCreateTag(
input: CreateTagOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Tag
"""Create a wiki page"""
repoCreateWikiPage(
input: CreateWikiPageOptions_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): WikiPage
"""Delete a repository"""
repoDelete(
"""owner of the repo to delete"""
owner: String!
"""name of the repo to delete"""
repo: String!
): Void
"""Delete a specific branch from a repository"""
repoDeleteBranch(
"""branch to delete"""
branch: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a specific branch protection for the repository"""
repoDeleteBranchProtection(
"""name of protected branch"""
name: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a collaborator from a repository"""
repoDeleteCollaborator(
"""username of the collaborator to delete"""
collaborator: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a file in a repository"""
repoDeleteFile(
"""path of the file to delete"""
filepath: String!
input: DeleteFileOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): FileDeleteResponse
"""Delete a Git hook in a repository"""
repoDeleteGitHook(
"""id of the hook to get"""
id: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a hook in a repository"""
repoDeleteHook(
"""id of the hook to delete"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a key from a repository"""
repoDeleteKey(
"""id of the key to delete"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a specific review from a pull request"""
repoDeletePullReview(
"""id of the review"""
id: BigInt!
"""index of the pull request"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""cancel review requests for a pull request"""
repoDeletePullReviewRequests(
"""index of the pull request"""
index: BigInt!
input: PullReviewRequestOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""deletes a push mirror from a repository by remoteName"""
repoDeletePushMirror(
"""remote name of the pushMirror"""
name: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a release"""
repoDeleteRelease(
"""id of the release to delete"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a release attachment"""
repoDeleteReleaseAttachment(
"""id of the attachment to delete"""
attachment_id: BigInt!
"""id of the release"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Delete a release by tag name"""
repoDeleteReleaseByTag(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""tag name of the release to delete"""
tag: String!
): Void
"""Delete a repository's tag by name"""
repoDeleteTag(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""name of tag to delete"""
tag: String!
): Void
"""Delete a team from a repository"""
repoDeleteTeam(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""team name"""
team: String!
): Void
"""Delete a topic from a repository"""
repoDeleteTopic(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""name of the topic to delete"""
topic: String!
): Void
"""Delete a wiki page"""
repoDeleteWikiPage(
"""owner of the repo"""
owner: String!
"""name of the page"""
pageName: String!
"""name of the repo"""
repo: String!
): Void
"""Dismiss a review for a pull request"""
repoDismissPullReview(
"""id of the review"""
id: BigInt!
"""index of the pull request"""
index: BigInt!
input: DismissPullReviewOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullReview
"""
Edit a repository's properties. Only fields that are set will be changed.
"""
repoEdit(
input: EditRepoOption_Input
"""owner of the repo to edit"""
owner: String!
"""name of the repo to edit"""
repo: String!
): Repository
"""
Edit a branch protections for a repository. Only fields that are set will be changed
"""
repoEditBranchProtection(
input: EditBranchProtectionOption_Input
"""name of protected branch"""
name: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): BranchProtection
"""Edit a Git hook in a repository"""
repoEditGitHook(
"""id of the hook to get"""
id: String!
input: EditGitHookOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): GitHook
"""Edit a hook in a repository"""
repoEditHook(
"""index of the hook"""
id: BigInt!
input: EditHookOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Hook
"""
Update a pull request. If using deadline only the date will be taken into account, and time of day ignored.
"""
repoEditPullRequest(
"""index of the pull request to edit"""
index: BigInt!
input: EditPullRequestOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullRequest
"""Update a release"""
repoEditRelease(
"""id of the release to edit"""
id: BigInt!
input: EditReleaseOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Release
"""Edit a release attachment"""
repoEditReleaseAttachment(
"""id of the attachment to edit"""
attachment_id: BigInt!
"""id of the release"""
id: BigInt!
input: EditAttachmentOptions_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Edit a wiki page"""
repoEditWikiPage(
input: CreateWikiPageOptions_Input
"""owner of the repo"""
owner: String!
"""name of the page"""
pageName: String!
"""name of the repo"""
repo: String!
): WikiPage
"""Merge a pull request"""
repoMergePullRequest(
"""index of the pull request to merge"""
index: BigInt!
input: MergePullRequestOption_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""Migrate a remote git repository"""
repoMigrate(input: MigrateRepoOptions_Input): Repository
"""Sync a mirrored repository"""
repoMirrorSync(
"""owner of the repo to sync"""
owner: String!
"""name of the repo to sync"""
repo: String!
): JSON
"""Sync all push mirrored repository"""
repoPushMirrorSync(
"""owner of the repo to sync"""
owner: String!
"""name of the repo to sync"""
repo: String!
): JSON
"""Submit a pending review to an pull request"""
repoSubmitPullReview(
"""id of the review"""
id: BigInt!
"""index of the pull request"""
index: BigInt!
input: SubmitPullReviewOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullReview
"""Test a push webhook"""
repoTestHook(
"""id of the hook to test"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""
The name of the commit/branch/tag, indicates which commit will be loaded to the webhook payload.
"""
ref: String
"""name of the repo"""
repo: String!
): Void
"""Transfer a repo ownership"""
repoTransfer(
input: TransferRepoOption_Input!
"""owner of the repo to transfer"""
owner: String!
"""name of the repo to transfer"""
repo: String!
): Repository
"""Cancel to dismiss a review for a pull request"""
repoUnDismissPullReview(
"""id of the review"""
id: BigInt!
"""index of the pull request"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullReview
"""Update a file in a repository"""
repoUpdateFile(
"""path of the file to update"""
filepath: String!
input: UpdateFileOptions_Input!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): FileResponse
"""Merge PR's baseBranch into headBranch"""
repoUpdatePullRequest(
"""index of the pull request to get"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
style: mutationInput_repoUpdatePullRequest_style
): JSON
"""Replace list of topics for a repository"""
repoUpdateTopics(
input: RepoTopicOptions_Input
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Update user settings"""
updateUserSettings(input: UserSettingsOptions_Input): [UserSettings]
"""Add email addresses"""
userAddEmail(input: CreateEmailOption_Input): [Email]
"""creates a new OAuth2 application"""
userCreateOAuth2Application(input: CreateOAuth2ApplicationOptions_Input!): OAuth2Application_represents_an_OAuth2_application_
"""Create an access token"""
userCreateToken(
input: CreateAccessTokenOption_Input
"""username of user"""
username: String!
): AccessToken_represents_an_API_access_token_
"""Unfollow a user"""
userCurrentDeleteFollow(
"""username of user to unfollow"""
username: String!
): Void
"""Remove a GPG key"""
userCurrentDeleteGPGKey(
"""id of key to delete"""
id: BigInt!
): Void
"""Delete a public key"""
userCurrentDeleteKey(
"""id of key to delete"""
id: BigInt!
): Void
"""Unstar the given repo"""
userCurrentDeleteStar(
"""owner of the repo to unstar"""
owner: String!
"""name of the repo to unstar"""
repo: String!
): Void
"""Unwatch a repo"""
userCurrentDeleteSubscription(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Create a GPG key"""
userCurrentPostGPGKey(input: CreateGPGKeyOption_Input): GPGKey
"""Create a public key"""
userCurrentPostKey(input: CreateKeyOption_Input): PublicKey
"""Follow a user"""
userCurrentPutFollow(
"""username of user to follow"""
username: String!
): Void
"""Star the given repo"""
userCurrentPutStar(
"""owner of the repo to star"""
owner: String!
"""name of the repo to star"""
repo: String!
): Void
"""Watch a repo"""
userCurrentPutSubscription(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): WatchInfo
"""delete an access token"""
userDeleteAccessToken(
"""token to be deleted, identified by ID and if not available by name"""
token: String!
"""username of user"""
username: String!
): Void
"""Delete email addresses"""
userDeleteEmail(input: DeleteEmailOption_Input): Void
"""delete an OAuth2 Application"""
userDeleteOAuth2Application(
"""token to be deleted"""
id: BigInt!
): Void
"""
update an OAuth2 Application, this includes regenerating the client secret
"""
userUpdateOAuth2Application(
"""application to be updated"""
id: BigInt!
input: CreateOAuth2ApplicationOptions_Input!
): OAuth2Application_represents_an_OAuth2_application_
"""Verify a GPG key"""
userVerifyGPGKey: GPGKey
}
"""
NodeInfo contains standardized way of exposing metadata about a server running one of the distributed social networks
"""
type NodeInfo {
metadata: JSON
openRegistrations: Boolean
protocols: [String]
services: NodeInfoServices
software: NodeInfoSoftware
usage: NodeInfoUsage
version: String
}
"""
NodeInfoServices contains the third party sites this server can connect to via their application API
"""
type NodeInfoServices {
inbound: [String]
outbound: [String]
}
"""NodeInfoSoftware contains Metadata about server software in use"""
type NodeInfoSoftware {
homepage: String
name: String
repository: String
version: String
}
"""NodeInfoUsage contains usage statistics for this server"""
type NodeInfoUsage {
localComments: BigInt
localPosts: BigInt
users: NodeInfoUsageUsers
}
"""NodeInfoUsageUsers contains statistics about the users of this server"""
type NodeInfoUsageUsers {
activeHalfyear: BigInt
activeMonth: BigInt
total: BigInt
}
"""Integers that will have a value of 0 or more."""
scalar NonNegativeInt
"""Note contains information related to a git note"""
type Note {
commit: Commit_contains_information_generated_from_a_Git_commit_
message: String
}
"""Notification"""
type Notification {
acknowledged: Boolean
creationTime: DateTime
"""EventId from Eventlog"""
eventId: String
"""Notification Id for GET and POST calls"""
id: String
message: String
title: String
}
"""NotificationCount number of unread notifications"""
type NotificationCount {
new: BigInt
}
"""
NotificationSubject contains the notification subject (Issue/Pull/Commit)
"""
type NotificationSubject {
html_url: String
latest_comment_html_url: String
latest_comment_url: String
"""StateType issue state type"""
state: String
title: String
"""NotifySubjectType represent type of notification subject"""
type: String
url: String
}
"""NotificationThread expose Notification on API"""
type NotificationThread {
id: BigInt
pinned: Boolean
repository: Repository
subject: NotificationSubject
unread: Boolean
updated_at: DateTime
url: String
}
type OAuth2Application_represents_an_OAuth2_application_ {
client_id: String
client_secret: String
confidential_client: Boolean
created: DateTime
id: BigInt
name: String
redirect_uris: [String]
}
scalar ObjMap
"""Organization represents an organization"""
type Organization {
avatar_url: String
description: String
full_name: String
id: BigInt
location: String
name: String
repo_admin_change_team_access: Boolean
"""deprecated"""
username: String
visibility: String
website: String
}
"""
OrganizationPermissions list different users permissions on an organization
"""
type OrganizationPermissions {
can_create_repository: Boolean
can_read: Boolean
can_write: Boolean
is_admin: Boolean
is_owner: Boolean
}
"""PRBranchInfo information about a branch"""
type PRBranchInfo {
label: String
ref: String
repo: Repository
repo_id: BigInt
sha: String
}
"""Package represents a package"""
type Package {
created_at: DateTime
creator: User
id: BigInt
name: String
owner: User
repository: Repository
type: String
version: String
}
"""PackageFile represents a package file"""
type PackageFile {
Size: BigInt
id: BigInt
md5: String
name: String
sha1: String
sha256: String
sha512: String
}
"""PayloadCommit represents a commit"""
type PayloadCommit {
added: [String]
author: PayloadUser
committer: PayloadUser
"""sha1 hash of the commit"""
id: String
message: String
modified: [String]
removed: [String]
timestamp: DateTime
url: String
verification: PayloadCommitVerification
}
"""PayloadCommitVerification represents the GPG verification of a commit"""
type PayloadCommitVerification {
payload: String
reason: String
signature: String
signer: PayloadUser
verified: Boolean
}
"""PayloadUser represents the author or committer of a commit"""
type PayloadUser {
email: EmailAddress
"""Full name of the commit author"""
name: String
username: String
}
"""Permission represents a set of permissions"""
type Permission {
admin: Boolean
pull: Boolean
push: Boolean
}
type PlatformConfig {
mail: AddonConfig
mongodb: AddonConfig
mysql: AddonConfig
postgresql: AddonConfig
}
input PlatformConfig_Input {
mail: AddonConfig_Input
mongodb: AddonConfig_Input
mysql: AddonConfig_Input
postgresql: AddonConfig_Input
}
"""
Object of port bindings. If an app uses other TCP/UDP ports, new port bindings have to be specified to avoid conflict
"""
type PortBindings {
EXAMPLE_PORT: Int
}
"""
Object of port bindings. If an app uses other TCP/UDP ports, new port bindings have to be specified to avoid conflict
"""
input PortBindings_Input {
EXAMPLE_PORT: Int
}
"""Integers that will have a value greater than 0."""
scalar PositiveInt
"""VPS provider name tag"""
enum Provider {
ami
azure
cloudscale
contabo
digitalocean
ec2
exoscale
galaxygate
gce
generic
hetzner
interox
lightsail
linode
netcup
ovh
rosehosting
scaleway
skysilk
time4vps
upcloud
vultr
}
"""PublicKey publickey is a user key to push code to repository"""
type PublicKey {
created_at: DateTime
fingerprint: String
id: BigInt
key: String
key_type: String
read_only: Boolean
title: String
url: String
user: User
}
"""PullRequest represents a pull request"""
type PullRequest {
allow_maintainer_edit: Boolean
assignee: User
assignees: [User]
base: PRBranchInfo
body: String
closed_at: DateTime
comments: BigInt
created_at: DateTime
diff_url: String
due_date: DateTime
head: PRBranchInfo
html_url: String
id: BigInt
is_locked: Boolean
labels: [Label]
merge_base: String
merge_commit_sha: String
mergeable: Boolean
merged: Boolean
merged_at: DateTime
merged_by: User
milestone: Milestone
number: BigInt
patch_url: String
"""StateType issue state type"""
state: String
title: String
updated_at: DateTime
url: String
user: User
}
"""PullRequestMeta PR info if an issue is a PR"""
type PullRequestMeta {
merged: Boolean
merged_at: DateTime
}
"""PullReview represents a pull request review"""
type PullReview {
body: String
comments_count: BigInt
commit_id: String
dismissed: Boolean
html_url: String
id: BigInt
official: Boolean
pull_request_url: String
stale: Boolean
"""ReviewStateType review state type"""
state: String
submitted_at: DateTime
team: Team
updated_at: DateTime
user: User
}
"""PullReviewComment represents a comment on a pull request review"""
type PullReviewComment {
body: String
commit_id: String
created_at: DateTime
diff_hunk: String
html_url: String
id: BigInt
original_commit_id: String
original_position: Int
path: String
position: Int
pull_request_review_id: BigInt
pull_request_url: String
resolver: User
updated_at: DateTime
user: User
}
"""
PullReviewRequestOptions are options to add or remove pull review requests
"""
input PullReviewRequestOptions_Input {
reviewers: [String]
team_reviewers: [String]
}
"""PushMirror represents information of a push mirror"""
type PushMirror {
created: String
interval: String
last_error: String
last_update: String
remote_address: String
remote_name: String
repo_name: String
sync_on_commit: Boolean
}
type Query {
"""Gets the tag object of an annotated tag (not lightweight tags)"""
GetAnnotatedTag(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""
sha of the tag. The Git tags API only supports annotated tag objects, not lightweight tags.
"""
sha: String!
): AnnotatedTag
"""Gets the blob of a repository."""
GetBlob(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""sha of the commit"""
sha: String!
): GitBlobResponse
"""Gets the tree of a repository."""
GetTree(
"""owner of the repo"""
owner: String!
"""
page number; the 'truncated' field in the response will be true if there are still more items after this page, false if the last page
"""
page: Int
"""number of items per page"""
per_page: Int
"""show all directories and files"""
recursive: Boolean
"""name of the repo"""
repo: String!
"""sha of the commit"""
sha: String!
): GitTreeResponse
"""Returns the Person actor for a user"""
activitypubPerson(
"""user ID of the user"""
user_id: Int!
): ActivityPub
"""List cron tasks"""
adminCronList(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Cron]
"""List all organizations"""
adminGetAllOrgs(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Organization]
"""List all users"""
adminGetAllUsers(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [User]
"""Get a hook"""
adminGetHook(
"""id of the hook to get"""
id: BigInt!
): Hook
"""List system's webhooks"""
adminListHooks(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Hook]
"""List unadopted repositories"""
adminUnadoptedList(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""pattern of repositories to search for"""
pattern: String
): [String]
"""List installed apps"""
apps: apps_200_response
"""Get installed app"""
apps_by_appid: App
"""Return a list of all backups for this app"""
apps_by_appid_backups(page: Int = 1, per_page: Int = 25): apps_by_appid_backups_200_response
"""
For format `plain` simple text lines are returned. When format is `json` each log line looks like `{ realtimeTimestamp: timestamp, message: message, source: appId }`
"""
apps_by_appid_logs(
format: queryInput_apps_by_appid_logs_format = json
"""Number of log lines to fetch. Starting at latest."""
lines: String = "10"
): String
"""
A logstream is of type [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource). For format `plain` simple text lines are returned. When format is `json` each log line looks like `{ realtimeTimestamp: timestamp, message: message, source: appId }`
"""
apps_by_appid_logstream(
format: queryInput_apps_by_appid_logstream_format = json
"""Number of log lines to fetch. Starting at latest."""
lines: String = "10"
): String
"""Get Subscription"""
appstore_subscription: appstore_subscription_200_response
"""List Backups"""
backups(page: Int = 1, per_page: Int = 25): backups_200_response
"""Public route to get status information for this Cloudron."""
cloudron_status: cloudron_status_200_response
"""This config object contains the platform configuration."""
config: config_200_response
"""Get all domains"""
domains: domains_200_response
"""Get Domain"""
domains_by_domain(
"""Domain"""
domain: String!
): domains_by_domain_200_response
"""Check DNS Records"""
domains_by_domain_dns_check(
"""Domain"""
domain: String!
"""The subdomain to check the DNS record for"""
subdomain: String
): domains_by_domain_dns_check_200_response
"""Get instance's global settings for api"""
getGeneralAPISettings: GeneralAPISettings
"""Get instance's global settings for Attachment"""
getGeneralAttachmentSettings: GeneralAttachmentSettings
"""Get instance's global settings for repositories"""
getGeneralRepositorySettings: GeneralRepoSettings
"""Get instance's global settings for ui"""
getGeneralUISettings: GeneralUISettings
"""Returns the nodeinfo of the Gitea application"""
getNodeInfo: NodeInfo
"""Gets a package"""
getPackage(
"""name of the package"""
name: String!
"""owner of the package"""
owner: String!
"""type of the package"""
type: String!
"""version of the package"""
version: String!
): Package
"""Get default signing-key.gpg"""
getSigningKey: String
"""Get user settings"""
getUserSettings: [UserSettings]
"""Get a Token to verify"""
getVerificationToken: String
"""Returns the version of the Gitea application"""
getVersion: ServerVersion
"""List groups"""
groups: groups_200_response
"""Get group"""
groups_by_groupId(
"""Group ID"""
groupId: String!
): GroupWithMembers
"""Check if user is subscribed to an issue"""
issueCheckSubscription(
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): WatchInfo
"""Get a comment"""
issueGetComment(
"""id of the comment"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): issueGetComment_response
"""Get a list of reactions from a comment of an issue"""
issueGetCommentReactions(
"""id of the comment to edit"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Reaction]
"""List all comments on an issue"""
issueGetComments(
"""
if provided, only comments updated before the provided time are returned.
"""
before: DateTime
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""
if provided, only comments updated since the specified time are returned.
"""
since: DateTime
): [Comment]
"""List all comments and events on an issue"""
issueGetCommentsAndTimeline(
"""
if provided, only comments updated before the provided time are returned.
"""
before: DateTime
"""index of the issue"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""
if provided, only comments updated since the specified time are returned.
"""
since: DateTime
): [TimelineComment]
"""Get an issue"""
issueGetIssue(
"""index of the issue to get"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Issue
"""Get an issue attachment"""
issueGetIssueAttachment(
"""id of the attachment to get"""
attachment_id: BigInt!
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Get a comment attachment"""
issueGetIssueCommentAttachment(
"""id of the attachment to get"""
attachment_id: BigInt!
"""id of the comment"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Get a list reactions of an issue"""
issueGetIssueReactions(
"""index of the issue"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Reaction]
"""Get a single label"""
issueGetLabel(
"""id of the label to get"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Label
"""Get an issue's labels"""
issueGetLabels(
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Label]
"""Get a milestone"""
issueGetMilestone(
"""the milestone to get, identified by ID and if not available by name"""
id: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Milestone
"""Get all of a repository's opened milestones"""
issueGetMilestonesList(
"""page size of results"""
limit: Int
"""filter by milestone name"""
name: String
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""
Milestone state, Recognized values are open, closed and all. Defaults to "open"
"""
state: String
): [Milestone]
"""List all comments in a repository"""
issueGetRepoComments(
"""
if provided, only comments updated before the provided time are returned.
"""
before: DateTime
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""
if provided, only comments updated since the provided time are returned.
"""
since: DateTime
): [Comment]
"""List issue's attachments"""
issueListIssueAttachments(
"""index of the issue"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Attachment]
"""List comment's attachments"""
issueListIssueCommentAttachments(
"""id of the comment"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Attachment]
"""List a repository's issues"""
issueListIssues(
"""Only show items for which the given user is assigned"""
assigned_by: String
"""
Only show items updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""Only show items which were created by the the given user"""
created_by: String
"""
comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded
"""
labels: String
"""page size of results"""
limit: Int
"""Only show items in which the given user was mentioned"""
mentioned_by: String
"""
comma separated list of milestone names or ids. It uses names and fall back to ids. Fetch only issues that have any of this milestones. Non existent milestones are discarded
"""
milestones: String
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""search string"""
q: String
"""name of the repo"""
repo: String!
"""
Only show items updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
state: queryInput_issueListIssues_state
type: queryInput_issueListIssues_type
): [Issue]
"""Get all of a repository's labels"""
issueListLabels(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Label]
"""Search for issues across the repositories that the user has access to"""
issueSearchIssues(
"""filter (issues / pulls) assigned to you, default is false"""
assigned: Boolean
"""
Only show notifications updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""filter (issues / pulls) created by you, default is false"""
created: Boolean
"""
comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded
"""
labels: String
"""page size of results"""
limit: Int
"""filter (issues / pulls) mentioning you, default is false"""
mentioned: Boolean
"""
comma separated list of milestone names. Fetch only issues that have any of this milestones. Non existent are discarded
"""
milestones: String
"""filter by owner"""
owner: String
"""page number of results to return (1-based)"""
page: Int
"""repository to prioritize in the results"""
priority_repo_id: BigInt
"""search string"""
q: String
"""filter pulls requesting your review, default is false"""
review_requested: Boolean
"""
Only show notifications updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
"""whether issue is open or closed"""
state: String
"""filter by team (requires organization owner parameter to be provided)"""
team: String
"""filter by type (issues / pulls) if set"""
type: String
): [Issue]
"""Get users who subscribed on an issue."""
issueSubscriptions(
"""index of the issue"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [User]
"""List an issue's tracked times"""
issueTrackedTimes(
"""
Only show times updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""index of the issue"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""
Only show times updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
"""optional filter by user (available for issue managers)"""
user: String
): [TrackedTime]
"""List a repository's forks"""
listForks(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Repository]
"""Gets all files of a package"""
listPackageFiles(
"""name of the package"""
name: String!
"""owner of the package"""
owner: String!
"""type of the package"""
type: String!
"""version of the package"""
version: String!
): [PackageFile]
"""Gets all packages of an owner"""
listPackages(
"""page size of results"""
limit: Int
"""owner of the packages"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name filter"""
q: String
type: queryInput_listPackages_type
): [Package]
"""Get Mail Domain Info"""
mail_by_domain(
"""Domain"""
domain: String!
): Domain
"""Get mailbox count."""
mail_by_domain_mailbox_count(
"""Domain"""
domain: String!
): mail_by_domain_mailbox_count_200_response
"""List mailboxes for this domain."""
mail_by_domain_mailboxes(
"""Domain"""
domain: String!
page: Int = 1
per_page: Int = 25
search: String
): mail_by_domain_mailboxes_200_response
"""Get mailbox information."""
mail_by_domain_mailboxes_by_name(
"""Domain"""
domain: String!
"""Mailbox"""
name: String!
): Mailbox
"""Get Mail Domain Status"""
mail_by_domain_status(
"""Domain"""
domain: String!
): mail_by_domain_status_200_response
"""List notifications."""
notifications(
"""Filter by acknowledged status"""
acknowledged: Boolean
page: Int = 1
per_page: Int = 25
): notifications_200_response
"""Get notification"""
notifications_by_notificationId(
"""Notification Id"""
notificationId: String!
): Notification
"""List users's notification threads"""
notifyGetList(
"""If true, show notifications marked as read. Default value is false"""
all: Boolean
"""
Only show notifications updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""
Only show notifications updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
"""
Show notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread & pinned.
"""
status_types: [String]
"""filter notifications by subject type"""
subject_type: [queryInput_notifyGetList_subject_type_items]
): [NotificationThread]
"""List users's notification threads on a specific repo"""
notifyGetRepoList(
"""If true, show notifications marked as read. Default value is false"""
all: Boolean
"""
Only show notifications updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""
Only show notifications updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
"""
Show notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread & pinned
"""
status_types: [String]
"""filter notifications by subject type"""
subject_type: [queryInput_notifyGetRepoList_subject_type_items]
): [NotificationThread]
"""Get notification thread by ID"""
notifyGetThread(
"""id of notification thread"""
id: String!
): NotificationThread
"""Check if unread notifications exist"""
notifyNewAvailable: NotificationCount
"""Get an organization"""
orgGet(
"""name of the organization to get"""
org: String!
): Organization
"""Get list of organizations"""
orgGetAll(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Organization]
"""Get a hook"""
orgGetHook(
"""id of the hook to get"""
id: BigInt!
"""name of the organization"""
org: String!
): Hook
"""Get a single label"""
orgGetLabel(
"""id of the label to get"""
id: BigInt!
"""name of the organization"""
org: String!
): Label
"""Get a team"""
orgGetTeam(
"""id of the team to get"""
id: BigInt!
): Team
"""Get user permissions in organization"""
orgGetUserPermissions(
"""name of the organization"""
org: String!
"""username of user"""
username: String!
): OrganizationPermissions
"""Check if a user is a member of an organization"""
orgIsMember(
"""name of the organization"""
org: String!
"""username of the user"""
username: String!
): Void
"""Check if a user is a public member of an organization"""
orgIsPublicMember(
"""name of the organization"""
org: String!
"""username of the user"""
username: String!
): Void
"""List the current user's organizations"""
orgListCurrentUserOrgs(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Organization]
"""List an organization's webhooks"""
orgListHooks(
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
): [Hook]
"""List an organization's labels"""
orgListLabels(
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
): [Label]
"""List an organization's members"""
orgListMembers(
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
): [User]
"""List an organization's public members"""
orgListPublicMembers(
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
): [User]
"""List an organization's repos"""
orgListRepos(
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
): [Repository]
"""List a particular member of team"""
orgListTeamMember(
"""id of the team"""
id: BigInt!
"""username of the member to list"""
username: String!
): User
"""List a team's members"""
orgListTeamMembers(
"""id of the team"""
id: BigInt!
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [User]
"""List a particular repo of team"""
orgListTeamRepo(
"""id of the team"""
id: BigInt!
"""organization that owns the repo to list"""
org: String!
"""name of the repo to list"""
repo: String!
): Repository
"""List a team's repos"""
orgListTeamRepos(
"""id of the team"""
id: BigInt!
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Repository]
"""List an organization's teams"""
orgListTeams(
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
): [Team]
"""List a user's organizations"""
orgListUserOrgs(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [Organization]
"""Check if a user is a collaborator of a repository"""
repoCheckCollaborator(
"""username of the collaborator"""
collaborator: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Check if a team is assigned to a repository"""
repoCheckTeam(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""team name"""
team: String!
): Team
"""Get a commit's diff or patch"""
repoDownloadCommitDiffOrPatch(
diffType: queryInput_repoDownloadCommitDiffOrPatch_diffType!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""SHA of the commit to get"""
sha: String!
): String
"""Get a pull request diff or patch"""
repoDownloadPullDiffOrPatch(
"""
whether to include binary file changes. if true, the diff is applicable with `git apply`
"""
binary: Boolean
diffType: queryInput_repoDownloadPullDiffOrPatch_diffType!
"""index of the pull request to get"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): String
"""Get a repository"""
repoGet(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Repository
"""Get a list of all commits from a repository"""
repoGetAllCommits(
"""page size of results (ignored if used with 'path')"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""filepath of a file/dir"""
path: String
"""name of the repo"""
repo: String!
"""SHA or branch to start listing commits from (usually 'master')"""
sha: String
"""
include diff stats for every commit (disable for speedup, default 'true')
"""
stat: Boolean
): [repoGetAllCommits_response]
"""Get an archive of a repository"""
repoGetArchive(
"""
the git reference for download with attached archive format (e.g. master.zip)
"""
archive: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""Return all users that have write access and can be assigned to issues"""
repoGetAssignees(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [User]
"""
Retrieve a specific branch from a repository, including its effective branch protection
"""
repoGetBranch(
"""branch to get"""
branch: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Branch
"""Get a specific branch protection for the repository"""
repoGetBranchProtection(
"""name of protected branch"""
name: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): BranchProtection
"""Get a repository by id"""
repoGetByID(
"""id of the repo to get"""
id: BigInt!
): Repository
"""Get a commit's combined status, by branch/tag/commit reference"""
repoGetCombinedStatusByRef(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of branch/tag/commit"""
ref: String!
"""name of the repo"""
repo: String!
): CombinedStatus
"""
Gets the metadata and contents (if a file) of an entry in a repository, or a list of entries if a dir
"""
repoGetContents(
"""path of the dir, file, symlink or submodule in the repo"""
filepath: String!
"""owner of the repo"""
owner: String!
"""
The name of the commit/branch/tag. Default the repositorys default branch (usually master)
"""
ref: String
"""name of the repo"""
repo: String!
): ContentsResponse
"""Gets the metadata of all the entries of the root dir"""
repoGetContentsList(
"""owner of the repo"""
owner: String!
"""
The name of the commit/branch/tag. Default the repositorys default branch (usually master)
"""
ref: String
"""name of the repo"""
repo: String!
): [ContentsResponse]
"""Get the EditorConfig definitions of a file in a repository"""
repoGetEditorConfig(
"""filepath of file to get"""
filepath: String!
"""owner of the repo"""
owner: String!
"""
The name of the commit/branch/tag. Default the repositorys default branch (usually master)
"""
ref: String
"""name of the repo"""
repo: String!
): JSON
"""Get a Git hook"""
repoGetGitHook(
"""id of the hook to get"""
id: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): GitHook
"""Get a hook"""
repoGetHook(
"""id of the hook to get"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Hook
"""Get available issue templates for a repository"""
repoGetIssueTemplates(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [IssueTemplate]
"""Get a repository's key by id"""
repoGetKey(
"""id of the key to get"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): DeployKey
"""Get languages and number of bytes of code written"""
repoGetLanguages(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): JSON
"""
Gets the most recent non-prerelease, non-draft release of a repository, sorted by created_at
"""
repoGetLatestRelease(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Release
"""Get a note corresponding to a single commit from a repository"""
repoGetNote(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""a git ref or commit sha"""
sha: String!
): Note
"""Get a pull request"""
repoGetPullRequest(
"""index of the pull request to get"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullRequest
"""Get commits for a pull request"""
repoGetPullRequestCommits(
"""index of the pull request to get"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Commit_contains_information_generated_from_a_Git_commit_]
"""Get changed files for a pull request"""
repoGetPullRequestFiles(
"""index of the pull request to get"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""skip to given file"""
skip_to: String
whitespace: queryInput_repoGetPullRequestFiles_whitespace
): [ChangedFile]
"""Get a specific review for a pull request"""
repoGetPullReview(
"""id of the review"""
id: BigInt!
"""index of the pull request"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PullReview
"""Get a specific review for a pull request"""
repoGetPullReviewComments(
"""id of the review"""
id: BigInt!
"""index of the pull request"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [PullReviewComment]
"""Get push mirror of the repository by remoteName"""
repoGetPushMirrorByRemoteName(
"""remote name of push mirror"""
name: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): PushMirror
"""Get a file from a repository"""
repoGetRawFile(
"""filepath of the file to get"""
filepath: String!
"""owner of the repo"""
owner: String!
"""
The name of the commit/branch/tag. Default the repositorys default branch (usually master)
"""
ref: String
"""name of the repo"""
repo: String!
): JSON
"""Get a file or it's LFS object from a repository"""
repoGetRawFileOrLFS(
"""filepath of the file to get"""
filepath: String!
"""owner of the repo"""
owner: String!
"""
The name of the commit/branch/tag. Default the repositorys default branch (usually master)
"""
ref: String
"""name of the repo"""
repo: String!
): JSON
"""Get a release"""
repoGetRelease(
"""id of the release to get"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Release
"""Get a release attachment"""
repoGetReleaseAttachment(
"""id of the attachment to get"""
attachment_id: BigInt!
"""id of the release"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Attachment
"""Get a release by tag name"""
repoGetReleaseByTag(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""tag name of the release to get"""
tag: String!
): Release
"""Get repository permissions for a user"""
repoGetRepoPermissions(
"""username of the collaborator"""
collaborator: String!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): RepoCollaboratorPermission
"""Return all users that can be requested to review in this repo"""
repoGetReviewers(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [User]
"""Get a single commit from a repository"""
repoGetSingleCommit(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""a git ref or commit sha"""
sha: String!
): Commit_contains_information_generated_from_a_Git_commit_
"""Get the tag of a repository by tag name"""
repoGetTag(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""name of tag"""
tag: String!
): Tag
"""Get a wiki page"""
repoGetWikiPage(
"""owner of the repo"""
owner: String!
"""name of the page"""
pageName: String!
"""name of the repo"""
repo: String!
): WikiPage
"""Get revisions of a wiki page"""
repoGetWikiPageRevisions(
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the page"""
pageName: String!
"""name of the repo"""
repo: String!
): WikiCommitList
"""Get all wiki pages"""
repoGetWikiPages(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [WikiPageMetaData]
"""Get specified ref or filtered repository's refs"""
repoListAllGitRefs(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Reference_represents_a_Git_reference_]
"""List branch protections for a repository"""
repoListBranchProtection(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [BranchProtection]
"""List a repository's branches"""
repoListBranches(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Branch]
"""List a repository's collaborators"""
repoListCollaborators(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [User]
"""List the Git hooks in a repository"""
repoListGitHooks(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [GitHook]
"""Get specified ref or filtered repository's refs"""
repoListGitRefs(
"""owner of the repo"""
owner: String!
"""part or full name of the ref"""
ref: String!
"""name of the repo"""
repo: String!
): [Reference_represents_a_Git_reference_]
"""List the hooks in a repository"""
repoListHooks(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Hook]
"""List a repository's keys"""
repoListKeys(
"""fingerprint of the key"""
fingerprint: String
"""the key_id to search for"""
key_id: Int
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [DeployKey]
"""List a repo's pull requests"""
repoListPullRequests(
"""Label IDs"""
labels: [BigInt]
"""page size of results"""
limit: Int
"""ID of the milestone"""
milestone: BigInt
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
sort: queryInput_repoListPullRequests_sort
state: queryInput_repoListPullRequests_state
): [PullRequest]
"""List all reviews for a pull request"""
repoListPullReviews(
"""index of the pull request"""
index: BigInt!
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [PullReview]
"""Get all push mirrors of the repository"""
repoListPushMirrors(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [PushMirror]
"""List release's attachments"""
repoListReleaseAttachments(
"""id of the release"""
id: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Attachment]
"""List a repo's releases"""
repoListReleases(
"""
filter (exclude / include) drafts, if you dont have repo write access none will show
"""
draft: Boolean
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""page size of results, deprecated - use limit"""
per_page: Int
"""filter (exclude / include) pre-releases"""
pre_release: Boolean
"""name of the repo"""
repo: String!
): [Release]
"""List a repo's stargazers"""
repoListStargazers(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [User]
"""Get a commit's statuses"""
repoListStatuses(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""sha of the commit"""
sha: String!
sort: queryInput_repoListStatuses_sort
state: queryInput_repoListStatuses_state
): [CommitStatus]
"""Get a commit's statuses, by branch/tag/commit reference"""
repoListStatusesByRef(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of branch/tag/commit"""
ref: String!
"""name of the repo"""
repo: String!
sort: queryInput_repoListStatusesByRef_sort
state: queryInput_repoListStatusesByRef_state
): [CommitStatus]
"""List a repo's watchers"""
repoListSubscribers(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [User]
"""List a repository's tags"""
repoListTags(
"""page size of results, default maximum page size is 50"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): [Tag]
"""List a repository's teams"""
repoListTeams(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): [Team]
"""Get list of topics that a repository has"""
repoListTopics(
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
): TopicName
"""Check if a pull request has been merged"""
repoPullRequestIsMerged(
"""index of the pull request"""
index: BigInt!
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Search for repositories"""
repoSearch(
"""show only archived, non-archived or all repositories (defaults to all)"""
archived: Boolean
"""if `uid` is given, search only for repos that the user owns"""
exclusive: Boolean
"""include search of keyword within repository description"""
includeDesc: Boolean
"""show only pubic, private or all repositories (defaults to all)"""
is_private: Boolean
"""page size of results"""
limit: Int
"""
type of repository to search for. Supported values are "fork", "source", "mirror" and "collaborative"
"""
mode: String
"""
sort order, either "asc" (ascending) or "desc" (descending). Default is "asc", ignored if "sort" is not specified.
"""
order: String
"""page number of results to return (1-based)"""
page: Int
"""repo owner to prioritize in the results"""
priority_owner_id: BigInt
"""
include private repositories this user has access to (defaults to true)
"""
private: Boolean
"""keyword"""
q: String
"""
sort repos by attribute. Supported values are "alpha", "created", "updated", "size", and "id". Default is "alpha"
"""
sort: String
"""search only for repos that the user with the given id has starred"""
starredBy: BigInt
"""search only for repos that belong to the given team id"""
team_id: BigInt
"""
include template repositories this user has access to (defaults to true)
"""
template: Boolean
"""Limit search to repositories with keyword as topic"""
topic: Boolean
"""
search only for repos that the user with the given id owns or contributes to
"""
uid: BigInt
): SearchResults
"""Get signing-key.gpg for given repository"""
repoSigningKey(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): String
"""List a repo's tracked times"""
repoTrackedTimes(
"""
Only show times updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""page size of results"""
limit: Int
"""owner of the repo"""
owner: String!
"""page number of results to return (1-based)"""
page: Int
"""name of the repo"""
repo: String!
"""
Only show times updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
"""optional filter by user (available for issue managers)"""
user: String
): [TrackedTime]
"""Get Services"""
services: services_200_response
"""Get Service"""
services_by_service(service: ServiceName_parameter!): Service
"""Get Service Logs"""
services_by_service_logs(service: ServiceName_parameter!): File
"""
The log stream is in [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) format
"""
services_by_service_logstream(service: ServiceName_parameter!): JSON
"""Get Apps Autoupdate Pattern"""
settings_app_autoupdate_pattern: UpdatePattern
"""Get Backup Config"""
settings_backup_config: BackupConfig
"""
Gets the pattern that the Cloudron uses to automatically update itself and installed apps. Patterns are matched based on the Cloudron's timezone.
"""
settings_box_autoupdate_pattern: UpdatePattern
"""Get Cloudron Avatar"""
settings_cloudron_avatar: File
"""Get Cloudron Name"""
settings_cloudron_name: CloudronNameConfig
"""Get Dynamic DNS State"""
settings_dynamic_dns: settings_dynamic_dns_200_response
"""Get External LDAP Config"""
settings_external_ldap_config: ExternalLdapConfig
"""Get Platform Config"""
settings_platform_config: PlatformConfig
"""Get Registry Config"""
settings_registry_config: RegistryConfig
"""Get Sysinfo Config"""
settings_sysinfo_config: SysinfoConfig
"""Get Timezone"""
settings_time_zone: TimezoneConfig
"""Get Unstable Apps State"""
settings_unstable_apps: settings_unstable_apps_200_response
"""List Tasks"""
tasks(page: Int = 1, per_page: Int = 25, type: queryInput_tasks_type): tasks_200_response
"""Get Task"""
tasks_by_taskId(
"""Task ID"""
taskId: Int!
): Task
"""Get Task Logs"""
tasks_by_taskId_logs(
"""Task ID"""
taskId: Int!
): File
"""
The log stream is in [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) format
"""
tasks_by_taskId_logstream(
"""Task ID"""
taskId: Int!
): JSON
"""Search for teams within an organization"""
teamSearch(
"""include search within team description (defaults to true)"""
include_desc: Boolean
"""page size of results"""
limit: Int
"""name of the organization"""
org: String!
"""page number of results to return (1-based)"""
page: Int
"""keywords to search"""
q: String
): teamSearch_200_response
"""search topics via keyword"""
topicSearch(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""keywords to search"""
q: String!
): [TopicResponse]
"""Check if one user is following another user"""
userCheckFollowing(
"""username of followed user"""
target: String!
"""username of following user"""
username: String!
): Void
"""Check whether a user is followed by the authenticated user"""
userCurrentCheckFollowing(
"""username of followed user"""
username: String!
): Void
"""Whether the authenticated is starring the repo"""
userCurrentCheckStarring(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): Void
"""Check if the current user is watching a repo"""
userCurrentCheckSubscription(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
): WatchInfo
"""Get a GPG key"""
userCurrentGetGPGKey(
"""id of key to get"""
id: BigInt!
): GPGKey
"""Get a public key"""
userCurrentGetKey(
"""id of key to get"""
id: BigInt!
): PublicKey
"""List the authenticated user's followers"""
userCurrentListFollowers(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [User]
"""List the users that the authenticated user is following"""
userCurrentListFollowing(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [User]
"""List the authenticated user's GPG keys"""
userCurrentListGPGKeys(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [GPGKey]
"""List the authenticated user's public keys"""
userCurrentListKeys(
"""fingerprint of the key"""
fingerprint: String
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [PublicKey]
"""List the repos that the authenticated user owns"""
userCurrentListRepos(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Repository]
"""The repos that the authenticated user has starred"""
userCurrentListStarred(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Repository]
"""List repositories watched by the authenticated user"""
userCurrentListSubscriptions(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Repository]
"""List the current user's tracked times"""
userCurrentTrackedTimes(
"""
Only show times updated before the given time. This is a timestamp in RFC 3339 format
"""
before: DateTime
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""
Only show times updated after the given time. This is a timestamp in RFC 3339 format
"""
since: DateTime
): [TrackedTime]
"""Get a user"""
userGet(
"""username of user to get"""
username: String!
): User
"""Get the authenticated user"""
userGetCurrent: User
"""Get a user's heatmap"""
userGetHeatmapData(
"""username of user to get"""
username: String!
): [UserHeatmapData]
"""get an OAuth2 Application"""
userGetOAuth2Application(
"""Application ID to be found"""
id: BigInt!
): OAuth2Application_represents_an_OAuth2_application_
"""List the authenticated user's oauth2 applications"""
userGetOauth2Application(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [OAuth2Application_represents_an_OAuth2_application_]
"""Get list of all existing stopwatches"""
userGetStopWatches(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [StopWatch]
"""List the authenticated user's access tokens"""
userGetTokens(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [AccessToken_represents_an_API_access_token_]
"""List the authenticated user's email addresses"""
userListEmails: [Email]
"""List the given user's followers"""
userListFollowers(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [User]
"""List the users that the given user is following"""
userListFollowing(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [User]
"""List the given user's GPG keys"""
userListGPGKeys(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [GPGKey]
"""List the given user's public keys"""
userListKeys(
"""fingerprint of the key"""
fingerprint: String
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [PublicKey]
"""List the repos owned by the given user"""
userListRepos(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [Repository]
"""The repos that the given user has starred"""
userListStarred(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of user"""
username: String!
): [Repository]
"""List the repositories watched by a user"""
userListSubscriptions(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""username of the user"""
username: String!
): [Repository]
"""List all the teams a user belongs to"""
userListTeams(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
): [Team]
"""Search for users"""
userSearch(
"""page size of results"""
limit: Int
"""page number of results to return (1-based)"""
page: Int
"""keyword"""
q: String
"""ID of the user to search for"""
uid: BigInt
): userSearch_200_response
"""List a user's tracked times in a repo"""
userTrackedTimes(
"""owner of the repo"""
owner: String!
"""name of the repo"""
repo: String!
"""username of user"""
user: String!
): [TrackedTime]
"""Get all users"""
users(page: Int = 1, per_page: Int = 25, search: String): users_200_response
"""Get user"""
users_by_userId(
"""User ID"""
userId: String!
): User
"""
Get an invite link. This will create a new one, if the previous is expired. This only works for local users, not LDAP/ActiveDirectory users.
"""
users_by_userId_invite_link(
"""User ID"""
userId: String!
): users_by_userId_invite_link_200_response
}
"""Reaction contain one reaction"""
type Reaction {
content: String
created_at: DateTime
user: User
}
type Reference_represents_a_Git_reference_ {
object: GitObject_represents_a_Git_object_
ref: String
url: String
}
type RegistryConfig {
email: EmailAddress
password: String
serverAddress: String!
username: String
}
input RegistryConfig_Input {
email: EmailAddress
password: String
serverAddress: String!
username: String
}
"""Release represents a repository release"""
type Release {
assets: [Attachment]
author: User
body: String
created_at: DateTime
draft: Boolean
html_url: String
id: BigInt
name: String
prerelease: Boolean
published_at: DateTime
tag_name: String
tarball_url: String
target_commitish: String
url: String
zipball_url: String
}
"""
RepoCollaboratorPermission to get repository permission for a collaborator
"""
type RepoCollaboratorPermission {
permission: String
role_name: String
user: User
}
type RepoCommit_contains_information_of_a_commit_in_the_context_of_a_repository_ {
author: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
committer: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
message: String
tree: CommitMeta_contains_meta_information_of_a_commit_in_terms_of_API_
url: String
verification: PayloadCommitVerification
}
"""RepoTopicOptions a collection of repo topic names"""
input RepoTopicOptions_Input {
"""list of topic names"""
topics: [String]
}
"""RepoTransfer represents a pending repo transfer"""
type RepoTransfer {
doer: User
recipient: User
teams: [Team]
}
"""Repository represents a repository"""
type Repository {
allow_merge_commits: Boolean
allow_rebase: Boolean
allow_rebase_explicit: Boolean
allow_rebase_update: Boolean
allow_squash_merge: Boolean
archived: Boolean
avatar_url: String
clone_url: String
created_at: DateTime
default_allow_maintainer_edit: Boolean
default_branch: String
default_delete_branch_after_merge: Boolean
default_merge_style: String
description: String
empty: Boolean
external_tracker: ExternalTracker
external_wiki: ExternalWiki
fork: Boolean
forks_count: BigInt
full_name: String
has_issues: Boolean
has_projects: Boolean
has_pull_requests: Boolean
has_wiki: Boolean
html_url: String
id: BigInt
ignore_whitespace_conflicts: Boolean
internal: Boolean
internal_tracker: InternalTracker
language: String
languages_url: String
link: String
mirror: Boolean
mirror_interval: String
mirror_updated: DateTime
name: String
open_issues_count: BigInt
open_pr_counter: BigInt
original_url: String
owner: User
"""Repository represents a repository"""
parent: Repository
permissions: Permission
private: Boolean
release_counter: BigInt
repo_transfer: RepoTransfer
size: BigInt
ssh_url: String
stars_count: BigInt
template: Boolean
updated_at: DateTime
watchers_count: BigInt
website: String
}
"""RepositoryMeta basic repository information"""
type RepositoryMeta {
full_name: String
id: BigInt
name: String
owner: String
}
"""SearchResults results of a successful search"""
type SearchResults {
data: [Repository]
ok: Boolean
}
"""ServerVersion wraps the version of the server"""
type ServerVersion {
version: String
}
type Service {
config: query_services_by_service_config
error: String
memoryPercent: Int
memoryUsed: Int
name: query_services_by_service_name
status: query_services_by_service_status
}
"""Service Name"""
enum ServiceName_parameter {
docker
graphite
mail
mongodb
mysql
nginx
postgresql
sftp
unbound
}
"""StopWatch represent a running stopwatch"""
type StopWatch {
created: DateTime
duration: String
issue_index: BigInt
issue_title: String
repo_name: String
repo_owner_name: String
seconds: BigInt
}
"""SubmitPullReviewOptions are options to submit a pending pull review"""
input SubmitPullReviewOptions_Input {
body: String
"""ReviewStateType review state type"""
event: String
}
input SysConfig_Input {
provider: mutationInput_post_cloudron_setup_input_domainConfig_sysinfoConfig_provider
}
type SysinfoConfig {
"""Only applies to the `network-interface` provider"""
ifname: String
"""Only applies to the `fixed` provider"""
ip: String
provider: mutationInput_post_cloudron_restore_input_sysinfoConfig_provider!
}
input SysinfoConfig_Input {
"""Only applies to the `network-interface` provider"""
ifname: String
"""Only applies to the `fixed` provider"""
ip: String
provider: mutationInput_post_cloudron_restore_input_sysinfoConfig_provider! = generic
}
"""Tag represents a repository tag"""
type Tag {
commit: CommitMeta_contains_meta_information_of_a_commit_in_terms_of_API_
id: String
message: String
name: String
tarball_url: String
zipball_url: String
}
type Task {
"""
Determines if this task is currently active. Progress can be tracked with `message` and `percent`
"""
active: Boolean
"""Creation time UTC timestamp"""
creationTime: Int
error: query_tasks_tasks_items_error
id: Int
"""For display purpose to show more informed progress"""
message: String
percent: NonNegativeInt
result: JSON
"""
Determines if the task was successful. If `false` check `error` or `active` properties.
"""
success: Boolean
"""Last modified UTC timestamp"""
ts: Int
type: TaskType
}
enum TaskType {
app
backup
cleanBackups
prepareDashboardDomain
renewcerts
syncExternalLdap
update
}
"""Team represents a team in an organization"""
type Team {
can_create_org_repo: Boolean
description: String
id: BigInt
includes_all_repositories: Boolean
name: String
organization: Organization
permission: query_notifyGetList_items_repository_repo_transfer_teams_items_permission
units: [String]
units_map: query_notifyGetList_items_repository_repo_transfer_teams_items_units_map
}
"""
TimelineComment represents a timeline comment (comment of any type) on a commit or issue
"""
type TimelineComment {
assignee: User
assignee_team: Team
body: String
created_at: DateTime
dependent_issue: Issue
html_url: String
id: BigInt
issue_url: String
label: Label
milestone: Milestone
new_ref: String
new_title: String
old_milestone: Milestone
old_project_id: BigInt
old_ref: String
old_title: String
project_id: BigInt
pull_request_url: String
ref_action: String
ref_comment: Comment
"""commit SHA where issue/PR was referenced"""
ref_commit_sha: String
ref_issue: Issue
"""whether the assignees were removed or added"""
removed_assignee: Boolean
resolve_doer: User
review_id: BigInt
tracked_time: TrackedTime
type: String
updated_at: DateTime
user: User
}
type TimezoneConfig {
"""
Timezone is automatically set based on the IP address from where the Cloudron was activated. This timezone is used with the auto update pattern to trigger updates at the correct time. See the [Tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) for a list of valid values.
"""
timeZone: String!
}
input TimezoneConfig_Input {
"""
Timezone is automatically set based on the IP address from where the Cloudron was activated. This timezone is used with the auto update pattern to trigger updates at the correct time. See the [Tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) for a list of valid values.
"""
timeZone: String! = "America/Los_Angeles"
}
input TlsConfig_Input {
provider: mutationInput_post_cloudron_setup_input_domainConfig_tlsConfig_provider
wildcard: Boolean
}
"""TopicName a list of repo topic names"""
type TopicName {
topics: [String]
}
"""TopicResponse for returning topics"""
type TopicResponse {
created: DateTime
id: BigInt
repo_count: BigInt
topic_name: String
updated: DateTime
}
"""TrackedTime worked time for an issue / pr"""
type TrackedTime {
created: DateTime
id: BigInt
issue: Issue
"""deprecated (only for backwards compatibility)"""
issue_id: BigInt
"""Time in seconds"""
time: BigInt
"""deprecated (only for backwards compatibility)"""
user_id: BigInt
user_name: String
}
"""TransferRepoOption options when transfer a repository's ownership"""
input TransferRepoOption_Input {
new_owner: String!
"""
ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories.
"""
team_ids: [BigInt]
}
"""
A field whose value conforms to the standard URL format as specified in RFC3986: https://www.ietf.org/rfc/rfc3986.txt.
"""
scalar URL
"""
UpdateFileOptions options for updating files
Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
"""
input UpdateFileOptions_Input {
author: Identity_Input
"""
branch (optional) to base this file from. if not given, the default branch is used
"""
branch: String
committer: Identity_Input
"""content must be base64 encoded"""
content: String!
dates: CommitDateOptions_Input
"""
from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL
"""
from_path: String
"""
message (optional) for the commit of this file. if not supplied, a default message will be used
"""
message: String
"""
new_branch (optional) will make a new branch from `branch` before creating the file
"""
new_branch: String
"""sha is the SHA for the file that already exists"""
sha: String!
"""
Add a Signed-off-by trailer by the committer at the end of the commit log message.
"""
signoff: Boolean
}
type UpdatePattern {
"""
The format listed in the [node-cron](https://github.com/ncb000gt/node-cron#cron-ranges) page. Note that unlike classic crontab format, the pattern contains seconds as the first part. Setting pattern to `never` disables auto update. Some examples of patterns are
* `00 00 1,3,5,23 * * *` would run updates at 1am, 3am, 5am, 11pm every night.
* `0 030 4 1,15 * 5` would run updates at 4:30 am on the 1st and 15th of each month, plus every Friday.
"""
pattern: String!
}
input UpdatePattern_Input {
"""
The format listed in the [node-cron](https://github.com/ncb000gt/node-cron#cron-ranges) page. Note that unlike classic crontab format, the pattern contains seconds as the first part. Setting pattern to `never` disables auto update. Some examples of patterns are
* `00 00 1,3,5,23 * * *` would run updates at 1am, 3am, 5am, 11pm every night.
* `0 030 4 1,15 * 5` would run updates at 4:30 am on the 1st and 15th of each month, plus every Friday.
"""
pattern: String!
}
type User {
active: Boolean
admin: Boolean
"""URL to the user's avatar"""
avatar_url: String
created: DateTime
"""the user's description"""
description: String
displayName: String
email: EmailAddress
fallbackEmail: EmailAddress
"""user counts"""
followers_count: BigInt
following_count: BigInt
"""the user's full name"""
full_name: String
groupIds: [JSON]
id: String
"""Is the user an administrator"""
is_admin: Boolean
"""User locale"""
language: String
last_login: DateTime
"""the user's location"""
location: String
"""the user's username"""
login: String
"""the user's authentication sign-in name."""
login_name: String
"""Is user login prohibited"""
prohibit_login: Boolean
"""Is user restricted"""
restricted: Boolean
source: mutation_post_users_source
starred_repos_count: BigInt
username: String
"""User visibility level option: public, limited, private"""
visibility: String
"""the user's website"""
website: String
}
"""UserHeatmapData represents the data needed to create a heatmap"""
type UserHeatmapData {
contributions: BigInt
"""TimeStamp defines a timestamp"""
timestamp: BigInt
}
"""UserSettings represents user settings"""
type UserSettings {
description: String
diff_view_style: String
full_name: String
hide_activity: Boolean
"""Privacy"""
hide_email: Boolean
language: String
location: String
theme: String
website: String
}
"""UserSettingsOptions represents options to change user settings"""
input UserSettingsOptions_Input {
description: String
diff_view_style: String
full_name: String
hide_activity: Boolean
"""Privacy"""
hide_email: Boolean
language: String
location: String
theme: String
website: String
}
"""Represents empty values"""
scalar Void
type Void_container {
Void: Void
}
"""WatchInfo represents an API watch status of one repository"""
type WatchInfo {
created_at: DateTime
ignored: Boolean
reason: JSON
repository_url: String
subscribed: Boolean
url: String
}
"""WikiCommit page commit/revision"""
type WikiCommit {
author: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
commiter: CommitUser_contains_information_of_a_user_in_the_context_of_a_commit_
message: String
sha: String
}
"""WikiCommitList commit/revision list"""
type WikiCommitList {
commits: [WikiCommit]
count: BigInt
}
"""WikiPage a wiki page"""
type WikiPage {
commit_count: BigInt
"""Page content, base64 encoded"""
content_base64: String
footer: String
html_url: String
last_commit: WikiCommit
sidebar: String
sub_url: String
title: String
}
"""WikiPageMetaData wiki page meta information"""
type WikiPageMetaData {
html_url: String
last_commit: WikiCommit
sub_url: String
title: String
}
type apps_200_response {
apps: [App]
}
type apps_by_appid_backups_200_response {
backups: [query_apps_by_appid_backups_backups_items]
}
type appstore_subscription_200_response {
cancel_at: DateTime
canceled_at: DateTime
cloudronCreatedAt: DateTime
cloudronId: String
current_period_end: DateTime
email: EmailAddress
features: String
plan: String
status: String
}
type backups_200_response {
backups: [query_backups_backups_items]
}
type cloudron_status_200_response {
"""
Indicates if this Cloudron was already activated. This is true once the first user was created during setup.
"""
activated: Boolean
"""The FQDN of the Cloudron dashboard"""
adminFqdn: String
"""The API endpoint to make App Store requests"""
apiServerOrigin: URL
"""Name of the Cloudron used in the login screen, nav bar"""
cloudronName: String
"""Markdown formatted footer content"""
footer: String
provider: Provider
restore: query_cloudron_status_restore
setup: query_cloudron_status_setup
"""Cloudron version"""
version: String
"""The Web endpoint for App Store assets (docs, images, etc)"""
webServerOrigin: URL
}
type config_200_response {
"""
The main domain for this Cloudron. `adminFqdn` and `mailFqdn` depend on this
"""
adminDomain: String
"""Subdomain where the dashboard is reachable."""
adminFqdn: String
apiServerOrigin: String
"""Same as /api/v1/settings/clouron_name"""
cloudronName: String
isDemo: Boolean
"""Subdomain where the mail server is reachable."""
mailFqdn: String
provider: Provider
uiSpec: JSON
"""Cloudron version"""
version: String
webServerOrigin: String
}
input delete_mail_by_domain_mailboxes_by_name_request_Input {
"""Also delete emails in mailbox."""
deleteMails: Boolean
}
type domains_200_response {
domains: [JSON]
}
type domains_by_domain_200_response {
config: query_domains_by_domain_config
domain: String
fallbackCertificate: query_domains_by_domain_fallbackCertificate
locked: Boolean
provider: String
tlsConfig: query_domains_by_domain_tlsConfig
zoneName: String
}
type domains_by_domain_dns_check_200_response {
needsOverwrite: Boolean
}
type groups_200_response {
groups: [Group]
}
union issueEditCommentDeprecated_response = Comment | Void_container
union issueEditComment_response = Comment | Void_container
union issueGetComment_response = Comment | Void_container
type mail_by_domain_mailbox_count_200_response {
count: Float
}
type mail_by_domain_mailboxes_200_response {
mailboxes: [Mailbox]
}
type mail_by_domain_status_200_response {
dns: query_mail_by_domain_status_dns
rbl: query_mail_by_domain_status_rbl
relay: query_mail_by_domain_status_relay
}
enum mutationInput_adminCreateHook_input_type {
dingtalk
discord
feishu
gitea
gogs
msteams
packagist
slack
telegram
wechatwork
}
"""possible values are `public` (default), `limited` or `private`"""
enum mutationInput_adminCreateOrg_input_visibility {
limited
private
public
}
"""TrustModel of the repository"""
enum mutationInput_adminCreateRepo_input_trust_model {
collaborator
collaboratorcommitter
committer
default
}
enum mutationInput_issueCreateMilestone_input_state {
closed
open
}
enum mutationInput_orgCreateTeam_input_permission {
admin
read
write
}
input mutationInput_orgCreateTeam_input_units_map_Input {
repo_code: String
repo_ext_issues: String
repo_ext_wiki: String
repo_issues: String
repo_projects: String
repo_pulls: String
repo_releases: String
repo_wiki: String
}
enum mutationInput_orgEditTeam_input_permission {
admin
read
write
}
input mutationInput_orgEditTeam_input_units_map_Input {
repo_code: String
repo_ext_issues: String
repo_ext_wiki: String
repo_issues: String
repo_projects: String
repo_pulls: String
repo_releases: String
repo_wiki: String
}
"""possible values are `public`, `limited` or `private`"""
enum mutationInput_orgEdit_input_visibility {
limited
private
public
}
"""only for gcs provider"""
type mutationInput_post_cloudron_restore_input_backupConfig_credentials {
client_email: String
private_key: String
}
"""only for gcs provider"""
input mutationInput_post_cloudron_restore_input_backupConfig_credentials_Input {
client_email: String
private_key: String
}
enum mutationInput_post_cloudron_restore_input_backupConfig_provider {
digitalocean_spaces
exoscale_sos
filesystem
gcs
minio
noop
s3
s3_v4_compat
scaleway_objectstorage
wasabi
}
enum mutationInput_post_cloudron_restore_input_sysinfoConfig_provider {
fixed
generic
network_interface
}
input mutationInput_post_cloudron_setup_input_domainConfig_Input {
config: mutationInput_post_cloudron_setup_input_domainConfig_config_Input!
domain: String!
provider: DnsProvider!
sysinfoConfig: SysConfig_Input
tlsConfig: TlsConfig_Input
zoneName: String
}
"""
DNS provider specific configuration, for example API tokens and secrets
"""
input mutationInput_post_cloudron_setup_input_domainConfig_config_Input {
token: String
}
"""
Currently the sysinfo provider is only used to determine the public IP of the server. Which in turn is used in the DNS logic to setup records.
"""
enum mutationInput_post_cloudron_setup_input_domainConfig_sysinfoConfig_provider {
fixed
generic
network_interface
}
enum mutationInput_post_cloudron_setup_input_domainConfig_tlsConfig_provider {
fallback
letsencrypt_prod
letsencrypt_staging
}
input mutationInput_post_domains_input_allOf_1_fallbackCertificate_Input {
cert: String
key: String
}
enum mutationInput_post_settings_external_ldap_config_input_provider {
ad
jumpcloud
noop
okta
other
}
enum mutationInput_repoMergePullRequest_input_Do {
manually_merged
merge
rebase
rebase_merge
squash
}
enum mutationInput_repoMigrate_input_service {
git
gitea
github
gitlab
}
"""how to update pull request"""
enum mutationInput_repoUpdatePullRequest_style {
merge
rebase
}
"""
A value of `ldap` indicates, this user if from an LDAP/ActiveDirectory user, otherwise a local user
"""
enum mutation_post_users_source {
_
ldap
}
type notifications_200_response {
notifications: [Notification]
}
type post_apps_by_appid_backup_202_response {
"""taskId to track backup process via the task API"""
taskId: String
}
input post_apps_by_appid_backups_by_backupId_request_Input {
"""
Time to keep this backup in seconds (1 week is 604800 seconds). This number + `creationTime` determines if a backup is kept or removed
"""
preserveSecs: Int
}
type post_apps_by_appid_clone_201_response {
"""appId of the newly created clone instance"""
id: String
"""taskId to track clone process via the task API"""
taskId: String
}
input post_apps_by_appid_clone_request_Input {
"""BackupID of the backup the clone should be based off"""
backupId: String!
"""domain"""
domain: String!
overwriteDns: Boolean
portBindings: PortBindings_Input = {}
"""skipping DNS setup allows dry-runs for backup/restore testing"""
skipDnsSetup: Boolean
"""subdomain"""
subdomain: String!
}
input post_apps_by_appid_configure_access_restriction_request_Input {
accessRestriction: AccessRestriction_Input!
}
type post_apps_by_appid_configure_automatic_backup_202_response {
"""taskId to track start process via the task API"""
taskId: String
}
input post_apps_by_appid_configure_automatic_backup_request_Input {
"""true/false to enable or disable the automatic backup"""
enable: JSON!
}
type post_apps_by_appid_configure_location_202_response {
"""taskId to track stop process via the task API"""
taskId: String
}
input post_apps_by_appid_configure_location_request_Input {
"""list of alias domains - uncapitalized chars only"""
aliasDomains: [JSON] = []
"""
list of alternate domains redirecting to the main fqdn - uncapitalized chars only
"""
alternateDomains: [JSON] = []
"""the main domain"""
domain: String!
"""to overwrite the dns"""
overwriteDns: Boolean!
portBindings: PortBindings_Input = {}
"""the main subdomain of the app"""
subdomain: String!
}
type post_apps_by_appid_configure_memory_limit_202_response {
"""taskId to track start process via the task API"""
taskId: String
}
input post_apps_by_appid_configure_memory_limit_request_Input {
"""the memory limit in bytes"""
memoryLimit: Float!
}
type post_apps_by_appid_restart_202_response {
"""taskId to track restart process via the task API"""
taskId: String
}
type post_apps_by_appid_restore_202_response {
"""taskId to track restore process via the task API"""
taskId: String
}
input post_apps_by_appid_restore_request_Input {
"""
BackupID of the backup to restore to. The Backup ID can be obtained by listing backups of this app.
"""
backupId: String
}
type post_apps_by_appid_start_202_response {
"""taskId to track start process via the task API"""
taskId: String
}
type post_apps_by_appid_stop_202_response {
"""taskId to track stop process via the task API"""
taskId: String
}
type post_apps_by_appid_uninstall_202_response {
"""taskId to track start process via the task API"""
taskId: String
}
type post_apps_install_200_response {
id: String
taskId: String
}
input post_apps_install_request_Input {
accessRestriction: AccessRestriction_Input!
alternateDomains: [JSON] = []
appStoreId: String
domain: String!
enableAutomaticUpdate: Boolean = true
enableBackup: Boolean = true
icon: String
label: String
manifest: AppManifest_Input
"""
Memory limit as a number of `MB * 1024 * 1024`. So 600MB memory limit is 629145600
"""
memoryLimit: Int
"""
If set to `true` Cloudron will overwrite any existing DNS records. This should not be required in most cases.
"""
overwriteDns: Boolean
portBindings: PortBindings_Input = {}
"""For apps with `optionalSso` set in the manifest."""
sso: Boolean = true
"""
Subdomain the app is installed at. This may be an empty string if the app is installed directly at `domain`
"""
subdomain: String!
}
input post_appstore_register_cloudron_request_Input {
email: EmailAddress!
password: String!
"""
If `true` a new cloudron.io account will be created. If an account already exists, this request will return an error. Otherwise, this Cloudron will be assigned to the existing account.
"""
signup: Boolean!
"""
2FA token. Required when the cloudron.io account already exists and was setup with 2FA.
"""
totpToken: String
}
type post_backups_cleanup_202_response {
"""
This id can be used with the /api/v1/tasks routes to determine state and get logs
"""
taskId: Int
}
type post_backups_create_202_response {
"""
This id can be used with the /api/v1/tasks routes to determine state and get logs
"""
taskId: Int
}
type post_cloudron_activate_201_response {
"""Expiry time of token"""
expires: DateTime
"""
A token that will authenticate the user for future API requests. Pass this as `?access_token=<token>`.
"""
token: String
"""Unique ID of the created user"""
userId: String
}
input post_cloudron_activate_request_Input {
"""Full name of the user."""
displayName: String
"""Primary email of the user."""
email: EmailAddress!
"""Password. Minimum of 8 characters required."""
password: String!
"""Username. The first user is also called the Owner."""
username: String!
}
type post_cloudron_login_200_response {
expiresAt: DateTime
token: String
}
input post_cloudron_login_request_Input {
password: String!
username: String!
}
type post_cloudron_renew_certs_202_response {
"""taskId to track restart process via the task API"""
taskId: String
}
input post_cloudron_renew_certs_request_Input {
domain: String
}
input post_cloudron_restore_request_Input {
backupConfig: BackupConfig_Input!
backupId: String!
sysinfoConfig: SysinfoConfig_Input
version: String!
}
input post_cloudron_setup_request_Input {
domainConfig: mutationInput_post_cloudron_setup_input_domainConfig_Input!
}
input post_domains_request_Input {
config: JSON!
domain: String!
fallbackCertificate: mutationInput_post_domains_input_allOf_1_fallbackCertificate_Input
hyphenatedSubdomains: Boolean
provider: DnsProvider!
tlsConfig: TlsConfig_Input
wildcard: Boolean
zoneName: String
}
input post_mail_by_domain_banner_request_Input {
html: String
text: String!
}
input post_mail_by_domain_catch_all_request_Input {
addresses: [JSON]!
}
input post_mail_by_domain_mailboxes_request_Input {
name: String!
ownerId: String!
ownerType: String!
}
input post_mail_by_domain_relay_request_Input {
acceptSelfSignedCerts: Boolean
host: String
password: String
port: Float
provider: MailRelayProvider!
username: String
}
input post_mail_by_domain_send_test_mail_request_Input {
to: EmailAddress!
}
input post_services_by_service_request_Input {
memory: Int
}
input post_settings_cloudron_avatar_request_Input {
avatar: File!
}
input post_users_by_userId_password_request_Input {
password: String!
}
input post_users_by_userId_request_Input {
active: Boolean
admin: Boolean
"""If not specified, the new user will have to set it during onboarding"""
displayName: String
email: EmailAddress
fallbackEmail: EmailAddress
"""If not specified, the new user will have to set it during onboarding"""
username: String
}
input post_users_by_userId_send_invite_email_request_Input {
email: JSON!
}
input post_users_request_Input {
admin: Boolean
"""If not specified, the new user will have to set it during onboarding"""
displayName: String
email: EmailAddress!
"""If not specified, the new user will have to set it during onboarding"""
password: String
"""If not specified, the new user will have to set it during onboarding"""
username: String
}
input put_groups_by_groupId_members_request_Input {
userIds: [String]!
}
input put_users_by_userId_groups_request_Input {
groupIds: [JSON]!
}
"""Log type"""
enum queryInput_apps_by_appid_logs_format {
json
plain
}
"""Log type"""
enum queryInput_apps_by_appid_logstream_format {
json
plain
}
"""whether issue is open or closed"""
enum queryInput_issueListIssues_state {
all
closed
open
}
"""filter by type (issues / pulls) if set"""
enum queryInput_issueListIssues_type {
issues
pulls
}
"""package type filter"""
enum queryInput_listPackages_type {
cargo
chef
composer
conan
conda
container
generic
helm
maven
npm
nuget
pub
pypi
rubygems
vagrant
}
enum queryInput_notifyGetList_subject_type_items {
commit
issue
pull
repository
}
enum queryInput_notifyGetRepoList_subject_type_items {
commit
issue
pull
repository
}
"""whether the output is diff or patch"""
enum queryInput_repoDownloadCommitDiffOrPatch_diffType {
diff
patch
}
"""whether the output is diff or patch"""
enum queryInput_repoDownloadPullDiffOrPatch_diffType {
diff
patch
}
"""whitespace behavior"""
enum queryInput_repoGetPullRequestFiles_whitespace {
ignore_all
ignore_change
ignore_eol
show_all
}
"""Type of sort"""
enum queryInput_repoListPullRequests_sort {
leastcomment
leastupdate
mostcomment
oldest
priority
recentupdate
}
"""State of pull request: open or closed (optional)"""
enum queryInput_repoListPullRequests_state {
all
closed
open
}
"""type of sort"""
enum queryInput_repoListStatusesByRef_sort {
highestindex
leastindex
leastupdate
oldest
recentupdate
}
"""type of state"""
enum queryInput_repoListStatusesByRef_state {
error
failure
pending
success
warning
}
"""type of sort"""
enum queryInput_repoListStatuses_sort {
highestindex
leastindex
leastupdate
oldest
recentupdate
}
"""type of state"""
enum queryInput_repoListStatuses_state {
error
failure
pending
success
warning
}
enum queryInput_tasks_type {
app
backup
cleanBackups
prepareDashboardDomain
renewcerts
syncExternalLdap
update
}
type query_apps_by_appid_backups_backups_items {
creationTime: DateTime
"""Always an empty array for apps"""
dependsOn: [JSON]
"""Only set if encryption was used."""
encryptionVersion: String
format: BackupFormat
id: String
"""contains the appId"""
identifier: String
label: String
manifest: JSON
"""
Time to keep this backup in seconds (1 week is 604800 seconds). This number + `creationTime` determines if a backup is kept or removed
"""
preserveSecs: Int
remotePath: String
state: query_apps_by_appid_backups_backups_items_state
"""Is always `app` since this API returns the list of app backups."""
type: String
}
enum query_apps_by_appid_backups_backups_items_state {
creating
error
normal
}
type query_backups_backups_items {
creationTime: DateTime
"""Contains a list of backup IDs referencing the app backups"""
dependsOn: [String]
format: BackupFormat
id: String
manifest: JSON
"""
Time to keep this backup in seconds (1 week is 604800 seconds). This number + `creationTime` determines if a backup is kept or removed
"""
preserveSecs: Int
state: query_backups_backups_items_state
"""
Is always `box` since this API returns the list of platform backups. Individual app backups can be retrieved with the /api/v1/apps/ routes.
"""
type: String
"""Cloudron version that backups was made for"""
version: String
}
enum query_backups_backups_items_state {
creating
error
normal
}
type query_cloudron_status_restore {
"""Indicates if a restore is currently in progress."""
active: Boolean
errorMessage: String
"""Restore process status messages for ongoing progress display"""
message: String
}
type query_cloudron_status_setup {
"""
Indicates if a DNS setup is currently in progress. This happens after /api/v1/cloudron/setup was issued.
"""
active: Boolean
errorMessage: String
"""Setup process status messages for ongoing progress display"""
message: String
}
type query_domains_by_domain_config {
hyphenatedSubdomains: Boolean
}
type query_domains_by_domain_fallbackCertificate {
cert: String
key: String
}
type query_domains_by_domain_tlsConfig {
provider: String
wildcard: Boolean
}
"""Text and HTML mail signature"""
type query_mail_by_domain_banner {
html: String
text: String
}
type query_mail_by_domain_relay {
provider: MailRelayProvider
}
type query_mail_by_domain_status_dns {
dkim: query_mail_by_domain_status_dns_dkim
dmarc: query_mail_by_domain_status_dns_dmarc
mx: query_mail_by_domain_status_dns_mx
ptr: query_mail_by_domain_status_dns_ptr
spf: query_mail_by_domain_status_dns_spf
}
type query_mail_by_domain_status_dns_dkim {
domain: String
expected: String
name: String
status: Boolean
type: String
value: String
}
type query_mail_by_domain_status_dns_dmarc {
domain: String
expected: String
name: String
status: Boolean
type: String
value: String
}
type query_mail_by_domain_status_dns_mx {
domain: String
expected: String
name: String
status: Boolean
type: String
value: String
}
type query_mail_by_domain_status_dns_ptr {
domain: String
expected: String
name: String
status: Boolean
type: String
value: String
}
type query_mail_by_domain_status_dns_spf {
domain: String
expected: String
name: String
status: Boolean
type: String
value: String
}
type query_mail_by_domain_status_rbl {
ip: String
servers: [JSON]
status: Boolean
}
type query_mail_by_domain_status_relay {
status: Boolean
value: String
}
enum query_notifyGetList_items_repository_repo_transfer_teams_items_permission {
admin
none
owner
read
write
}
type query_notifyGetList_items_repository_repo_transfer_teams_items_units_map {
additionalProperties: JSON
repo_code: String
repo_ext_issues: String
repo_ext_wiki: String
repo_issues: String
repo_projects: String
repo_pulls: String
repo_releases: String
repo_wiki: String
}
"""
If `memory` and `memorySwap` is not set, then they cannot be configured
"""
type query_services_by_service_config {
memory: Int
memorySwap: Int
}
enum query_services_by_service_name {
docker
graphite
mail
mongodb
mysql
nginx
postgresql
sftp
unbound
}
enum query_services_by_service_status {
active
starting
stopped
}
enum query_services_services_items {
docker
graphite
mail
mongodb
mysql
nginx
postgresql
sftp
unbound
}
type query_tasks_tasks_items_error {
code: query_tasks_tasks_items_error_code
message: String
}
enum query_tasks_tasks_items_error_code {
crashed
stopped
timeout
}
union repoGetAllCommits_response = APIError | Commit_contains_information_generated_from_a_Git_commit_
type services_200_response {
services: [query_services_services_items]
}
type settings_dynamic_dns_200_response {
enabled: Boolean
}
type settings_unstable_apps_200_response {
enabled: Boolean
}
type tasks_200_response {
tasks: [Task]
}
type teamSearch_200_response {
data: [Team]
ok: Boolean
}
type userSearch_200_response {
data: [User]
ok: Boolean
}
type users_200_response {
users: [JSON]
}
type users_by_userId_invite_link_200_response {
inviteLink: JSON
}