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

**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.

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.

This call has to be made against the raw IP address (eg. https://1.2.3.4 ) accepting self-signed certificates.

A curl example could look like:
```curl -k -X POST -H 'Content-Type: application/json' --data '{...}' http://1.2.3.4/api/v1/cloudron/setup```

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`.

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 repository’s 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 repository’s 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 repository’s 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 repository’s 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 repository’s 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: 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 }