diff --git a/example_workspace/workspace-github.toml b/example_workspace/workspace-github.toml index 96dfaf8..ba3b809 100644 --- a/example_workspace/workspace-github.toml +++ b/example_workspace/workspace-github.toml @@ -1,10 +1,10 @@ -[[provider]] -provider = "github" -name = "django" -path = "github" -env_var = "GITHUB_TOKEN" -skip_forks = false -exclude = [ - "djangobench$", - "dsf-.*" -] +#[[provider]] +#provider = "github" +#name = "django" +#path = "github" +#env_var = "GITHUB_TOKEN" +#skip_forks = false +#exclude = [ +# "djangobench$", +# "dsf-.*" +#] diff --git a/example_workspace/workspace-lock.toml b/example_workspace/workspace-lock.toml index 4155d7d..6ed46a6 100644 --- a/example_workspace/workspace-lock.toml +++ b/example_workspace/workspace-lock.toml @@ -122,3 +122,132 @@ url = "git@gitlab.com:tom6/test-empty-project.git" path = "gitlab/tom6/test-lfs" url = "git@gitlab.com:tom6/test-lfs.git" branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/Awesome-Geospatial" +url = "git@github.com:foobar/Awesome-Geospatial.git" +upstream = "git@github.com:sacridini/Awesome-Geospatial.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/VictoriaMetrics" +url = "git@github.com:foobar/VictoriaMetrics.git" +upstream = "git@github.com:VictoriaMetrics/VictoriaMetrics.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/algc" +url = "git@github.com:foobar/algc.git" +upstream = "git@github.com:a1exwang/algc.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/algo" +url = "git@github.com:foobar/algo.git" +upstream = "git@github.com:hoanhan101/algo.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/centos-repo" +url = "git@github.com:foobar/centos-repo.git" +upstream = "git@github.com:cloudrouter/centos-repo.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/concurrent-persistent-datastructure" +url = "git@github.com:foobar/concurrent-persistent-datastructure.git" +upstream = "git@github.com:aajayssingh/concurrent-persistent-datastructure.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/docs.influxdata.com" +url = "git@github.com:foobar/docs.influxdata.com.git" +upstream = "git@github.com:influxdata/docs.influxdata.com-ARCHIVE.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/fast17" +url = "git@github.com:foobar/fast17.git" +upstream = "git@github.com:andyrudoff/fast17.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/fucking-algorithm" +url = "git@github.com:foobar/fucking-algorithm.git" +upstream = "git@github.com:labuladong/fucking-algorithm.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/go-profiler-notes" +url = "git@github.com:foobar/go-profiler-notes.git" +upstream = "git@github.com:DataDog/go-profiler-notes.git" +branch = "main" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/influxdb" +url = "git@github.com:foobar/influxdb.git" +upstream = "git@github.com:influxdata/influxdb.git" +branch = "1.7" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/influxdb1-client" +url = "git@github.com:foobar/influxdb1-client.git" +upstream = "git@github.com:influxdata/influxdb1-client.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/infobright" +url = "git@github.com:foobar/infobright.git" +upstream = "git@github.com:magiczqw/infobright.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/infobright-4.0.7" +url = "git@github.com:foobar/infobright-4.0.7.git" +upstream = "git@github.com:guanlisheng/infobright-4.0.7.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/infobright-core" +url = "git@github.com:foobar/infobright-core.git" +upstream = "git@github.com:EidosMedia/infobright-core.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/misc" +url = "git@github.com:foobar/misc.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/mysql-server" +url = "git@github.com:foobar/mysql-server.git" +upstream = "git@github.com:mysql/mysql-server.git" +branch = "c++17" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/optpls" +url = "git@github.com:foobar/optpls.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/stonedb" +url = "git@github.com:foobar/stonedb.git" +upstream = "git@github.com:stoneatom/stonedb.git" +branch = "stonedb-5.6" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/stx-btree" +url = "git@github.com:foobar/stx-btree.git" +upstream = "git@github.com:bingmann/stx-btree.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/tmp" +url = "git@github.com:foobar/tmp.git" +branch = "master" + +[[repo]] +path = "omgdgsdgsdsgdgssdggds/foobar/tsbs" +url = "git@github.com:foobar/tsbs.git" +upstream = "git@github.com:timescale/tsbs.git" +branch = "master" diff --git a/example_workspace/workspace.toml b/example_workspace/workspace.toml index 6c837f8..2a3b9b9 100644 --- a/example_workspace/workspace.toml +++ b/example_workspace/workspace.toml @@ -1,6 +1,16 @@ +#[[provider]] +#provider = "gitlab" +#name = "tom6" +#url = "https://gitlab.com" +#path = "gitlab" +#env_var = "GITLAB_TOKEN" +#exclude = [] + [[provider]] -provider = "gitlab" -name = "tom6" -url = "https://gitlab.com" -path = "gitlab" -env_var = "GITLAB_TOKEN" +provider = "github" +name = "omgdgsdgsdsgdgssdggds" +path = "github" +env_var = "GITHUB_TOKEN" +skip_forks = false +exclude = [] +url = "https://api.github.com/graphql" diff --git a/dev.sh b/scripts/dev.sh similarity index 100% rename from dev.sh rename to scripts/dev.sh diff --git a/scripts/update_graphql.sh b/scripts/update_graphql.sh new file mode 100755 index 0000000..68ed84f --- /dev/null +++ b/scripts/update_graphql.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +graphql-client introspect-schema https://gitlab.com/api/graphql > src/providers/graphql/gitlab/schema.json +wget https://docs.github.com/public/schema.docs.graphql -O src/providers/graphql/github/schema.graphql diff --git a/src/providers/github.rs b/src/providers/github.rs index b8733b4..1ef7cee 100644 --- a/src/providers/github.rs +++ b/src/providers/github.rs @@ -1,6 +1,6 @@ use crate::providers::{create_exclude_regex_set, Provider, APP_USER_AGENT}; use crate::repository::Repository; -use anyhow::Context; +use anyhow::{bail, Context}; use console::style; use graphql_client::{GraphQLQuery, Response}; use serde::{Deserialize, Serialize}; @@ -166,14 +166,40 @@ impl Provider for GithubProvider { let res = agent .post(&self.url) .set("Authorization", format!("Bearer {}", github_token).as_str()) - .send_json(json!(&q))?; - let response_data: Response = - serde_json::from_value(res.into_json()?)?; + .send_json(json!(&q)); + + let res = match res { + Ok(response) => response, + Err(ureq::Error::Status(status, response)) => match response.into_string() { + Ok(resp) => { + bail!("Got status code {status}. Body: {resp}") + } + Err(e) => { + bail!("Got status code {status}. Error reading body: {e}") + } + }, + Err(e) => return Err(e.into()), + }; + + let body = res.into_string()?; + let response_data: Response = serde_json::from_str(&body)?; + + if let Some(errors) = response_data.errors { + let total_errors = errors.len(); + let combined_errors: Vec<_> = errors.into_iter().map(|e| e.message).collect(); + let combined_message = combined_errors.join("\n"); + bail!( + "Received {} errors. Errors:\n{}", + total_errors, + combined_message + ); + } + let response_repositories = response_data .data - .unwrap_or_else(|| panic!("Invalid response from GitHub for user {}", self.name)) + .with_context(|| format!("Invalid response from GitHub: {}", body))? .repository_owner - .unwrap_or_else(|| panic!("Invalid response from GitHub for user {}", self.name)) + .with_context(|| format!("Invalid response from GitHub: {}", body))? .repositories; repositories.extend( diff --git a/src/providers/graphql/github/schema.graphql b/src/providers/graphql/github/schema.graphql index 22c906f..12a3705 100644 --- a/src/providers/graphql/github/schema.graphql +++ b/src/providers/graphql/github/schema.graphql @@ -1,3 +1,17 @@ +directive @requiredCapabilities( + requiredCapabilities: [String!] +) on ARGUMENT_DEFINITION | ENUM | ENUM_VALUE | FIELD_DEFINITION | INPUT_FIELD_DEFINITION | INPUT_OBJECT | INTERFACE | OBJECT | SCALAR | UNION + +""" +Marks an element of a GraphQL schema as only available via a preview header +""" +directive @preview( + """ + The identifier of the API preview that toggles this field. + """ + toggledBy: String! +) on ARGUMENT_DEFINITION | ENUM | ENUM_VALUE | FIELD_DEFINITION | INPUT_FIELD_DEFINITION | INPUT_OBJECT | INTERFACE | OBJECT | SCALAR | UNION + """ Defines what type of global IDs are accepted for a mutation argument of type ID. """ @@ -14,14 +28,34 @@ directive @possibleTypes( ) on INPUT_FIELD_DEFINITION """ -Marks an element of a GraphQL schema as only available via a preview header +Autogenerated input type of AbortQueuedMigrations """ -directive @preview( +input AbortQueuedMigrationsInput { """ - The identifier of the API preview that toggles this field. + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + """ - toggledBy: String -) on SCALAR | OBJECT | FIELD_DEFINITION | ARGUMENT_DEFINITION | INTERFACE | UNION | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION + The ID of the organization that is running the migrations. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of AbortQueuedMigrations +""" +type AbortQueuedMigrationsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Did the operation succeed? + """ + success: Boolean +} """ Autogenerated input type of AcceptEnterpriseAdministratorInvitation @@ -50,7 +84,7 @@ type AcceptEnterpriseAdministratorInvitationPayload { """ The invitation that was accepted. """ - invitation: EnterpriseAdministratorInvitation @preview(toggledBy: "enterprise-accounts-preview") + invitation: EnterpriseAdministratorInvitation """ A message confirming the result of accepting an administrator invitation. @@ -93,31 +127,6 @@ type AcceptTopicSuggestionPayload { topic: Topic } -""" -The possible capabilities for action executions setting. -""" -enum ActionExecutionCapabilitySetting @preview(toggledBy: "enterprise-accounts-preview") { - """ - All action executions are enabled. - """ - ALL_ACTIONS - - """ - All action executions are disabled. - """ - DISABLED - - """ - Only actions defined within the repo are allowed. - """ - LOCAL_ACTIONS_ONLY - - """ - Organization administrators action execution capabilities. - """ - NO_POLICY -} - """ Represents an object which can take actions on GitHub. Typically a User or Bot. """ @@ -178,6 +187,21 @@ type ActorLocation { regionCode: String } +""" +The actor's type. +""" +enum ActorType { + """ + Indicates a team actor. + """ + TEAM + + """ + Indicates a user actor. + """ + USER +} + """ Autogenerated input type of AddAssigneesToAssignable """ @@ -258,6 +282,156 @@ type AddCommentPayload { timelineEdge: IssueTimelineItemEdge } +""" +Autogenerated input type of AddDiscussionComment +""" +input AddDiscussionCommentInput { + """ + The contents of the comment. + """ + body: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion to comment on. + """ + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) + + """ + The Node ID of the discussion comment within this discussion to reply to. + """ + replyToId: ID @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of AddDiscussionComment +""" +type AddDiscussionCommentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created discussion comment. + """ + comment: DiscussionComment +} + +""" +Autogenerated input type of AddDiscussionPollVote +""" +input AddDiscussionPollVoteInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion poll option to vote for. + """ + pollOptionId: ID! @possibleTypes(concreteTypes: ["DiscussionPollOption"]) +} + +""" +Autogenerated return type of AddDiscussionPollVote +""" +type AddDiscussionPollVotePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The poll option that a vote was added to. + """ + pollOption: DiscussionPollOption +} + +""" +Autogenerated input type of AddEnterpriseOrganizationMember +""" +input AddEnterpriseOrganizationMemberInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise which owns the organization. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the organization the users will be added to. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The role to assign the users in the organization + """ + role: OrganizationMemberRole + + """ + The IDs of the enterprise members to add. + """ + userIds: [ID!]! +} + +""" +Autogenerated return type of AddEnterpriseOrganizationMember +""" +type AddEnterpriseOrganizationMemberPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The users who were added to the organization. + """ + users: [User!] +} + +""" +Autogenerated input type of AddEnterpriseSupportEntitlement +""" +input AddEnterpriseSupportEntitlementInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Enterprise which the admin belongs to. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of a member who will receive the support entitlement. + """ + login: String! +} + +""" +Autogenerated return type of AddEnterpriseSupportEntitlement +""" +type AddEnterpriseSupportEntitlementPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of adding the support entitlement. + """ + message: String +} + """ Autogenerated input type of AddLabelsToLabelable """ @@ -275,7 +449,7 @@ input AddLabelsToLabelableInput { """ The id of the labelable object to add labels to. """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ @@ -378,6 +552,88 @@ type AddProjectColumnPayload { project: Project } +""" +Autogenerated input type of AddProjectV2DraftIssue +""" +input AddProjectV2DraftIssueInput { + """ + The IDs of the assignees of the draft issue. + """ + assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"]) + + """ + The body of the draft issue. + """ + body: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to add the draft issue to. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The title of the draft issue. A project item can also be created by providing + the URL of an Issue or Pull Request if you have access. + """ + title: String! +} + +""" +Autogenerated return type of AddProjectV2DraftIssue +""" +type AddProjectV2DraftIssuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The draft issue added to the project. + """ + projectItem: ProjectV2Item +} + +""" +Autogenerated input type of AddProjectV2ItemById +""" +input AddProjectV2ItemByIdInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the Issue or Pull Request to add. + """ + contentId: ID! + @possibleTypes(concreteTypes: ["DraftIssue", "Issue", "PullRequest"], abstractType: "ProjectV2ItemContent") + + """ + The ID of the Project to add the item to. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of AddProjectV2ItemById +""" +type AddProjectV2ItemByIdPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item added to the project. + """ + item: ProjectV2Item +} + """ Autogenerated input type of AddPullRequestReviewComment """ @@ -412,10 +668,15 @@ input AddPullRequestReviewCommentInput { """ position: Int + """ + The node ID of the pull request reviewing + """ + pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"]) + """ The Node ID of the review to modify. """ - pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) + pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) } """ @@ -471,6 +732,11 @@ input AddPullRequestReviewInput { The Node ID of the pull request to modify. """ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + + """ + The review line comment threads. + """ + threads: [DraftPullRequestReviewThread] } """ @@ -493,6 +759,71 @@ type AddPullRequestReviewPayload { reviewEdge: PullRequestReviewEdge } +""" +Autogenerated input type of AddPullRequestReviewThread +""" +input AddPullRequestReviewThreadInput { + """ + Body of the thread's first comment. + """ + body: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The line of the blob to which the thread refers. The end of the line range for multi-line comments. + """ + line: Int! + + """ + Path to the file being commented on. + """ + path: String! + + """ + The node ID of the pull request reviewing + """ + pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"]) + + """ + The Node ID of the review to modify. + """ + pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) + + """ + The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range. + """ + side: DiffSide = RIGHT + + """ + The first line of the range to which the comment refers. + """ + startLine: Int + + """ + The side of the diff on which the start line resides. + """ + startSide: DiffSide = RIGHT +} + +""" +Autogenerated return type of AddPullRequestReviewThread +""" +type AddPullRequestReviewThreadPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created thread. + """ + thread: PullRequestReviewThread +} + """ Autogenerated input type of AddReaction """ @@ -510,7 +841,23 @@ input AddReactionInput { """ The Node ID of the subject to modify. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "Issue", "IssueComment", "PullRequest", "PullRequestReview", "PullRequestReviewComment", "TeamDiscussion", "TeamDiscussionComment"], abstractType: "Reactable") + subjectId: ID! + @possibleTypes( + concreteTypes: [ + "CommitComment" + "Discussion" + "DiscussionComment" + "Issue" + "IssueComment" + "PullRequest" + "PullRequestReview" + "PullRequestReviewComment" + "Release" + "TeamDiscussion" + "TeamDiscussionComment" + ] + abstractType: "Reactable" + ) } """ @@ -527,6 +874,11 @@ type AddReactionPayload { """ reaction: Reaction + """ + The reaction groups for the subject. + """ + reactionGroups: [ReactionGroup!] + """ The reactable subject. """ @@ -563,6 +915,71 @@ type AddStarPayload { starrable: Starrable } +""" +Autogenerated input type of AddUpvote +""" +input AddUpvoteInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion or comment to upvote. + """ + subjectId: ID! @possibleTypes(concreteTypes: ["Discussion", "DiscussionComment"], abstractType: "Votable") +} + +""" +Autogenerated return type of AddUpvote +""" +type AddUpvotePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The votable subject. + """ + subject: Votable +} + +""" +Autogenerated input type of AddVerifiableDomain +""" +input AddVerifiableDomainInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The URL of the domain + """ + domain: URI! + + """ + The ID of the owner to add the domain to + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "VerifiableDomainOwner") +} + +""" +Autogenerated return type of AddVerifiableDomain +""" +type AddVerifiableDomainPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The verifiable domain that was added. + """ + domain: VerifiableDomain +} + """ Represents a 'added_to_project' event on a given issue or pull request. """ @@ -599,6 +1016,26 @@ type AddedToProjectEvent implements Node { projectColumnName: String! @preview(toggledBy: "starfox-preview") } +""" +Represents an announcement banner. +""" +interface AnnouncementBanner { + """ + The text of the announcement + """ + announcement: String + + """ + The expiration date of the announcement, if any + """ + announcementExpiresAt: DateTime + + """ + Whether the announcement can be dismissed by the user + """ + announcementUserDismissible: Boolean +} + """ A GitHub App. """ @@ -619,6 +1056,36 @@ type App implements Node { description: String id: ID! + """ + The IP addresses of the app. + """ + ipAllowListEntries( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for IP allow list entries returned. + """ + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! + """ The hex color code, without the leading '#', for the logo background. """ @@ -655,6 +1122,141 @@ type App implements Node { url: URI! } +""" +Autogenerated input type of ApproveDeployments +""" +input ApproveDeploymentsInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Optional comment for approving deployments + """ + comment: String = "" + + """ + The ids of environments to reject deployments + """ + environmentIds: [ID!]! + + """ + The node ID of the workflow run containing the pending deployments. + """ + workflowRunId: ID! @possibleTypes(concreteTypes: ["WorkflowRun"]) +} + +""" +Autogenerated return type of ApproveDeployments +""" +type ApproveDeploymentsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The affected deployments. + """ + deployments: [Deployment!] +} + +""" +Autogenerated input type of ApproveVerifiableDomain +""" +input ApproveVerifiableDomainInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the verifiable domain to approve. + """ + id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"]) +} + +""" +Autogenerated return type of ApproveVerifiableDomain +""" +type ApproveVerifiableDomainPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The verifiable domain that was approved. + """ + domain: VerifiableDomain +} + +""" +Autogenerated input type of ArchiveProjectV2Item +""" +input ArchiveProjectV2ItemInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the ProjectV2Item to archive. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project to archive the item from. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of ArchiveProjectV2Item +""" +type ArchiveProjectV2ItemPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item archived from the project. + """ + item: ProjectV2Item +} + +""" +Autogenerated input type of ArchiveRepository +""" +input ArchiveRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the repository to mark as archived. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of ArchiveRepository +""" +type ArchiveRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository that was marked as archived. + """ + repository: Repository +} + """ An object that can have users assigned to it. """ @@ -713,7 +1315,8 @@ type AssignedEvent implements Node { """ Identifies the user who was assigned. """ - user: User @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") + user: User + @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") } """ @@ -822,9 +1425,9 @@ enum AuditLogOrderField { } """ -Represents a 'base_ref_changed' event on a given issue or pull request. +Represents a 'auto_merge_disabled' event on a given pull request. """ -type BaseRefChangedEvent implements Node { +type AutoMergeDisabledEvent implements Node { """ Identifies the actor who performed the event. """ @@ -836,57 +1439,322 @@ type BaseRefChangedEvent implements Node { createdAt: DateTime! """ - Identifies the primary key from the database. + The user who disabled auto-merge for this Pull Request """ - databaseId: Int + disabler: User id: ID! -} -""" -Represents a 'base_ref_force_pushed' event on a given pull request. -""" -type BaseRefForcePushedEvent implements Node { """ - Identifies the actor who performed the event. + PullRequest referenced by event """ - actor: Actor + pullRequest: PullRequest """ - Identifies the after commit SHA for the 'base_ref_force_pushed' event. + The reason auto-merge was disabled """ - afterCommit: Commit + reason: String """ - Identifies the before commit SHA for the 'base_ref_force_pushed' event. + The reason_code relating to why auto-merge was disabled """ - beforeCommit: Commit + reasonCode: String +} + +""" +Represents a 'auto_merge_enabled' event on a given pull request. +""" +type AutoMergeEnabledEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor """ Identifies the date and time when the object was created. """ createdAt: DateTime! - id: ID! """ - PullRequest referenced by event. + The user who enabled auto-merge for this Pull Request """ - pullRequest: PullRequest! + enabler: User + id: ID! """ - Identifies the fully qualified ref name for the 'base_ref_force_pushed' event. + PullRequest referenced by event. """ - ref: Ref + pullRequest: PullRequest } """ -Represents a Git blame. +Represents an auto-merge request for a pull request """ -type Blame { +type AutoMergeRequest { """ - The list of ranges from a Git blame. + The email address of the author of this auto-merge request. """ - ranges: [BlameRange!]! -} + authorEmail: String + + """ + The commit message of the auto-merge request. If a merge queue is required by + the base branch, this value will be set by the merge queue when merging. + """ + commitBody: String + + """ + The commit title of the auto-merge request. If a merge queue is required by + the base branch, this value will be set by the merge queue when merging + """ + commitHeadline: String + + """ + When was this auto-merge request was enabled. + """ + enabledAt: DateTime + + """ + The actor who created the auto-merge request. + """ + enabledBy: Actor + + """ + The merge method of the auto-merge request. If a merge queue is required by + the base branch, this value will be set by the merge queue when merging. + """ + mergeMethod: PullRequestMergeMethod! + + """ + The pull request that this auto-merge request is set against. + """ + pullRequest: PullRequest! +} + +""" +Represents a 'auto_rebase_enabled' event on a given pull request. +""" +type AutoRebaseEnabledEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The user who enabled auto-merge (rebase) for this Pull Request + """ + enabler: User + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest +} + +""" +Represents a 'auto_squash_enabled' event on a given pull request. +""" +type AutoSquashEnabledEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The user who enabled auto-merge (squash) for this Pull Request + """ + enabler: User + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest +} + +""" +Represents a 'automatic_base_change_failed' event on a given pull request. +""" +type AutomaticBaseChangeFailedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + The new base for this PR + """ + newBase: String! + + """ + The old base for this PR + """ + oldBase: String! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +Represents a 'automatic_base_change_succeeded' event on a given pull request. +""" +type AutomaticBaseChangeSucceededEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + The new base for this PR + """ + newBase: String! + + """ + The old base for this PR + """ + oldBase: String! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +A (potentially binary) string encoded using base64. +""" +scalar Base64String + +""" +Represents a 'base_ref_changed' event on a given issue or pull request. +""" +type BaseRefChangedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the name of the base ref for the pull request after it was changed. + """ + currentRefName: String! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + Identifies the name of the base ref for the pull request before it was changed. + """ + previousRefName: String! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +Represents a 'base_ref_deleted' event on a given pull request. +""" +type BaseRefDeletedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the name of the Ref associated with the `base_ref_deleted` event. + """ + baseRefName: String + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest +} + +""" +Represents a 'base_ref_force_pushed' event on a given pull request. +""" +type BaseRefForcePushedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the after commit SHA for the 'base_ref_force_pushed' event. + """ + afterCommit: Commit + + """ + Identifies the before commit SHA for the 'base_ref_force_pushed' event. + """ + beforeCommit: Commit + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! + + """ + Identifies the fully qualified ref name for the 'base_ref_force_pushed' event. + """ + ref: Ref +} + +""" +Represents a Git blame. +""" +type Blame { + """ + The list of ranges from a Git blame. + """ + ranges: [BlameRange!]! +} """ Represents a range of information from a Git blame. @@ -942,9 +1810,9 @@ type Blob implements GitObject & Node { id: ID! """ - Indicates whether the Blob is binary or text + Indicates whether the Blob is binary or text. Returns null if unable to determine the encoding. """ - isBinary: Boolean! + isBinary: Boolean """ Indicates whether the contents is truncated @@ -1013,10 +1881,30 @@ type Bot implements Actor & Node & UniformResourceLocatable { url: URI! } +""" +Types which can be actors for `BranchActorAllowance` objects. +""" +union BranchActorAllowanceActor = App | Team | User + """ A branch protection rule. """ type BranchProtectionRule implements Node { + """ + Can this branch be deleted. + """ + allowsDeletions: Boolean! + + """ + Are force pushes allowed on this branch. + """ + allowsForcePushes: Boolean! + + """ + Is branch creation a protected operation. + """ + blocksCreations: Boolean! + """ A list of conflicts matching branches protection rule and other branch protection rules """ @@ -1042,6 +1930,56 @@ type BranchProtectionRule implements Node { last: Int ): BranchProtectionRuleConflictConnection! + """ + A list of actors able to force push for this branch protection rule. + """ + bypassForcePushAllowances( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): BypassForcePushAllowanceConnection! + + """ + A list of actors able to bypass PRs for this branch protection rule. + """ + bypassPullRequestAllowances( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): BypassPullRequestAllowanceConnection! + """ The actor who created this branch protection rule. """ @@ -1063,6 +2001,17 @@ type BranchProtectionRule implements Node { """ isAdminEnforced: Boolean! + """ + Whether users can pull changes from upstream when the branch is locked. Set to + `true` to allow fork syncing. Set to `false` to prevent fork syncing. + """ + lockAllowsFetchAndMerge: Boolean! + + """ + Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. + """ + lockBranch: Boolean! + """ Repository refs that are protected by this rule """ @@ -1086,6 +2035,11 @@ type BranchProtectionRule implements Node { Returns the last _n_ elements from the list. """ last: Int + + """ + Filters refs with query on name + """ + query: String ): RefConnection! """ @@ -1123,16 +2077,31 @@ type BranchProtectionRule implements Node { """ repository: Repository + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: Boolean! + """ Number of approving reviews required to update matching branches. """ requiredApprovingReviewCount: Int + """ + List of required deployment environments that must be deployed successfully to update matching branches + """ + requiredDeploymentEnvironments: [String] + """ List of required status check contexts that must pass for commits to be accepted to matching branches. """ requiredStatusCheckContexts: [String] + """ + List of required status checks that must pass for commits to be accepted to matching branches. + """ + requiredStatusChecks: [RequiredStatusCheckDescription!] + """ Are approving reviews required to update matching branches. """ @@ -1148,6 +2117,21 @@ type BranchProtectionRule implements Node { """ requiresCommitSignatures: Boolean! + """ + Are conversations required to be resolved before merging. + """ + requiresConversationResolution: Boolean! + + """ + Does this branch require deployment to specific environments before merging + """ + requiresDeployments: Boolean! + + """ + Are merge commits prohibited from being pushed to this branch. + """ + requiresLinearHistory: Boolean! + """ Are status checks required to update matching branches. """ @@ -1294,6 +2278,194 @@ type BranchProtectionRuleEdge { node: BranchProtectionRule } +""" +A user, team, or app who has the ability to bypass a force push requirement on a protected branch. +""" +type BypassForcePushAllowance implements Node { + """ + The actor that can force push. + """ + actor: BranchActorAllowanceActor + + """ + Identifies the branch protection rule associated with the allowed user, team, or app. + """ + branchProtectionRule: BranchProtectionRule + id: ID! +} + +""" +The connection type for BypassForcePushAllowance. +""" +type BypassForcePushAllowanceConnection { + """ + A list of edges. + """ + edges: [BypassForcePushAllowanceEdge] + + """ + A list of nodes. + """ + nodes: [BypassForcePushAllowance] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type BypassForcePushAllowanceEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: BypassForcePushAllowance +} + +""" +A user, team, or app who has the ability to bypass a pull request requirement on a protected branch. +""" +type BypassPullRequestAllowance implements Node { + """ + The actor that can bypass. + """ + actor: BranchActorAllowanceActor + + """ + Identifies the branch protection rule associated with the allowed user, team, or app. + """ + branchProtectionRule: BranchProtectionRule + id: ID! +} + +""" +The connection type for BypassPullRequestAllowance. +""" +type BypassPullRequestAllowanceConnection { + """ + A list of edges. + """ + edges: [BypassPullRequestAllowanceEdge] + + """ + A list of nodes. + """ + nodes: [BypassPullRequestAllowance] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type BypassPullRequestAllowanceEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: BypassPullRequestAllowance +} + +""" +The Common Vulnerability Scoring System +""" +type CVSS { + """ + The CVSS score associated with this advisory + """ + score: Float! + + """ + The CVSS vector string associated with this advisory + """ + vectorString: String +} + +""" +A common weakness enumeration +""" +type CWE implements Node { + """ + The id of the CWE + """ + cweId: String! + + """ + A detailed description of this CWE + """ + description: String! + id: ID! + + """ + The name of this CWE + """ + name: String! +} + +""" +The connection type for CWE. +""" +type CWEConnection { + """ + A list of edges. + """ + edges: [CWEEdge] + + """ + A list of nodes. + """ + nodes: [CWE] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type CWEEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: CWE +} + """ Autogenerated input type of CancelEnterpriseAdminInvitation """ @@ -1321,7 +2493,7 @@ type CancelEnterpriseAdminInvitationPayload { """ The invitation that was canceled. """ - invitation: EnterpriseAdministratorInvitation @preview(toggledBy: "enterprise-accounts-preview") + invitation: EnterpriseAdministratorInvitation """ A message confirming the result of canceling an administrator invitation. @@ -1329,6 +2501,53 @@ type CancelEnterpriseAdminInvitationPayload { message: String } +""" +Autogenerated input type of CancelSponsorship +""" +input CancelSponsorshipInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. + """ + sponsorId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsor") + + """ + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. + """ + sponsorLogin: String + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String +} + +""" +Autogenerated return type of CancelSponsorship +""" +type CancelSponsorshipPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The tier that was being used at the time of cancellation. + """ + sponsorsTier: SponsorsTier +} + """ Autogenerated input type of ChangeUserStatus """ @@ -1383,7 +2602,7 @@ type ChangeUserStatusPayload { """ A single check annotation. """ -type CheckAnnotation @preview(toggledBy: "antiope-preview") { +type CheckAnnotation { """ The annotation's severity level. """ @@ -1437,7 +2656,7 @@ type CheckAnnotationConnection { """ A list of nodes. """ - nodes: [CheckAnnotation] @preview(toggledBy: "antiope-preview") + nodes: [CheckAnnotation] """ Information to aid in pagination. @@ -1453,7 +2672,7 @@ type CheckAnnotationConnection { """ Information from a check run analysis to specific lines of code. """ -input CheckAnnotationData @preview(toggledBy: "antiope-preview") { +input CheckAnnotationData { """ Represents an annotation's information level """ @@ -1497,13 +2716,13 @@ type CheckAnnotationEdge { """ The item at the end of the edge. """ - node: CheckAnnotation @preview(toggledBy: "antiope-preview") + node: CheckAnnotation } """ Represents an annotation's information level. """ -enum CheckAnnotationLevel @preview(toggledBy: "antiope-preview") { +enum CheckAnnotationLevel { """ An annotation indicating an inescapable error. """ @@ -1523,7 +2742,7 @@ enum CheckAnnotationLevel @preview(toggledBy: "antiope-preview") { """ A character position in a check annotation. """ -type CheckAnnotationPosition @preview(toggledBy: "antiope-preview") { +type CheckAnnotationPosition { """ Column number (1 indexed). """ @@ -1538,7 +2757,7 @@ type CheckAnnotationPosition @preview(toggledBy: "antiope-preview") { """ Information from a check run analysis to specific lines of code. """ -input CheckAnnotationRange @preview(toggledBy: "antiope-preview") { +input CheckAnnotationRange { """ The ending column of the range. """ @@ -1563,7 +2782,7 @@ input CheckAnnotationRange @preview(toggledBy: "antiope-preview") { """ An inclusive pair of positions for a check annotation. """ -type CheckAnnotationSpan @preview(toggledBy: "antiope-preview") { +type CheckAnnotationSpan { """ End position (inclusive). """ @@ -1578,7 +2797,7 @@ type CheckAnnotationSpan @preview(toggledBy: "antiope-preview") { """ The possible states for a check suite or run conclusion. """ -enum CheckConclusionState @preview(toggledBy: "antiope-preview") { +enum CheckConclusionState { """ The check suite or run requires action. """ @@ -1599,6 +2818,21 @@ enum CheckConclusionState @preview(toggledBy: "antiope-preview") { """ NEUTRAL + """ + The check suite or run was skipped. + """ + SKIPPED + + """ + The check suite or run was marked stale by GitHub. Only GitHub can use this conclusion. + """ + STALE + + """ + The check suite or run has failed at startup. + """ + STARTUP_FAILURE + """ The check suite or run has succeeded. """ @@ -1613,7 +2847,7 @@ enum CheckConclusionState @preview(toggledBy: "antiope-preview") { """ A check run. """ -type CheckRun implements Node & UniformResourceLocatable @preview(toggledBy: "antiope-preview") { +type CheckRun implements Node & RequirableByPullRequest & UniformResourceLocatable { """ The check run's annotations """ @@ -1659,6 +2893,11 @@ type CheckRun implements Node & UniformResourceLocatable @preview(toggledBy: "an """ databaseId: Int + """ + The corresponding deployment for this job, if any + """ + deployment: Deployment + """ The URL from which to find full details of the check run on the integrator's site. """ @@ -1670,11 +2909,31 @@ type CheckRun implements Node & UniformResourceLocatable @preview(toggledBy: "an externalId: String id: ID! + """ + Whether this is required to pass before merging for a specific pull request. + """ + isRequired( + """ + The id of the pull request this is required for + """ + pullRequestId: ID + + """ + The number of the pull request this is required for + """ + pullRequestNumber: Int + ): Boolean! + """ The name of the check for this check run. """ name: String! + """ + Information about a pending deployment, if any, in this check run + """ + pendingDeploymentRequest: DeploymentRequest + """ The permalink to the check run summary. """ @@ -1701,10 +2960,40 @@ type CheckRun implements Node & UniformResourceLocatable @preview(toggledBy: "an status: CheckStatusState! """ - A string representing the check run's summary - """ - summary: String - + The check run's steps + """ + steps( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Step number + """ + number: Int + ): CheckStepConnection + + """ + A string representing the check run's summary + """ + summary: String + """ A string representing the check run's text """ @@ -1724,7 +3013,7 @@ type CheckRun implements Node & UniformResourceLocatable @preview(toggledBy: "an """ Possible further actions the integrator can perform. """ -input CheckRunAction @preview(toggledBy: "antiope-preview") { +input CheckRunAction { """ A short explanation of what this action would do. """ @@ -1753,7 +3042,7 @@ type CheckRunConnection { """ A list of nodes. """ - nodes: [CheckRun] @preview(toggledBy: "antiope-preview") + nodes: [CheckRun] """ Information to aid in pagination. @@ -1778,13 +3067,13 @@ type CheckRunEdge { """ The item at the end of the edge. """ - node: CheckRun @preview(toggledBy: "antiope-preview") + node: CheckRun } """ The filters that are available when fetching check runs. """ -input CheckRunFilter @preview(toggledBy: "antiope-preview") { +input CheckRunFilter { """ Filters the check runs created by this application ID. """ @@ -1801,15 +3090,25 @@ input CheckRunFilter @preview(toggledBy: "antiope-preview") { checkType: CheckRunType """ - Filters the check runs by this status. + Filters the check runs by these conclusions. + """ + conclusions: [CheckConclusionState!] + + """ + Filters the check runs by this status. Superceded by statuses. """ status: CheckStatusState + + """ + Filters the check runs by this status. Overrides status. + """ + statuses: [CheckStatusState!] } """ Descriptive details about the check run. """ -input CheckRunOutput @preview(toggledBy: "antiope-preview") { +input CheckRunOutput { """ The annotations that are made as part of the check run. """ @@ -1839,7 +3138,7 @@ input CheckRunOutput @preview(toggledBy: "antiope-preview") { """ Images attached to the check run output displayed in the GitHub pull request UI. """ -input CheckRunOutputImage @preview(toggledBy: "antiope-preview") { +input CheckRunOutputImage { """ The alternative text for the image. """ @@ -1856,10 +3155,100 @@ input CheckRunOutputImage @preview(toggledBy: "antiope-preview") { imageUrl: URI! } +""" +The possible states of a check run in a status rollup. +""" +enum CheckRunState { + """ + The check run requires action. + """ + ACTION_REQUIRED + + """ + The check run has been cancelled. + """ + CANCELLED + + """ + The check run has been completed. + """ + COMPLETED + + """ + The check run has failed. + """ + FAILURE + + """ + The check run is in progress. + """ + IN_PROGRESS + + """ + The check run was neutral. + """ + NEUTRAL + + """ + The check run is in pending state. + """ + PENDING + + """ + The check run has been queued. + """ + QUEUED + + """ + The check run was skipped. + """ + SKIPPED + + """ + The check run was marked stale by GitHub. Only GitHub can use this conclusion. + """ + STALE + + """ + The check run has failed at startup. + """ + STARTUP_FAILURE + + """ + The check run has succeeded. + """ + SUCCESS + + """ + The check run has timed out. + """ + TIMED_OUT + + """ + The check run is in waiting state. + """ + WAITING +} + +""" +Represents a count of the state of a check run. +""" +type CheckRunStateCount { + """ + The number of check runs with this state. + """ + count: Int! + + """ + The state of a check run. + """ + state: CheckRunState! +} + """ The possible types of check runs. """ -enum CheckRunType @preview(toggledBy: "antiope-preview") { +enum CheckRunType { """ Every check run available. """ @@ -1874,7 +3263,7 @@ enum CheckRunType @preview(toggledBy: "antiope-preview") { """ The possible states for a check suite or run status. """ -enum CheckStatusState @preview(toggledBy: "antiope-preview") { +enum CheckStatusState { """ The check suite or run has been completed. """ @@ -1885,6 +3274,11 @@ enum CheckStatusState @preview(toggledBy: "antiope-preview") { """ IN_PROGRESS + """ + The check suite or run is in pending state. + """ + PENDING + """ The check suite or run has been queued. """ @@ -1894,12 +3288,102 @@ enum CheckStatusState @preview(toggledBy: "antiope-preview") { The check suite or run has been requested. """ REQUESTED + + """ + The check suite or run is in waiting state. + """ + WAITING +} + +""" +A single check step. +""" +type CheckStep { + """ + Identifies the date and time when the check step was completed. + """ + completedAt: DateTime + + """ + The conclusion of the check step. + """ + conclusion: CheckConclusionState + + """ + A reference for the check step on the integrator's system. + """ + externalId: String + + """ + The step's name. + """ + name: String! + + """ + The index of the step in the list of steps of the parent check run. + """ + number: Int! + + """ + Number of seconds to completion. + """ + secondsToCompletion: Int + + """ + Identifies the date and time when the check step was started. + """ + startedAt: DateTime + + """ + The current status of the check step. + """ + status: CheckStatusState! +} + +""" +The connection type for CheckStep. +""" +type CheckStepConnection { + """ + A list of edges. + """ + edges: [CheckStepEdge] + + """ + A list of nodes. + """ + nodes: [CheckStep] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type CheckStepEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: CheckStep } """ A check suite. """ -type CheckSuite implements Node @preview(toggledBy: "antiope-preview") { +type CheckSuite implements Node { """ The GitHub App which created this check suite. """ @@ -1955,6 +3439,11 @@ type CheckSuite implements Node @preview(toggledBy: "antiope-preview") { """ createdAt: DateTime! + """ + The user who triggered the check suite. + """ + creator: User + """ Identifies the primary key from the database. """ @@ -2040,12 +3529,17 @@ type CheckSuite implements Node @preview(toggledBy: "antiope-preview") { The HTTP URL for this check suite """ url: URI! + + """ + The workflow run associated with this check suite. + """ + workflowRun: WorkflowRun } """ The auto-trigger preferences that are available for check suites. """ -input CheckSuiteAutoTriggerPreference @preview(toggledBy: "antiope-preview") { +input CheckSuiteAutoTriggerPreference { """ The node ID of the application that owns the check suite. """ @@ -2069,7 +3563,7 @@ type CheckSuiteConnection { """ A list of nodes. """ - nodes: [CheckSuite] @preview(toggledBy: "antiope-preview") + nodes: [CheckSuite] """ Information to aid in pagination. @@ -2094,13 +3588,13 @@ type CheckSuiteEdge { """ The item at the end of the edge. """ - node: CheckSuite @preview(toggledBy: "antiope-preview") + node: CheckSuite } """ The filters that are available when fetching check suites. """ -input CheckSuiteFilter @preview(toggledBy: "antiope-preview") { +input CheckSuiteFilter { """ Filters the check suites created by this application ID. """ @@ -2112,6 +3606,11 @@ input CheckSuiteFilter @preview(toggledBy: "antiope-preview") { checkName: String } +""" +An object which can have its data claimed or claim data from another. +""" +union Claimable = Mannequin | User + """ Autogenerated input type of ClearLabelsFromLabelable """ @@ -2124,7 +3623,7 @@ input ClearLabelsFromLabelableInput { """ The id of the labelable object to clear the labels from. """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ @@ -2142,6 +3641,50 @@ type ClearLabelsFromLabelablePayload { labelable: Labelable } +""" +Autogenerated input type of ClearProjectV2ItemFieldValue +""" +input ClearProjectV2ItemFieldValueInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the field to be cleared. + """ + fieldId: ID! + @possibleTypes( + concreteTypes: ["ProjectV2Field", "ProjectV2IterationField", "ProjectV2SingleSelectField"] + abstractType: "ProjectV2FieldConfiguration" + ) + + """ + The ID of the item to be cleared. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of ClearProjectV2ItemFieldValue +""" +type ClearProjectV2ItemFieldValuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated item. + """ + projectV2Item: ProjectV2Item +} + """ Autogenerated input type of CloneProject """ @@ -2216,6 +3759,12 @@ input CloneTemplateRepositoryInput { """ description: String + """ + Whether to copy all branches from the template to the new repository. Defaults + to copying only the default branch of the template. + """ + includeAllBranches: Boolean = false + """ The name of the new repository. """ @@ -2257,7 +3806,7 @@ An object that can be closed """ interface Closable { """ - `true` if the object is closed (definition of closed may depend on type) + Indicates if the object is closed (definition of closed may depend on type) """ closed: Boolean! @@ -2280,6 +3829,11 @@ input CloseIssueInput { ID of the issue to be closed. """ issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + The reason the issue is to be closed. + """ + stateReason: IssueClosedStateReason } """ @@ -2357,6 +3911,11 @@ type ClosedEvent implements Node & UniformResourceLocatable { """ resourcePath: URI! + """ + The reason the issue state was changed to closed. + """ + stateReason: IssueStateReason + """ The HTTP URL for this closed event. """ @@ -2419,11 +3978,6 @@ enum CollaboratorAffiliation { OUTSIDE } -""" -Types that can be inside Collection Items. -""" -union CollectionItemContent = Organization | Repository | User - """ Represents a comment. """ @@ -2544,6 +4098,11 @@ enum CommentAuthorAssociation { """ FIRST_TIME_CONTRIBUTOR + """ + Author is a placeholder for an unclaimed user. + """ + MANNEQUIN + """ Author is a member of the organization that owns the repository. """ @@ -2618,6 +4177,11 @@ type CommentDeletedEvent implements Node { Identifies the primary key from the database. """ databaseId: Int + + """ + The user who authored the deleted comment. + """ + deletedCommentAuthor: Actor id: ID! } @@ -2636,7 +4200,9 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl additions: Int! """ - The pull requests associated with a commit + The merged Pull Request that introduced the commit to the repository. If the + commit is not present in the default branch, additionally returns open Pull + Requests associated with the commit """ associatedPullRequests( """ @@ -2680,6 +4246,32 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl """ authoredDate: DateTime! + """ + The list of authors for this commit based on the git author and the Co-authored-by + message trailer. The git author will always be first. + """ + authors( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): GitActorConnection! + """ Fetches `git blame` information. """ @@ -2691,9 +4283,21 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl ): Blame! """ - The number of changed files in this commit. + We recommend using the `changedFielsIfAvailable` field instead of + `changedFiles`, as `changedFiles` will cause your request to return an error + if GitHub is unable to calculate the number of changed files. """ changedFiles: Int! + @deprecated( + reason: "`changedFiles` will be removed. Use `changedFilesIfAvailable` instead. Removal on 2023-01-01 UTC." + ) + + """ + The number of changed files in this commit. If GitHub is unable to calculate + the number of changed files (for example due to a timeout), this will return + `null`. We recommend using this field instead of `changedFiles`. + """ + changedFilesIfAvailable: Int """ The check suites associated with a commit. @@ -2723,7 +4327,7 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl Returns the last _n_ elements from the list. """ last: Int - ): CheckSuiteConnection @preview(toggledBy: "antiope-preview") + ): CheckSuiteConnection """ Comments made on the commit. @@ -2766,12 +4370,12 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl committedDate: DateTime! """ - Check if commited via GitHub web UI. + Check if committed via GitHub web UI. """ committedViaWeb: Boolean! """ - Committership details of the commit. + Committer details of the commit. """ committer: GitActor @@ -2815,6 +4419,16 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} ): DeploymentConnection + """ + The tree entry representing the file located at the given path. + """ + file( + """ + The path for the file + """ + path: String! + ): TreeEntry + """ The linear commit history starting from (and including) this commit, in the same order as `git log`. """ @@ -2891,6 +4505,11 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl """ oid: GitObjectID! + """ + The organization this commit was made on behalf of. + """ + onBehalfOf: Organization + """ The parents of a commit. """ @@ -2941,6 +4560,36 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl """ status: Status + """ + Check and Status rollup information for this commit. + """ + statusCheckRollup: StatusCheckRollup + + """ + Returns a list of all submodules in this repository as of this Commit parsed from the .gitmodules file. + """ + submodules( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): SubmoduleConnection! + """ Returns a URL to download a tarball archive for a repository. Note: For private repositories, these links are temporary and expire after five minutes. @@ -3020,7 +4669,7 @@ type CommitComment implements Comment & Deletable & Minimizable & Node & Reactab body: String! """ - Identifies the comment body rendered to HTML. + The body rendered to HTML. """ bodyHTML: HTML! @@ -3071,7 +4720,9 @@ type CommitComment implements Comment & Deletable & Minimizable & Node & Reactab lastEditedAt: DateTime """ - Returns why the comment was minimized. + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. """ minimizedReason: String @@ -3278,7 +4929,7 @@ type CommitCommentThread implements Node & RepositoryNode { """ The commit the comments were made on. """ - commit: Commit! + commit: Commit id: ID! """ @@ -3443,45 +5094,200 @@ type CommitHistoryConnection { } """ -A content attachment +A message to include with a new commit """ -type ContentAttachment { +input CommitMessage { """ - The body text of the content attachment. This parameter supports markdown. + The body of the message. """ - body: String! + body: String """ - The content reference that the content attachment is attached to. + The headline of the message. """ - contentReference: ContentReference! + headline: String! +} + +""" +A git ref for a commit to be appended to. + +The ref must be a branch, i.e. its fully qualified name must start +with `refs/heads/` (although the input is not required to be fully +qualified). + +The Ref may be specified by its global node ID or by the +`repositoryNameWithOwner` and `branchName`. + +### Examples +Specify a branch using a global node ID: + + { "id": "MDM6UmVmMTpyZWZzL2hlYWRzL21haW4=" } + +Specify a branch using `repositoryNameWithOwner` and `branchName`: + + { + "repositoryNameWithOwner": "github/graphql-client", + "branchName": "main" + } +""" +input CommittableBranch { """ - Identifies the primary key from the database. + The unqualified name of the branch to append the commit to. + """ + branchName: String + + """ + The Node ID of the Ref to be updated. + """ + id: ID + + """ + The nameWithOwner of the repository to commit to. + """ + repositoryNameWithOwner: String +} + +""" +Represents a comparison between two commit revisions. +""" +type Comparison implements Node { + """ + The number of commits ahead of the base branch. + """ + aheadBy: Int! + + """ + The base revision of this comparison. + """ + baseTarget: GitObject! + + """ + The number of commits behind the base branch. + """ + behindBy: Int! + + """ + The commits which compose this comparison. + """ + commits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ComparisonCommitConnection! + + """ + The head revision of this comparison. """ - databaseId: Int! + headTarget: GitObject! id: ID! """ - The title of the content attachment. + The status of this comparison. """ - title: String! + status: ComparisonStatus! } """ -A content reference +The connection type for Commit. """ -type ContentReference { +type ComparisonCommitConnection { """ - Identifies the primary key from the database. + The total count of authors and co-authors across all commits. + """ + authorCount: Int! + + """ + A list of edges. + """ + edges: [CommitEdge] + + """ + A list of nodes. + """ + nodes: [Commit] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +The status of a git comparison between two refs. +""" +enum ComparisonStatus { + """ + The head ref is ahead of the base ref. + """ + AHEAD + + """ + The head ref is behind the base ref. + """ + BEHIND + + """ + The head ref is both ahead and behind of the base ref, indicating git history has diverged. """ - databaseId: Int! + DIVERGED + + """ + The head ref and base ref are identical. + """ + IDENTICAL +} + +""" +Represents a 'connected' event on a given issue or pull request. +""" +type ConnectedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! id: ID! """ - The reference of the content reference. + Reference originated in a different repository. + """ + isCrossRepository: Boolean! + + """ + Issue or pull request that made the reference. """ - reference: String! + source: ReferencedSubject! + + """ + Issue or pull request which was connected. + """ + subject: ReferencedSubject! } """ @@ -3560,6 +5366,12 @@ type ContributionCalendarDay { """ contributionCount: Int! + """ + Indication of contributions, relative to other days. Can be used to indicate + which color to represent this day on a calendar. + """ + contributionLevel: ContributionLevel! + """ The day this square represents. """ @@ -3612,32 +5424,43 @@ type ContributionCalendarWeek { } """ -Ordering options for contribution connections. +Varying levels of contributions from none to many. """ -input ContributionOrder { +enum ContributionLevel { """ - The ordering direction. + Lowest 25% of days of contributions. """ - direction: OrderDirection! + FIRST_QUARTILE """ - The field by which to order contributions. + Highest 25% of days of contributions. More contributions than the third quartile. + """ + FOURTH_QUARTILE - **Upcoming Change on 2019-10-01 UTC** - **Description:** `field` will be removed. Only one order field is supported. - **Reason:** `field` will be removed. """ - field: ContributionOrderField + No contributions occurred. + """ + NONE + + """ + Second lowest 25% of days of contributions. More contributions than the first quartile. + """ + SECOND_QUARTILE + + """ + Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile. + """ + THIRD_QUARTILE } """ -Properties by which contribution connections can be ordered. +Ordering options for contribution connections. """ -enum ContributionOrderField { +input ContributionOrder { """ - Order contributions by when they were made. + The ordering direction. """ - OCCURRED_AT + direction: OrderDirection! } """ @@ -3763,7 +5586,7 @@ type ContributionsCollection { """ Ordering options for contributions returned from the connection. """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} + orderBy: ContributionOrder = {direction: DESC} ): CreatedIssueContributionConnection! """ @@ -3859,7 +5682,7 @@ type ContributionsCollection { """ Ordering options for contributions returned from the connection. """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} + orderBy: ContributionOrder = {direction: DESC} ): CreatedPullRequestContributionConnection! """ @@ -3883,7 +5706,8 @@ type ContributionsCollection { ): [PullRequestContributionsByRepository!]! """ - Pull request review contributions made by the user. + Pull request review contributions made by the user. Returns the most recently + submitted review for each PR reviewed by the user. """ pullRequestReviewContributions( """ @@ -3909,7 +5733,7 @@ type ContributionsCollection { """ Ordering options for contributions returned from the connection. """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} + orderBy: ContributionOrder = {direction: DESC} ): CreatedPullRequestReviewContributionConnection! """ @@ -3954,7 +5778,7 @@ type ContributionsCollection { """ Ordering options for contributions returned from the connection. """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} + orderBy: ContributionOrder = {direction: DESC} ): CreatedRepositoryContributionConnection! """ @@ -4109,6 +5933,67 @@ type ConvertProjectCardNoteToIssuePayload { projectCard: ProjectCard } +""" +Autogenerated input type of ConvertPullRequestToDraft +""" +input ConvertPullRequestToDraftInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the pull request to convert to draft + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of ConvertPullRequestToDraft +""" +type ConvertPullRequestToDraftPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that is now a draft. + """ + pullRequest: PullRequest +} + +""" +Represents a 'convert_to_draft' event on a given pull request. +""" +type ConvertToDraftEvent implements Node & UniformResourceLocatable { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! + + """ + The HTTP path for this convert to draft event. + """ + resourcePath: URI! + + """ + The HTTP URL for this convert to draft event. + """ + url: URI! +} + """ Represents a 'converted_note_to_issue' event on a given issue or pull request. """ @@ -4145,10 +6030,151 @@ type ConvertedNoteToIssueEvent implements Node { projectColumnName: String! @preview(toggledBy: "starfox-preview") } +""" +Represents a 'converted_to_discussion' event on a given issue. +""" +type ConvertedToDiscussionEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The discussion that the issue was converted into. + """ + discussion: Discussion + id: ID! +} + +""" +Autogenerated input type of CopyProjectV2 +""" +input CopyProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Include draft issues in the new project + """ + includeDraftIssues: Boolean = false + + """ + The owner ID of the new project. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "OrganizationOrUser") + + """ + The ID of the source Project to copy. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The title of the project. + """ + title: String! +} + +""" +Autogenerated return type of CopyProjectV2 +""" +type CopyProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The copied project. + """ + projectV2: ProjectV2 +} + +""" +Autogenerated input type of CreateAttributionInvitation +""" +input CreateAttributionInvitationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the owner scoping the reattributable data. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Bot", "Enterprise", "Mannequin", "Organization", "User"]) + + """ + The Node ID of the account owning the data to reattribute. + """ + sourceId: ID! @possibleTypes(concreteTypes: ["Bot", "Enterprise", "Mannequin", "Organization", "User"]) + + """ + The Node ID of the account which may claim the data. + """ + targetId: ID! @possibleTypes(concreteTypes: ["Bot", "Enterprise", "Mannequin", "Organization", "User"]) +} + +""" +Autogenerated return type of CreateAttributionInvitation +""" +type CreateAttributionInvitationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The owner scoping the reattributable data. + """ + owner: Organization + + """ + The account owning the data to reattribute. + """ + source: Claimable + + """ + The account which may claim the data. + """ + target: Claimable +} + """ Autogenerated input type of CreateBranchProtectionRule """ input CreateBranchProtectionRuleInput { + """ + Can this branch be deleted. + """ + allowsDeletions: Boolean + + """ + Are force pushes allowed on this branch. + """ + allowsForcePushes: Boolean + + """ + Is branch creation a protected operation. + """ + blocksCreations: Boolean + + """ + A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. + """ + bypassForcePushActorIds: [ID!] + + """ + A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. + """ + bypassPullRequestActorIds: [ID!] + """ A unique identifier for the client performing the mutation. """ @@ -4164,13 +6190,24 @@ input CreateBranchProtectionRuleInput { """ isAdminEnforced: Boolean + """ + Whether users can pull changes from upstream when the branch is locked. Set to + `true` to allow fork syncing. Set to `false` to prevent fork syncing. + """ + lockAllowsFetchAndMerge: Boolean + + """ + Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. + """ + lockBranch: Boolean + """ The glob-like pattern used to determine matching branches. """ pattern: String! """ - A list of User, Team or App IDs allowed to push to matching branches. + A list of User, Team, or App IDs allowed to push to matching branches. """ pushActorIds: [ID!] @@ -4179,16 +6216,31 @@ input CreateBranchProtectionRuleInput { """ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: Boolean + """ Number of approving reviews required to update matching branches. """ requiredApprovingReviewCount: Int + """ + The list of required deployment environments + """ + requiredDeploymentEnvironments: [String!] + """ List of required status check contexts that must pass for commits to be accepted to matching branches. """ requiredStatusCheckContexts: [String!] + """ + The list of required status checks + """ + requiredStatusChecks: [RequiredStatusCheckInput!] + """ Are approving reviews required to update matching branches. """ @@ -4204,6 +6256,21 @@ input CreateBranchProtectionRuleInput { """ requiresCommitSignatures: Boolean + """ + Are conversations required to be resolved before merging. + """ + requiresConversationResolution: Boolean + + """ + Are successful deployments required before merging. + """ + requiresDeployments: Boolean + + """ + Are merge commits prohibited from being pushed to this branch. + """ + requiresLinearHistory: Boolean + """ Are status checks required to update matching branches. """ @@ -4225,7 +6292,7 @@ input CreateBranchProtectionRuleInput { restrictsReviewDismissals: Boolean """ - A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches. + A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches. """ reviewDismissalActorIds: [ID!] } @@ -4248,7 +6315,7 @@ type CreateBranchProtectionRulePayload { """ Autogenerated input type of CreateCheckRun """ -input CreateCheckRunInput @preview(toggledBy: "antiope-preview") { +input CreateCheckRunInput { """ Possible further actions the integrator can perform, which a user may trigger. """ @@ -4313,7 +6380,7 @@ input CreateCheckRunInput @preview(toggledBy: "antiope-preview") { """ Autogenerated return type of CreateCheckRun """ -type CreateCheckRunPayload @preview(toggledBy: "antiope-preview") { +type CreateCheckRunPayload { """ The newly created check run. """ @@ -4328,7 +6395,7 @@ type CreateCheckRunPayload @preview(toggledBy: "antiope-preview") { """ Autogenerated input type of CreateCheckSuite """ -input CreateCheckSuiteInput @preview(toggledBy: "antiope-preview") { +input CreateCheckSuiteInput { """ A unique identifier for the client performing the mutation. """ @@ -4348,7 +6415,7 @@ input CreateCheckSuiteInput @preview(toggledBy: "antiope-preview") { """ Autogenerated return type of CreateCheckSuite """ -type CreateCheckSuitePayload @preview(toggledBy: "antiope-preview") { +type CreateCheckSuitePayload { """ The newly created check suite. """ @@ -4361,13 +6428,13 @@ type CreateCheckSuitePayload @preview(toggledBy: "antiope-preview") { } """ -Autogenerated input type of CreateContentAttachment +Autogenerated input type of CreateCommitOnBranch """ -input CreateContentAttachmentInput { +input CreateCommitOnBranchInput { """ - The body of the content attachment, which may contain markdown. + The Ref to be updated. Must be a branch. """ - body: String! + branch: CommittableBranch! """ A unique identifier for the client performing the mutation. @@ -4375,29 +6442,39 @@ input CreateContentAttachmentInput { clientMutationId: String """ - The node ID of the content_reference. + The git commit oid expected at the head of the branch prior to the commit """ - contentReferenceId: ID! @possibleTypes(concreteTypes: ["ContentReference"]) + expectedHeadOid: GitObjectID! """ - The title of the content attachment. + A description of changes to files in this commit. """ - title: String! + fileChanges: FileChanges + + """ + The commit message the be included with the commit. + """ + message: CommitMessage! } """ -Autogenerated return type of CreateContentAttachment +Autogenerated return type of CreateCommitOnBranch """ -type CreateContentAttachmentPayload { +type CreateCommitOnBranchPayload { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The newly created content attachment. + The new commit. """ - contentAttachment: ContentAttachment + commit: Commit + + """ + The ref which has been updated to point to the new commit. + """ + ref: Ref } """ @@ -4535,6 +6612,51 @@ type CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") { deploymentStatus: DeploymentStatus } +""" +Autogenerated input type of CreateDiscussion +""" +input CreateDiscussionInput { + """ + The body of the discussion. + """ + body: String! + + """ + The id of the discussion category to associate with this discussion. + """ + categoryId: ID! @possibleTypes(concreteTypes: ["DiscussionCategory"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the repository on which to create the discussion. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + + """ + The title of the discussion. + """ + title: String! +} + +""" +Autogenerated return type of CreateDiscussion +""" +type CreateDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that was just created. + """ + discussion: Discussion +} + """ Autogenerated input type of CreateEnterpriseOrganization """ @@ -4582,7 +6704,7 @@ type CreateEnterpriseOrganizationPayload { """ The enterprise that owns the created organization. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ The organization that was created. @@ -4590,6 +6712,86 @@ type CreateEnterpriseOrganizationPayload { organization: Organization } +""" +Autogenerated input type of CreateEnvironment +""" +input CreateEnvironmentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The name of the environment. + """ + name: String! + + """ + The node ID of the repository. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of CreateEnvironment +""" +type CreateEnvironmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new or existing environment. + """ + environment: Environment +} + +""" +Autogenerated input type of CreateIpAllowListEntry +""" +input CreateIpAllowListEntryInput { + """ + An IP address or range of addresses in CIDR notation. + """ + allowListValue: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Whether the IP allow list entry is active when an IP allow list is enabled. + """ + isActive: Boolean! + + """ + An optional name for the IP allow list entry. + """ + name: String + + """ + The ID of the owner for which to create the new IP allow list entry. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") +} + +""" +Autogenerated return type of CreateIpAllowListEntry +""" +type CreateIpAllowListEntryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IP allow list entry that was created. + """ + ipAllowListEntry: IpAllowListEntry +} + """ Autogenerated input type of CreateIssue """ @@ -4609,6 +6811,11 @@ input CreateIssueInput { """ clientMutationId: String + """ + The name of an issue template in the repository, assigns labels and assignees from the template to the issue + """ + issueTemplate: String + """ An array of Node IDs of labels for this issue. """ @@ -4695,6 +6902,106 @@ type CreateLabelPayload @preview(toggledBy: "bane-preview") { label: Label } +""" +Autogenerated input type of CreateLinkedBranch +""" +input CreateLinkedBranchInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the issue to link to. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + The name of the new branch. Defaults to issue number and title. + """ + name: String + + """ + The commit SHA to base the new branch on. + """ + oid: GitObjectID! + + """ + ID of the repository to create the branch in. Defaults to the issue repository. + """ + repositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of CreateLinkedBranch +""" +type CreateLinkedBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new branch issue reference. + """ + linkedBranch: LinkedBranch +} + +""" +Autogenerated input type of CreateMigrationSource +""" +input CreateMigrationSourceInput { + """ + The migration source access token. + """ + accessToken: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The GitHub personal access token of the user importing to the target repository. + """ + githubPat: String + + """ + The migration source name. + """ + name: String! + + """ + The ID of the organization that will own the migration source. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The migration source type. + """ + type: MigrationSourceType! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + url: String! +} + +""" +Autogenerated return type of CreateMigrationSource +""" +type CreateMigrationSourcePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The created migration source. + """ + migrationSource: MigrationSource +} + """ Autogenerated input type of CreateProject """ @@ -4745,6 +7052,96 @@ type CreateProjectPayload { project: Project } +""" +Autogenerated input type of CreateProjectV2Field +""" +input CreateProjectV2FieldInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The data type of the field. + """ + dataType: ProjectV2CustomFieldType! + + """ + The name of the field. + """ + name: String! + + """ + The ID of the Project to create the field in. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + Options for a single select field. At least one value is required if data_type is SINGLE_SELECT + """ + singleSelectOptions: [ProjectV2SingleSelectFieldOptionInput!] +} + +""" +Autogenerated return type of CreateProjectV2Field +""" +type CreateProjectV2FieldPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new field. + """ + projectV2Field: ProjectV2FieldConfiguration +} + +""" +Autogenerated input type of CreateProjectV2 +""" +input CreateProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The owner ID to create the project under. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "OrganizationOrUser") + + """ + The repository to link the project to. + """ + repositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) + + """ + The team to link the project to. The team will be granted read permissions. + """ + teamId: ID @possibleTypes(concreteTypes: ["Team"]) + + """ + The title of the project. + """ + title: String! +} + +""" +Autogenerated return type of CreateProjectV2 +""" +type CreateProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new project. + """ + projectV2: ProjectV2 +} + """ Autogenerated input type of CreatePullRequest """ @@ -4769,7 +7166,7 @@ input CreatePullRequestInput { """ Indicates whether this pull request should be a draft. """ - draft: Boolean = false @preview(toggledBy: "shadow-cat-preview") + draft: Boolean = false """ The name of the branch where your changes are implemented. For cross-repository pull requests @@ -4777,6 +7174,11 @@ input CreatePullRequestInput { """ headRefName: String! + """ + The Node ID of the head repository. + """ + headRepositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) + """ Indicates whether maintainers can modify the pull request. """ @@ -4920,10 +7322,243 @@ type CreateRepositoryPayload { repository: Repository } +""" +Autogenerated input type of CreateSponsorsListing +""" +input CreateSponsorsListingInput { + """ + The country or region where the sponsorable's bank account is located. + Required if fiscalHostLogin is not specified, ignored when fiscalHostLogin is specified. + """ + billingCountryOrRegionCode: SponsorsCountryOrRegionCode + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The email address we should use to contact you about the GitHub Sponsors + profile being created. This will not be shared publicly. Must be a verified + email address already on your GitHub account. Only relevant when the + sponsorable is yourself. Defaults to your primary email address on file if omitted. + """ + contactEmail: String + + """ + The username of the supported fiscal host's GitHub organization, if you want + to receive sponsorship payouts through a fiscal host rather than directly to a + bank account. For example, 'Open-Source-Collective' for Open Source Collective + or 'numfocus' for numFOCUS. Case insensitive. See https://docs.github.com/sponsors/receiving-sponsorships-through-github-sponsors/using-a-fiscal-host-to-receive-github-sponsors-payouts + for more information. + """ + fiscalHostLogin: String + + """ + The URL for your profile page on the fiscal host's website, e.g., + https://opencollective.com/babel or https://numfocus.org/project/bokeh. + Required if fiscalHostLogin is specified. + """ + fiscallyHostedProjectProfileUrl: String + + """ + Provide an introduction to serve as the main focus that appears on your GitHub + Sponsors profile. It's a great opportunity to help potential sponsors learn + more about you, your work, and why their sponsorship is important to you. + GitHub-flavored Markdown is supported. + """ + fullDescription: String + + """ + The country or region where the sponsorable resides. This is for tax purposes. + Required if the sponsorable is yourself, ignored when sponsorableLogin + specifies an organization. + """ + residenceCountryOrRegionCode: SponsorsCountryOrRegionCode + + """ + The username of the organization to create a GitHub Sponsors profile for, if + desired. Defaults to creating a GitHub Sponsors profile for the authenticated + user if omitted. + """ + sponsorableLogin: String +} + +""" +Autogenerated return type of CreateSponsorsListing +""" +type CreateSponsorsListingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new GitHub Sponsors profile. + """ + sponsorsListing: SponsorsListing +} + +""" +Autogenerated input type of CreateSponsorsTier +""" +input CreateSponsorsTierInput { + """ + The value of the new tier in US dollars. Valid values: 1-12000. + """ + amount: Int! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A description of what this tier is, what perks sponsors might receive, what a sponsorship at this tier means for you, etc. + """ + description: String! + + """ + Whether sponsorships using this tier should happen monthly/yearly or just once. + """ + isRecurring: Boolean = true + + """ + Whether to make the tier available immediately for sponsors to choose. + Defaults to creating a draft tier that will not be publicly visible. + """ + publish: Boolean = false + + """ + Optional ID of the private repository that sponsors at this tier should gain + read-only access to. Must be owned by an organization. + """ + repositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) + + """ + Optional name of the private repository that sponsors at this tier should gain + read-only access to. Must be owned by an organization. Necessary if + repositoryOwnerLogin is given. Will be ignored if repositoryId is given. + """ + repositoryName: String + + """ + Optional login of the organization owner of the private repository that + sponsors at this tier should gain read-only access to. Necessary if + repositoryName is given. Will be ignored if repositoryId is given. + """ + repositoryOwnerLogin: String + + """ + The ID of the user or organization who owns the GitHub Sponsors profile. + Defaults to the current user if omitted and sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who owns the GitHub Sponsors profile. + Defaults to the current user if omitted and sponsorableId is not given. + """ + sponsorableLogin: String + + """ + Optional message new sponsors at this tier will receive. + """ + welcomeMessage: String +} + +""" +Autogenerated return type of CreateSponsorsTier +""" +type CreateSponsorsTierPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new tier. + """ + sponsorsTier: SponsorsTier +} + +""" +Autogenerated input type of CreateSponsorship +""" +input CreateSponsorshipInput { + """ + The amount to pay to the sponsorable in US dollars. Required if a tierId is not specified. Valid values: 1-12000. + """ + amount: Int + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Whether the sponsorship should happen monthly/yearly or just this one time. Required if a tierId is not specified. + """ + isRecurring: Boolean + + """ + Specify whether others should be able to see that the sponsor is sponsoring + the sponsorable. Public visibility still does not reveal which tier is used. + """ + privacyLevel: SponsorshipPrivacy = PUBLIC + + """ + Whether the sponsor should receive email updates from the sponsorable. + """ + receiveEmails: Boolean = true + + """ + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. + """ + sponsorId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsor") + + """ + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. + """ + sponsorLogin: String + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String + + """ + The ID of one of sponsorable's existing tiers to sponsor at. Required if amount is not specified. + """ + tierId: ID @possibleTypes(concreteTypes: ["SponsorsTier"]) +} + +""" +Autogenerated return type of CreateSponsorship +""" +type CreateSponsorshipPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The sponsorship that was started. + """ + sponsorship: Sponsorship +} + """ Autogenerated input type of CreateTeamDiscussionComment """ -input CreateTeamDiscussionCommentInput @preview(toggledBy: "echo-preview") { +input CreateTeamDiscussionCommentInput { """ The content of the comment. """ @@ -4943,7 +7578,7 @@ input CreateTeamDiscussionCommentInput @preview(toggledBy: "echo-preview") { """ Autogenerated return type of CreateTeamDiscussionComment """ -type CreateTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") { +type CreateTeamDiscussionCommentPayload { """ A unique identifier for the client performing the mutation. """ @@ -4958,7 +7593,7 @@ type CreateTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") { """ Autogenerated input type of CreateTeamDiscussion """ -input CreateTeamDiscussionInput @preview(toggledBy: "echo-preview") { +input CreateTeamDiscussionInput { """ The content of the discussion. """ @@ -4970,7 +7605,7 @@ input CreateTeamDiscussionInput @preview(toggledBy: "echo-preview") { clientMutationId: String """ - If true, restricts the visiblity of this discussion to team members and + If true, restricts the visibility of this discussion to team members and organization admins. If false or not specified, allows any organization member to view this discussion. """ @@ -4990,7 +7625,7 @@ input CreateTeamDiscussionInput @preview(toggledBy: "echo-preview") { """ Autogenerated return type of CreateTeamDiscussion """ -type CreateTeamDiscussionPayload @preview(toggledBy: "echo-preview") { +type CreateTeamDiscussionPayload { """ A unique identifier for the client performing the mutation. """ @@ -5519,7 +8154,7 @@ type DeclineTopicSuggestionPayload { } """ -The possible default permissions for repositories. +The possible base permissions for repositories. """ enum DefaultRepositoryPermissionField { """ @@ -5578,6 +8213,146 @@ type DeleteBranchProtectionRulePayload { clientMutationId: String } +""" +Autogenerated input type of DeleteDeployment +""" +input DeleteDeploymentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the deployment to be deleted. + """ + id: ID! @possibleTypes(concreteTypes: ["Deployment"]) +} + +""" +Autogenerated return type of DeleteDeployment +""" +type DeleteDeploymentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated input type of DeleteDiscussionComment +""" +input DeleteDiscussionCommentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node id of the discussion comment to delete. + """ + id: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of DeleteDiscussionComment +""" +type DeleteDiscussionCommentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion comment that was just deleted. + """ + comment: DiscussionComment +} + +""" +Autogenerated input type of DeleteDiscussion +""" +input DeleteDiscussionInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the discussion to delete. + """ + id: ID! @possibleTypes(concreteTypes: ["Discussion"]) +} + +""" +Autogenerated return type of DeleteDiscussion +""" +type DeleteDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that was just deleted. + """ + discussion: Discussion +} + +""" +Autogenerated input type of DeleteEnvironment +""" +input DeleteEnvironmentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the environment to be deleted. + """ + id: ID! @possibleTypes(concreteTypes: ["Environment"]) +} + +""" +Autogenerated return type of DeleteEnvironment +""" +type DeleteEnvironmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated input type of DeleteIpAllowListEntry +""" +input DeleteIpAllowListEntryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the IP allow list entry to delete. + """ + ipAllowListEntryId: ID! @possibleTypes(concreteTypes: ["IpAllowListEntry"]) +} + +""" +Autogenerated return type of DeleteIpAllowListEntry +""" +type DeleteIpAllowListEntryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IP allow list entry that was deleted. + """ + ipAllowListEntry: IpAllowListEntry +} + """ Autogenerated input type of DeleteIssueComment """ @@ -5658,6 +8433,66 @@ type DeleteLabelPayload @preview(toggledBy: "bane-preview") { clientMutationId: String } +""" +Autogenerated input type of DeleteLinkedBranch +""" +input DeleteLinkedBranchInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the linked branch + """ + linkedBranchId: ID! @possibleTypes(concreteTypes: ["LinkedBranch"]) +} + +""" +Autogenerated return type of DeleteLinkedBranch +""" +type DeleteLinkedBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue the linked branch was unlinked from. + """ + issue: Issue +} + +""" +Autogenerated input type of DeletePackageVersion +""" +input DeletePackageVersionInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the package version to be deleted. + """ + packageVersionId: ID! @possibleTypes(concreteTypes: ["PackageVersion"]) +} + +""" +Autogenerated return type of DeletePackageVersion +""" +type DeletePackageVersionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Whether or not the operation succeeded. + """ + success: Boolean +} + """ Autogenerated input type of DeleteProjectCard """ @@ -5758,6 +8593,105 @@ type DeleteProjectPayload { owner: ProjectOwner } +""" +Autogenerated input type of DeleteProjectV2Field +""" +input DeleteProjectV2FieldInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the field to delete. + """ + fieldId: ID! + @possibleTypes( + concreteTypes: ["ProjectV2Field", "ProjectV2IterationField", "ProjectV2SingleSelectField"] + abstractType: "ProjectV2FieldConfiguration" + ) +} + +""" +Autogenerated return type of DeleteProjectV2Field +""" +type DeleteProjectV2FieldPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The deleted field. + """ + projectV2Field: ProjectV2FieldConfiguration +} + +""" +Autogenerated input type of DeleteProjectV2 +""" +input DeleteProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to delete. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated input type of DeleteProjectV2Item +""" +input DeleteProjectV2ItemInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the item to be removed. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project from which the item should be removed. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of DeleteProjectV2Item +""" +type DeleteProjectV2ItemPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the deleted item. + """ + deletedItemId: ID +} + +""" +Autogenerated return type of DeleteProjectV2 +""" +type DeleteProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The deleted Project. + """ + projectV2: ProjectV2 +} + """ Autogenerated input type of DeletePullRequestReviewComment """ @@ -5786,6 +8720,11 @@ type DeletePullRequestReviewCommentPayload { The pull request review the deleted comment belonged to. """ pullRequestReview: PullRequestReview + + """ + The deleted pull request review comment. + """ + pullRequestReviewComment: PullRequestReviewComment } """ @@ -5846,7 +8785,7 @@ type DeleteRefPayload { """ Autogenerated input type of DeleteTeamDiscussionComment """ -input DeleteTeamDiscussionCommentInput @preview(toggledBy: "echo-preview") { +input DeleteTeamDiscussionCommentInput { """ A unique identifier for the client performing the mutation. """ @@ -5861,7 +8800,7 @@ input DeleteTeamDiscussionCommentInput @preview(toggledBy: "echo-preview") { """ Autogenerated return type of DeleteTeamDiscussionComment """ -type DeleteTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") { +type DeleteTeamDiscussionCommentPayload { """ A unique identifier for the client performing the mutation. """ @@ -5871,7 +8810,7 @@ type DeleteTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") { """ Autogenerated input type of DeleteTeamDiscussion """ -input DeleteTeamDiscussionInput @preview(toggledBy: "echo-preview") { +input DeleteTeamDiscussionInput { """ A unique identifier for the client performing the mutation. """ @@ -5886,13 +8825,43 @@ input DeleteTeamDiscussionInput @preview(toggledBy: "echo-preview") { """ Autogenerated return type of DeleteTeamDiscussion """ -type DeleteTeamDiscussionPayload @preview(toggledBy: "echo-preview") { +type DeleteTeamDiscussionPayload { """ A unique identifier for the client performing the mutation. """ clientMutationId: String } +""" +Autogenerated input type of DeleteVerifiableDomain +""" +input DeleteVerifiableDomainInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the verifiable domain to delete. + """ + id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"]) +} + +""" +Autogenerated return type of DeleteVerifiableDomain +""" +type DeleteVerifiableDomainPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The owning account from which the domain was deleted. + """ + owner: VerifiableDomainOwner +} + """ Represents a 'demilestoned' event on a given issue or pull request. """ @@ -5919,6 +8888,46 @@ type DemilestonedEvent implements Node { subject: MilestoneItem! } +""" +A Dependabot Update for a dependency in a repository +""" +type DependabotUpdate implements RepositoryNode { + """ + The error from a dependency update + """ + error: DependabotUpdateError + + """ + The associated pull request + """ + pullRequest: PullRequest + + """ + The repository associated with this node. + """ + repository: Repository! +} + +""" +An error produced from a Dependabot Update +""" +type DependabotUpdateError { + """ + The body of the error + """ + body: String! + + """ + The error code + """ + errorType: String! + + """ + The title of the error + """ + title: String! +} + """ A dependency manifest entry """ @@ -5928,13 +8937,23 @@ type DependencyGraphDependency @preview(toggledBy: "hawkgirl-preview") { """ hasDependencies: Boolean! + """ + The original name of the package, as it appears in the manifest. + """ + packageLabel: String! + @deprecated( + reason: "`packageLabel` will be removed. Use normalized `packageName` field instead. Removal on 2022-10-01 UTC." + ) + """ The dependency package manager """ packageManager: String """ - The required package name + The name of the package in the canonical form used by the package manager. + This may differ from the original textual form (see packageLabel), for example + in a package manager that uses case-insensitive comparisons. """ packageName: String! @@ -5989,6 +9008,61 @@ type DependencyGraphDependencyEdge @preview(toggledBy: "hawkgirl-preview") { node: DependencyGraphDependency } +""" +The possible ecosystems of a dependency graph package. +""" +enum DependencyGraphEcosystem { + """ + GitHub Actions + """ + ACTIONS + + """ + PHP packages hosted at packagist.org + """ + COMPOSER + + """ + Go modules + """ + GO + + """ + Java artifacts hosted at the Maven central repository + """ + MAVEN + + """ + JavaScript packages hosted at npmjs.com + """ + NPM + + """ + .NET packages hosted at the NuGet Gallery + """ + NUGET + + """ + Python packages hosted at PyPI.org + """ + PIP + + """ + Dart packages hosted at pub.dev + """ + PUB + + """ + Ruby gems hosted at RubyGems.org + """ + RUBYGEMS + + """ + Rust crates + """ + RUST +} + """ Dependency manifest for a repository """ @@ -6219,7 +9293,7 @@ type Deployment implements Node { """ Identifies the actor who triggered the deployment. """ - creator: Actor + creator: Actor! """ Identifies the primary key from the database. @@ -6232,16 +9306,26 @@ type Deployment implements Node { description: String """ - The environment to which this deployment was made. + The latest environment to which this deployment was made. """ environment: String id: ID! + """ + The latest environment to which this deployment was made. + """ + latestEnvironment: String + """ The latest status of this deployment. """ latestStatus: DeploymentStatus + """ + The original environment to which this deployment was made. + """ + originalEnvironment: String + """ Extra information that a deployment system might need. """ @@ -6389,6 +9473,347 @@ enum DeploymentOrderField { CREATED_AT } +""" +A protection rule. +""" +type DeploymentProtectionRule { + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The teams or users that can review the deployment + """ + reviewers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentReviewerConnection! + + """ + The timeout in minutes for this protection rule. + """ + timeout: Int! + + """ + The type of protection rule. + """ + type: DeploymentProtectionRuleType! +} + +""" +The connection type for DeploymentProtectionRule. +""" +type DeploymentProtectionRuleConnection { + """ + A list of edges. + """ + edges: [DeploymentProtectionRuleEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentProtectionRule] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentProtectionRuleEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentProtectionRule +} + +""" +The possible protection rule types. +""" +enum DeploymentProtectionRuleType { + """ + Required reviewers + """ + REQUIRED_REVIEWERS + + """ + Wait timer + """ + WAIT_TIMER +} + +""" +A request to deploy a workflow run to an environment. +""" +type DeploymentRequest { + """ + Whether or not the current user can approve the deployment + """ + currentUserCanApprove: Boolean! + + """ + The target environment of the deployment + """ + environment: Environment! + + """ + The teams or users that can review the deployment + """ + reviewers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentReviewerConnection! + + """ + The wait timer in minutes configured in the environment + """ + waitTimer: Int! + + """ + The wait timer in minutes configured in the environment + """ + waitTimerStartedAt: DateTime +} + +""" +The connection type for DeploymentRequest. +""" +type DeploymentRequestConnection { + """ + A list of edges. + """ + edges: [DeploymentRequestEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentRequest] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentRequestEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentRequest +} + +""" +A deployment review. +""" +type DeploymentReview implements Node { + """ + The comment the user left. + """ + comment: String! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The environments approved or rejected + """ + environments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): EnvironmentConnection! + id: ID! + + """ + The decision of the user. + """ + state: DeploymentReviewState! + + """ + The user that reviewed the deployment. + """ + user: User! +} + +""" +The connection type for DeploymentReview. +""" +type DeploymentReviewConnection { + """ + A list of edges. + """ + edges: [DeploymentReviewEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentReview] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentReviewEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentReview +} + +""" +The possible states for a deployment review. +""" +enum DeploymentReviewState { + """ + The deployment was approved. + """ + APPROVED + + """ + The deployment was rejected. + """ + REJECTED +} + +""" +Users and teams. +""" +union DeploymentReviewer = Team | User + +""" +The connection type for DeploymentReviewer. +""" +type DeploymentReviewerConnection { + """ + A list of edges. + """ + edges: [DeploymentReviewerEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentReviewer] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentReviewerEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentReviewer +} + """ The possible states in which a deployment can be. """ @@ -6437,6 +9862,11 @@ enum DeploymentState { The deployment has queued """ QUEUED + + """ + The deployment is waiting. + """ + WAITING } """ @@ -6451,7 +9881,7 @@ type DeploymentStatus implements Node { """ Identifies the actor who triggered the deployment. """ - creator: Actor + creator: Actor! """ Identifies the deployment associated with status. @@ -6568,112 +9998,162 @@ enum DeploymentStatusState { The deployment was successful. """ SUCCESS + + """ + The deployment is waiting. + """ + WAITING } """ -Autogenerated input type of DismissPullRequestReview +The possible sides of a diff. """ -input DismissPullRequestReviewInput { +enum DiffSide { """ - A unique identifier for the client performing the mutation. + The left side of the diff. """ - clientMutationId: String + LEFT """ - The contents of the pull request review dismissal message. + The right side of the diff. """ - message: String! + RIGHT +} + +""" +Autogenerated input type of DisablePullRequestAutoMerge +""" +input DisablePullRequestAutoMergeInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String """ - The Node ID of the pull request review to modify. + ID of the pull request to disable auto merge on. """ - pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) } """ -Autogenerated return type of DismissPullRequestReview +Autogenerated return type of DisablePullRequestAutoMerge """ -type DismissPullRequestReviewPayload { +type DisablePullRequestAutoMergePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The dismissed pull request review. + The pull request auto merge was disabled on. """ - pullRequestReview: PullRequestReview + pullRequest: PullRequest } """ -Specifies a review comment to be left with a Pull Request Review. +Represents a 'disconnected' event on a given issue or pull request. """ -input DraftPullRequestReviewComment { +type DisconnectedEvent implements Node { """ - Body of the comment to leave. + Identifies the actor who performed the event. """ - body: String! + actor: Actor """ - Path to the file being commented on. + Identifies the date and time when the object was created. """ - path: String! + createdAt: DateTime! + id: ID! """ - Position in the file to leave a comment on. + Reference originated in a different repository. """ - position: Int! + isCrossRepository: Boolean! + + """ + Issue or pull request from which the issue was disconnected. + """ + source: ReferencedSubject! + + """ + Issue or pull request which was disconnected. + """ + subject: ReferencedSubject! } """ -An account to manage multiple organizations with consolidated policy and billing. +A discussion in a repository. """ -type Enterprise implements Node @preview(toggledBy: "enterprise-accounts-preview") { +type Discussion implements Closable & Comment & Deletable & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & Updatable & Votable { """ - A URL pointing to the enterprise's public avatar. + Reason that the conversation was locked. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + activeLockReason: LockReason """ - Enterprise billing information visible to enterprise billing managers. + The comment chosen as this discussion's answer, if any. """ - billingInfo: EnterpriseBillingInfo + answer: DiscussionComment """ - Identifies the date and time when the object was created. + The time when a user chose this discussion's answer, if answered. """ - createdAt: DateTime! + answerChosenAt: DateTime """ - Identifies the primary key from the database. + The user who chose this discussion's answer, if answered. """ - databaseId: Int + answerChosenBy: Actor """ - The description of the enterprise. + The actor who authored the comment. """ - description: String + author: Actor """ - The description of the enterprise as HTML. + Author's association with the subject of the comment. """ - descriptionHTML: HTML! - id: ID! + authorAssociation: CommentAuthorAssociation! """ - The location of the enterprise. + The main text of the discussion post. """ - location: String + body: String! """ - A list of users who are members of this enterprise. + The body rendered to HTML. """ - members( + bodyHTML: HTML! + + """ + The body rendered to text. + """ + bodyText: String! + + """ + The category for this discussion. + """ + category: DiscussionCategory! + + """ + Indicates if the object is closed (definition of closed may depend on type) + """ + closed: Boolean! + + """ + Identifies the date and time when the object was closed. + """ + closedAt: DateTime + + """ + The replies to the discussion. + """ + comments( """ Returns the elements in the list that come after the specified cursor. """ @@ -6684,11 +10164,6 @@ type Enterprise implements Node @preview(toggledBy: "enterprise-accounts-preview """ before: String - """ - Only return members within the selected GitHub Enterprise deployment - """ - deployment: EnterpriseUserDeployment - """ Returns the first _n_ elements from the list. """ @@ -6698,37 +10173,38 @@ type Enterprise implements Node @preview(toggledBy: "enterprise-accounts-preview Returns the last _n_ elements from the list. """ last: Int + ): DiscussionCommentConnection! - """ - Ordering options for members returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! - """ - Only return members within the organizations with these logins - """ - organizationLogins: [String!] + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! - """ - The search string to look for. - """ - query: String + """ + Identifies the primary key from the database. + """ + databaseId: Int - """ - The role of the user in the enterprise organization or server. - """ - role: EnterpriseUserAccountMembershipRole - ): EnterpriseMemberConnection! + """ + The actor who edited the comment. + """ + editor: Actor + id: ID! """ - The name of the enterprise. + Check if this comment was edited and includes an edit with the creation data """ - name: String! + includesCreatedEdit: Boolean! """ - A list of organizations that belong to this enterprise. + A list of labels associated with the object. """ - organizations( + labels( """ Returns the elements in the list that come after the specified cursor. """ @@ -6750,35 +10226,45 @@ type Enterprise implements Node @preview(toggledBy: "enterprise-accounts-preview last: Int """ - Ordering options for organizations returned from the connection. + Ordering options for labels returned from the connection. """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection - """ - The search string to look for. - """ - query: String - ): OrganizationConnection! + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime """ - Enterprise information only visible to enterprise owners. + `true` if the object is locked """ - ownerInfo: EnterpriseOwnerInfo + locked: Boolean! """ - The HTTP path for this enterprise. + The number identifying this discussion within the repository. """ - resourcePath: URI! + number: Int! """ - The HTTP URL for this enterprise. + The poll associated with this discussion, if one exists. """ - url: URI! + poll: DiscussionPoll """ - A list of user accounts on this enterprise. + Identifies when the comment was published at. """ - userAccounts( + publishedAt: DateTime + + """ + A list of reactions grouped by content left on the subject. + """ + reactionGroups: [ReactionGroup!] + + """ + A list of Reactions left on the Issue. + """ + reactions( """ Returns the elements in the list that come after the specified cursor. """ @@ -6789,6 +10275,11 @@ type Enterprise implements Node @preview(toggledBy: "enterprise-accounts-preview """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -6798,113 +10289,173 @@ type Enterprise implements Node @preview(toggledBy: "enterprise-accounts-preview Returns the last _n_ elements from the list. """ last: Int - ): EnterpriseUserAccountConnection! - """ - Is the current viewer an admin of this enterprise? - """ - viewerIsAdmin: Boolean! + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The URL of the enterprise website. + The repository associated with this node. """ - websiteUrl: URI -} + repository: Repository! -""" -The connection type for User. -""" -type EnterpriseAdministratorConnection @preview(toggledBy: "enterprise-accounts-preview") { """ - A list of edges. + The path for this discussion. """ - edges: [EnterpriseAdministratorEdge] + resourcePath: URI! """ - A list of nodes. + The title of this discussion. """ - nodes: [User] + title: String! """ - Information to aid in pagination. + Identifies the date and time when the object was last updated. """ - pageInfo: PageInfo! + updatedAt: DateTime! """ - Identifies the total count of items in the connection. + Number of upvotes that this subject has received. """ - totalCount: Int! -} + upvoteCount: Int! -""" -A User who is an administrator of an enterprise. -""" -type EnterpriseAdministratorEdge @preview(toggledBy: "enterprise-accounts-preview") { """ - A cursor for use in pagination. + The URL for this discussion. """ - cursor: String! + url: URI! """ - The item at the end of the edge. + A list of edits to this content. """ - node: User + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The role of the administrator. + Check if the current viewer can delete this object. """ - role: EnterpriseAdministratorRole! + viewerCanDelete: Boolean! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Check if the viewer is able to change their subscription status for the repository. + """ + viewerCanSubscribe: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Whether or not the current user can add or remove an upvote on this subject. + """ + viewerCanUpvote: Boolean! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! + + """ + Whether or not the current user has already upvoted this subject. + """ + viewerHasUpvoted: Boolean! + + """ + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + """ + viewerSubscription: SubscriptionState } """ -An invitation for a user to become an owner or billing manager of an enterprise. +A category for discussions in a repository. """ -type EnterpriseAdministratorInvitation implements Node @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionCategory implements Node & RepositoryNode { """ Identifies the date and time when the object was created. """ createdAt: DateTime! """ - The email of the person who was invited to the enterprise. + A description of this category. """ - email: String + description: String """ - The enterprise the invitation is for. + An emoji representing this category. """ - enterprise: Enterprise! + emoji: String! + + """ + This category's emoji rendered as HTML. + """ + emojiHTML: HTML! id: ID! """ - The user who was invited to the enterprise. + Whether or not discussions in this category support choosing an answer with the markDiscussionCommentAsAnswer mutation. """ - invitee: User + isAnswerable: Boolean! """ - The user who created the invitation. + The name of this category. """ - inviter: User + name: String! """ - The invitee's pending role in the enterprise (owner or billing_manager). + The repository associated with this node. """ - role: EnterpriseAdministratorRole! + repository: Repository! + + """ + The slug of this category. + """ + slug: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! } """ -The connection type for EnterpriseAdministratorInvitation. +The connection type for DiscussionCategory. """ -type EnterpriseAdministratorInvitationConnection { +type DiscussionCategoryConnection { """ A list of edges. """ - edges: [EnterpriseAdministratorInvitationEdge] + edges: [DiscussionCategoryEdge] """ A list of nodes. """ - nodes: [EnterpriseAdministratorInvitation] @preview(toggledBy: "enterprise-accounts-preview") + nodes: [DiscussionCategory] """ Information to aid in pagination. @@ -6920,7 +10471,7 @@ type EnterpriseAdministratorInvitationConnection { """ An edge in a connection. """ -type EnterpriseAdministratorInvitationEdge { +type DiscussionCategoryEdge { """ A cursor for use in pagination. """ @@ -6929,207 +10480,195 @@ type EnterpriseAdministratorInvitationEdge { """ The item at the end of the edge. """ - node: EnterpriseAdministratorInvitation @preview(toggledBy: "enterprise-accounts-preview") + node: DiscussionCategory } """ -Ordering options for enterprise administrator invitation connections +A comment on a discussion. """ -input EnterpriseAdministratorInvitationOrder @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionComment implements Comment & Deletable & Minimizable & Node & Reactable & Updatable & UpdatableComment & Votable { """ - The ordering direction. + The actor who authored the comment. """ - direction: OrderDirection! + author: Actor """ - The field to order enterprise administrator invitations by. + Author's association with the subject of the comment. """ - field: EnterpriseAdministratorInvitationOrderField! -} + authorAssociation: CommentAuthorAssociation! -""" -Properties by which enterprise administrator invitation connections can be ordered. -""" -enum EnterpriseAdministratorInvitationOrderField @preview(toggledBy: "enterprise-accounts-preview") { """ - Order enterprise administrator member invitations by creation time + The body as Markdown. """ - CREATED_AT -} + body: String! -""" -The possible administrator roles in an enterprise account. -""" -enum EnterpriseAdministratorRole @preview(toggledBy: "enterprise-accounts-preview") { """ - Represents a billing manager of the enterprise account. + The body rendered to HTML. """ - BILLING_MANAGER + bodyHTML: HTML! """ - Represents an owner of the enterprise account. + The body rendered to text. """ - OWNER -} + bodyText: String! -""" -Metadata for an audit entry containing enterprise account information. -""" -interface EnterpriseAuditEntryData { """ - The HTTP path for this enterprise. + Identifies the date and time when the object was created. """ - enterpriseResourcePath: URI + createdAt: DateTime! """ - The slug of the enterprise. + Check if this comment was created via an email reply. """ - enterpriseSlug: String + createdViaEmail: Boolean! """ - The HTTP URL for this enterprise. + Identifies the primary key from the database. """ - enterpriseUrl: URI -} + databaseId: Int -""" -Enterprise billing information visible to enterprise billing managers and owners. -""" -type EnterpriseBillingInfo @preview(toggledBy: "enterprise-accounts-preview") { """ - The number of licenseable users/emails across the enterprise. + The time when this replied-to comment was deleted """ - allLicensableUsersCount: Int! + deletedAt: DateTime """ - The number of data packs used by all organizations owned by the enterprise. + The discussion this comment was created in """ - assetPacks: Int! + discussion: Discussion """ - The number of available seats across all owned organizations based on the unique number of billable users. + The actor who edited the comment. """ - availableSeats: Int! + editor: Actor + id: ID! """ - The bandwidth quota in GB for all organizations owned by the enterprise. + Check if this comment was edited and includes an edit with the creation data """ - bandwidthQuota: Float! + includesCreatedEdit: Boolean! """ - The bandwidth usage in GB for all organizations owned by the enterprise. + Has this comment been chosen as the answer of its discussion? """ - bandwidthUsage: Float! + isAnswer: Boolean! """ - The bandwidth usage as a percentage of the bandwidth quota. + Returns whether or not a comment has been minimized. """ - bandwidthUsagePercentage: Int! + isMinimized: Boolean! """ - The total seats across all organizations owned by the enterprise. + The moment the editor made the last edit """ - seats: Int! + lastEditedAt: DateTime """ - The storage quota in GB for all organizations owned by the enterprise. + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. """ - storageQuota: Float! + minimizedReason: String """ - The storage usage in GB for all organizations owned by the enterprise. + Identifies when the comment was published at. """ - storageUsage: Float! + publishedAt: DateTime """ - The storage usage as a percentage of the storage quota. + A list of reactions grouped by content left on the subject. """ - storageUsagePercentage: Int! -} + reactionGroups: [ReactionGroup!] -""" -The possible values for the enterprise default repository permission setting. -""" -enum EnterpriseDefaultRepositoryPermissionSettingValue @preview(toggledBy: "enterprise-accounts-preview") { """ - Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. + A list of Reactions left on the Issue. """ - ADMIN + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Organization members will only be able to clone and pull public repositories. - """ - NONE + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Organizations in the enterprise choose default repository permissions for their members. - """ - NO_POLICY + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent - """ - Organization members will be able to clone and pull all organization repositories. - """ - READ + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Organization members will be able to clone, pull, and push all organization repositories. - """ - WRITE -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -The possible values for an enabled/disabled enterprise setting. -""" -enum EnterpriseEnabledDisabledSettingValue @preview(toggledBy: "enterprise-accounts-preview") { - """ - The setting is disabled for organizations in the enterprise. - """ - DISABLED + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The setting is enabled for organizations in the enterprise. + The threaded replies to this comment. """ - ENABLED + replies( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DiscussionCommentConnection! """ - There is no policy set for organizations in the enterprise. + The discussion comment this comment is a reply to """ - NO_POLICY -} + replyTo: DiscussionComment -""" -The possible values for an enabled/no policy enterprise setting. -""" -enum EnterpriseEnabledSettingValue @preview(toggledBy: "enterprise-accounts-preview") { """ - The setting is enabled for organizations in the enterprise. + The path for this discussion comment. """ - ENABLED + resourcePath: URI! """ - There is no policy set for organizations in the enterprise. + Identifies the date and time when the object was last updated. """ - NO_POLICY -} + updatedAt: DateTime! -""" -An identity provider configured to provision identities for an enterprise. -""" -type EnterpriseIdentityProvider implements Node @preview(toggledBy: "enterprise-accounts-preview") { """ - The digest algorithm used to sign SAML requests for the identity provider. + Number of upvotes that this subject has received. """ - digestMethod: SamlDigestAlgorithm + upvoteCount: Int! """ - The enterprise this identity provider belongs to. + The URL for this discussion comment. """ - enterprise: Enterprise + url: URI! """ - ExternalIdentities provisioned by this identity provider. + A list of edits to this content. """ - externalIdentities( + userContentEdits( """ Returns the elements in the list that come after the specified cursor. """ @@ -7149,53 +10688,72 @@ type EnterpriseIdentityProvider implements Node @preview(toggledBy: "enterprise- Returns the last _n_ elements from the list. """ last: Int - ): ExternalIdentityConnection! - id: ID! + ): UserContentEditConnection """ - The x509 certificate used by the identity provider to sign assertions and responses. + Check if the current viewer can delete this object. """ - idpCertificate: X509Certificate + viewerCanDelete: Boolean! """ - The Issuer Entity ID for the SAML identity provider. + Can the current user mark this comment as an answer? """ - issuer: String + viewerCanMarkAsAnswer: Boolean! """ - Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable. + Check if the current viewer can minimize this object. """ - recoveryCodes: [String!] + viewerCanMinimize: Boolean! """ - The signature algorithm used to sign SAML requests for the identity provider. + Can user react to this subject """ - signatureMethod: SamlSignatureAlgorithm + viewerCanReact: Boolean! """ - The URL endpoint for the identity provider's SAML SSO. + Can the current user unmark this comment as an answer? """ - ssoUrl: URI -} + viewerCanUnmarkAsAnswer: Boolean! -""" -An object that is a member of an enterprise. -""" -union EnterpriseMember @preview(toggledBy: "enterprise-accounts-preview") = EnterpriseUserAccount | User + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Whether or not the current user can add or remove an upvote on this subject. + """ + viewerCanUpvote: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! + + """ + Whether or not the current user has already upvoted this subject. + """ + viewerHasUpvoted: Boolean! +} """ -The connection type for EnterpriseMember. +The connection type for DiscussionComment. """ -type EnterpriseMemberConnection @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionCommentConnection { """ A list of edges. """ - edges: [EnterpriseMemberEdge] + edges: [DiscussionCommentEdge] """ A list of nodes. """ - nodes: [EnterpriseMember] + nodes: [DiscussionComment] """ Information to aid in pagination. @@ -7209,118 +10767,191 @@ type EnterpriseMemberConnection @preview(toggledBy: "enterprise-accounts-preview } """ -A User who is a member of an enterprise through one or more organizations. +An edge in a connection. """ -type EnterpriseMemberEdge @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionCommentEdge { """ A cursor for use in pagination. """ cursor: String! """ - Whether the user does not have a license for the enterprise. + The item at the end of the edge. + """ + node: DiscussionComment +} + +""" +The connection type for Discussion. +""" +type DiscussionConnection { + """ + A list of edges. + """ + edges: [DiscussionEdge] + + """ + A list of nodes. + """ + nodes: [Discussion] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DiscussionEdge { + """ + A cursor for use in pagination. """ - isUnlicensed: Boolean! + cursor: String! """ The item at the end of the edge. """ - node: EnterpriseMember + node: Discussion } """ -Ordering options for enterprise member connections. +Ways in which lists of discussions can be ordered upon return. """ -input EnterpriseMemberOrder @preview(toggledBy: "enterprise-accounts-preview") { +input DiscussionOrder { """ - The ordering direction. + The direction in which to order discussions by the specified field. """ direction: OrderDirection! """ - The field to order enterprise members by. + The field by which to order discussions. """ - field: EnterpriseMemberOrderField! + field: DiscussionOrderField! } """ -Properties by which enterprise member connections can be ordered. +Properties by which discussion connections can be ordered. """ -enum EnterpriseMemberOrderField @preview(toggledBy: "enterprise-accounts-preview") { +enum DiscussionOrderField { """ - Order enterprise members by creation time + Order discussions by creation time. """ CREATED_AT """ - Order enterprise members by login + Order discussions by most recent modification time. """ - LOGIN + UPDATED_AT } """ -The possible values for the enterprise members can create repositories setting. +A poll for a discussion. """ -enum EnterpriseMembersCanCreateRepositoriesSettingValue @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionPoll implements Node { """ - Members will be able to create public and private repositories. + The discussion that this poll belongs to. """ - ALL + discussion: Discussion + id: ID! """ - Members will not be able to create public or private repositories. + The options for this poll. """ - DISABLED + options( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the options for the discussion poll. + """ + orderBy: DiscussionPollOptionOrder = {field: AUTHORED_ORDER, direction: ASC} + ): DiscussionPollOptionConnection """ - Organization administrators choose whether to allow members to create repositories. + The question that is being asked by this poll. """ - NO_POLICY + question: String! """ - Members will be able to create only private repositories. + The total number of votes that have been cast for this poll. """ - PRIVATE -} + totalVoteCount: Int! -""" -The possible values for the members can make purchases setting. -""" -enum EnterpriseMembersCanMakePurchasesSettingValue @preview(toggledBy: "enterprise-accounts-preview") { """ - The setting is disabled for organizations in the enterprise. + Indicates if the viewer has permission to vote in this poll. """ - DISABLED + viewerCanVote: Boolean! """ - The setting is enabled for organizations in the enterprise. + Indicates if the viewer has voted for any option in this poll. """ - ENABLED + viewerHasVoted: Boolean! } """ -Properties by which enterprise connections can be ordered. +An option for a discussion poll. """ -enum EnterpriseOrderField @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionPollOption implements Node { + id: ID! + """ - Order enterprises by name + The text for this option. """ - NAME + option: String! + + """ + The discussion poll that this option belongs to. + """ + poll: DiscussionPoll + + """ + The total number of votes that have been cast for this option. + """ + totalVoteCount: Int! + + """ + Indicates if the viewer has voted for this option in the poll. + """ + viewerHasVoted: Boolean! } """ -The connection type for Organization. +The connection type for DiscussionPollOption. """ -type EnterpriseOrganizationMembershipConnection @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionPollOptionConnection { """ A list of edges. """ - edges: [EnterpriseOrganizationMembershipEdge] + edges: [DiscussionPollOptionEdge] """ A list of nodes. """ - nodes: [Organization] + nodes: [DiscussionPollOption] """ Information to aid in pagination. @@ -7334,9 +10965,9 @@ type EnterpriseOrganizationMembershipConnection @preview(toggledBy: "enterprise- } """ -An enterprise organization that a user is a member of. +An edge in a connection. """ -type EnterpriseOrganizationMembershipEdge @preview(toggledBy: "enterprise-accounts-preview") { +type DiscussionPollOptionEdge { """ A cursor for use in pagination. """ @@ -7345,62 +10976,147 @@ type EnterpriseOrganizationMembershipEdge @preview(toggledBy: "enterprise-accoun """ The item at the end of the edge. """ - node: Organization + node: DiscussionPollOption +} + +""" +Ordering options for discussion poll option connections. +""" +input DiscussionPollOptionOrder { + """ + The ordering direction. + """ + direction: OrderDirection! """ - The role of the user in the enterprise membership. + The field to order poll options by. """ - role: EnterpriseUserAccountMembershipRole! + field: DiscussionPollOptionOrderField! } """ -The connection type for User. +Properties by which discussion poll option connections can be ordered. """ -type EnterpriseOutsideCollaboratorConnection @preview(toggledBy: "enterprise-accounts-preview") { +enum DiscussionPollOptionOrderField { """ - A list of edges. + Order poll options by the order that the poll author specified when creating the poll. """ - edges: [EnterpriseOutsideCollaboratorEdge] + AUTHORED_ORDER """ - A list of nodes. + Order poll options by the number of votes it has. """ - nodes: [User] + VOTE_COUNT +} + +""" +Autogenerated input type of DismissPullRequestReview +""" +input DismissPullRequestReviewInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String """ - Information to aid in pagination. + The contents of the pull request review dismissal message. """ - pageInfo: PageInfo! + message: String! """ - Identifies the total count of items in the connection. + The Node ID of the pull request review to modify. """ - totalCount: Int! + pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) } """ -A User who is an outside collaborator of an enterprise through one or more organizations. +Autogenerated return type of DismissPullRequestReview """ -type EnterpriseOutsideCollaboratorEdge @preview(toggledBy: "enterprise-accounts-preview") { +type DismissPullRequestReviewPayload { """ - A cursor for use in pagination. + A unique identifier for the client performing the mutation. """ - cursor: String! + clientMutationId: String """ - Whether the outside collaborator does not have a license for the enterprise. + The dismissed pull request review. """ - isUnlicensed: Boolean! + pullRequestReview: PullRequestReview +} +""" +The possible reasons that a Dependabot alert was dismissed. +""" +enum DismissReason { """ - The item at the end of the edge. + A fix has already been started """ - node: User + FIX_STARTED """ - The enterprise organization repositories this user is a member of. + This alert is inaccurate or incorrect """ - repositories( + INACCURATE + + """ + Vulnerable code is not actually used + """ + NOT_USED + + """ + No bandwidth to fix this + """ + NO_BANDWIDTH + + """ + Risk is tolerable to this project + """ + TOLERABLE_RISK +} + +""" +Autogenerated input type of DismissRepositoryVulnerabilityAlert +""" +input DismissRepositoryVulnerabilityAlertInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The reason the Dependabot alert is being dismissed. + """ + dismissReason: DismissReason! + + """ + The Dependabot alert ID to dismiss. + """ + repositoryVulnerabilityAlertId: ID! @possibleTypes(concreteTypes: ["RepositoryVulnerabilityAlert"]) +} + +""" +Autogenerated return type of DismissRepositoryVulnerabilityAlert +""" +type DismissRepositoryVulnerabilityAlertPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Dependabot alert that was dismissed + """ + repositoryVulnerabilityAlert: RepositoryVulnerabilityAlert +} + +""" +A draft issue within a project. +""" +type DraftIssue implements Node { + """ + A list of users to assigned to this draft issue. + """ + assignees( """ Returns the elements in the list that come after the specified cursor. """ @@ -7420,52 +11136,38 @@ type EnterpriseOutsideCollaboratorEdge @preview(toggledBy: "enterprise-accounts- Returns the last _n_ elements from the list. """ last: Int + ): UserConnection! - """ - Ordering options for repositories. - """ - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! -} - -""" -Enterprise information only visible to enterprise owners. -""" -type EnterpriseOwnerInfo @preview(toggledBy: "enterprise-accounts-preview") { """ - A list of enterprise organizations configured with the provided action execution capabilities setting value. + The body of the draft issue. """ - actionExecutionCapabilitySettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + body: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The body of the draft issue rendered to HTML. + """ + bodyHTML: HTML! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The body of the draft issue rendered to text. + """ + bodyText: String! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """ + The actor who created this draft issue. + """ + creator: Actor + id: ID! """ - A list of all of the administrators for this enterprise. + List of items linked with the draft issue (currently draft issue can be linked to only one item). """ - admins( + projectV2Items( """ Returns the elements in the list that come after the specified cursor. """ @@ -7485,27 +11187,12 @@ type EnterpriseOwnerInfo @preview(toggledBy: "enterprise-accounts-preview") { Returns the last _n_ elements from the list. """ last: Int - - """ - Ordering options for administrators returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} - - """ - The search string to look for. - """ - query: String - - """ - The role to filter by. - """ - role: EnterpriseAdministratorRole - ): EnterpriseAdministratorConnection! + ): ProjectV2ItemConnection! """ - A list of users in the enterprise who currently have two-factor authentication disabled. + Projects that link to this draft issue (currently draft issue can be linked to only one project). """ - affiliatedUsersWithTwoFactorDisabled( + projectsV2( """ Returns the elements in the list that come after the specified cursor. """ @@ -7525,228 +11212,203 @@ type EnterpriseOwnerInfo @preview(toggledBy: "enterprise-accounts-preview") { Returns the last _n_ elements from the list. """ last: Int - ): UserConnection! + ): ProjectV2Connection! """ - Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + The title of the draft issue """ - affiliatedUsersWithTwoFactorDisabledExist: Boolean! + title: String! """ - The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. + Identifies the date and time when the object was last updated. """ - allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! + updatedAt: DateTime! +} +""" +Specifies a review comment to be left with a Pull Request Review. +""" +input DraftPullRequestReviewComment { """ - A list of enterprise organizations configured with the provided private repository forking setting value. + Body of the comment to leave. """ - allowPrivateRepositoryForkingSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + body: String! """ - The setting value for base repository permissions for organizations in this enterprise. + Path to the file being commented on. """ - defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! + path: String! """ - A list of enterprise organizations configured with the provided default repository permission. + Position in the file to leave a comment on. """ - defaultRepositoryPermissionSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + position: Int! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Specifies a review comment thread to be left with a Pull Request Review. +""" +input DraftPullRequestReviewThread { + """ + Body of the comment to leave. + """ + body: String! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The line of the blob to which the thread refers. The end of the line range for multi-line comments. + """ + line: Int! - """ - The permission to find organizations for. - """ - value: DefaultRepositoryPermissionField! - ): OrganizationConnection! + """ + Path to the file being commented on. + """ + path: String! """ - Enterprise Server installations owned by the enterprise. + The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range. """ - enterpriseServerInstallations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + side: DiffSide = RIGHT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The first line of the range to which the comment refers. + """ + startLine: Int - """ - Whether or not to only return installations discovered via GitHub Connect. - """ - connectedOnly: Boolean = false + """ + The side of the diff on which the start line resides. + """ + startSide: DiffSide = RIGHT +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Autogenerated input type of EnablePullRequestAutoMerge +""" +input EnablePullRequestAutoMergeInput { + """ + The email address to associate with this merge. + """ + authorEmail: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Ordering options for Enterprise Server installations returned. - """ - orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} - ): EnterpriseServerInstallationConnection! + """ + Commit body to use for the commit when the PR is mergable; if omitted, a + default message will be used. NOTE: when merging with a merge queue any input + value for commit message is ignored. + """ + commitBody: String """ - Whether or not the default repository permission is currently being updated. + Commit headline to use for the commit when the PR is mergable; if omitted, a + default message will be used. NOTE: when merging with a merge queue any input + value for commit headline is ignored. """ - isUpdatingDefaultRepositoryPermission: Boolean! + commitHeadline: String """ - Whether the two-factor authentication requirement is currently being enforced. + The expected head OID of the pull request. """ - isUpdatingTwoFactorRequirement: Boolean! + expectedHeadOid: GitObjectID """ - The setting value for whether organization members with admin permissions on a - repository can change repository visibility. + The merge method to use. If omitted, defaults to `MERGE`. NOTE: when merging + with a merge queue any input value for merge method is ignored. """ - membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! + mergeMethod: PullRequestMergeMethod = MERGE """ - A list of enterprise organizations configured with the provided can change repository visibility setting value. + ID of the pull request to enable auto-merge on. """ - membersCanChangeRepositoryVisibilitySettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Autogenerated return type of EnablePullRequestAutoMerge +""" +type EnablePullRequestAutoMergePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The pull request auto-merge was enabled on. + """ + pullRequest: PullRequest +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +An account to manage multiple organizations with consolidated policy and billing. +""" +type Enterprise implements AnnouncementBanner & Node { + """ + The text of the announcement + """ + announcement: String - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The expiration date of the announcement, if any + """ + announcementExpiresAt: DateTime """ - The setting value for whether members of organizations in the enterprise can create repositories. + Whether the announcement can be dismissed by the user """ - membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue! + announcementUserDismissible: Boolean """ - A list of enterprise organizations configured with the provided repository creation setting value. + A URL pointing to the enterprise's public avatar. """ - membersCanCreateRepositoriesSettingOrganizations( + avatarUrl( """ - Returns the elements in the list that come after the specified cursor. + The size of the resulting square image. """ - after: String + size: Int + ): URI! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Enterprise billing information visible to enterprise billing managers. + """ + billingInfo: EnterpriseBillingInfo - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Identifies the primary key from the database. + """ + databaseId: Int - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The description of the enterprise. + """ + description: String - """ - The setting to find organizations for. - """ - value: OrganizationMembersCanCreateRepositoriesSettingValue! - ): OrganizationConnection! + """ + The description of the enterprise as HTML. + """ + descriptionHTML: HTML! + id: ID! """ - The setting value for whether members with admin permissions for repositories can delete issues. + The location of the enterprise. """ - membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! + location: String """ - A list of enterprise organizations configured with the provided members can delete issues setting value. + A list of users who are members of this enterprise. """ - membersCanDeleteIssuesSettingOrganizations( + members( """ Returns the elements in the list that come after the specified cursor. """ @@ -7758,75 +11420,56 @@ type EnterpriseOwnerInfo @preview(toggledBy: "enterprise-accounts-preview") { before: String """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations with this setting. + Only return members within the selected GitHub Enterprise deployment """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + deployment: EnterpriseUserDeployment """ - The setting value to find organizations for. + Returns the first _n_ elements from the list. """ - value: Boolean! - ): OrganizationConnection! - - """ - The setting value for whether members with admin permissions for repositories can delete or transfer repositories. - """ - membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! + first: Int - """ - A list of enterprise organizations configured with the provided members can delete repositories setting value. - """ - membersCanDeleteRepositoriesSettingOrganizations( """ - Returns the elements in the list that come after the specified cursor. + Only return members with this two-factor authentication status. Does not + include members who only have an account on a GitHub Enterprise Server instance. """ - after: String + hasTwoFactorEnabled: Boolean = null """ - Returns the elements in the list that come before the specified cursor. + Returns the last _n_ elements from the list. """ - before: String + last: Int """ - Returns the first _n_ elements from the list. + Ordering options for members returned from the connection. """ - first: Int + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} """ - Returns the last _n_ elements from the list. + Only return members within the organizations with these logins """ - last: Int + organizationLogins: [String!] """ - Ordering options for organizations with this setting. + The search string to look for. """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + query: String """ - The setting value to find organizations for. + The role of the user in the enterprise organization or server. """ - value: Boolean! - ): OrganizationConnection! + role: EnterpriseUserAccountMembershipRole + ): EnterpriseMemberConnection! """ - The setting value for whether members of organizations in the enterprise can invite outside collaborators. + The name of the enterprise. """ - membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! + name: String! """ - A list of enterprise organizations configured with the provided members can invite collaborators setting value. + A list of organizations that belong to this enterprise. """ - membersCanInviteCollaboratorsSettingOrganizations( + organizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -7848,612 +11491,401 @@ type EnterpriseOwnerInfo @preview(toggledBy: "enterprise-accounts-preview") { last: Int """ - Ordering options for organizations with this setting. + Ordering options for organizations returned from the connection. """ orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} """ - The setting value to find organizations for. + The search string to look for. """ - value: Boolean! + query: String + + """ + The viewer's role in an organization. + """ + viewerOrganizationRole: RoleInOrganization ): OrganizationConnection! """ - Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. + Enterprise information only visible to enterprise owners. """ - membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! + ownerInfo: EnterpriseOwnerInfo """ - The setting value for whether members with admin permissions for repositories can update protected branches. + The HTTP path for this enterprise. """ - membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! + resourcePath: URI! """ - A list of enterprise organizations configured with the provided members can update protected branches setting value. + The URL-friendly identifier for the enterprise. """ - membersCanUpdateProtectedBranchesSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + slug: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP URL for this enterprise. + """ + url: URI! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Is the current viewer an admin of this enterprise? + """ + viewerIsAdmin: Boolean! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The URL of the enterprise website. + """ + websiteUrl: URI +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +The connection type for User. +""" +type EnterpriseAdministratorConnection { + """ + A list of edges. + """ + edges: [EnterpriseAdministratorEdge] - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + A list of nodes. + """ + nodes: [User] """ - The setting value for whether members can view dependency insights. + Information to aid in pagination. """ - membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! + pageInfo: PageInfo! """ - A list of enterprise organizations configured with the provided members can view dependency insights setting value. + Identifies the total count of items in the connection. """ - membersCanViewDependencyInsightsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + totalCount: Int! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +A User who is an administrator of an enterprise. +""" +type EnterpriseAdministratorEdge { + """ + A cursor for use in pagination. + """ + cursor: String! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The item at the end of the edge. + """ + node: User - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The role of the administrator. + """ + role: EnterpriseAdministratorRole! +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +An invitation for a user to become an owner or billing manager of an enterprise. +""" +type EnterpriseAdministratorInvitation implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The email of the person who was invited to the enterprise. + """ + email: String """ - The setting value for whether organization projects are enabled for organizations in this enterprise. + The enterprise the invitation is for. """ - organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue! + enterprise: Enterprise! + id: ID! """ - A list of enterprise organizations configured with the provided organization projects setting value. + The user who was invited to the enterprise. """ - organizationProjectsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + invitee: User """ - A list of outside collaborators across the repositories in the enterprise. + The user who created the invitation. """ - outsideCollaborators( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - The login of one specific outside collaborator. - """ - login: String - - """ - Ordering options for outside collaborators returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} - - """ - The search string to look for. - """ - query: String - - """ - Only return outside collaborators on repositories with this visibility. - """ - visibility: RepositoryVisibility - ): EnterpriseOutsideCollaboratorConnection! + inviter: User """ - A list of pending administrator invitations for the enterprise. + The invitee's pending role in the enterprise (owner or billing_manager). """ - pendingAdminInvitations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for pending enterprise administrator invitations returned from the connection. - """ - orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} - - """ - The search string to look for. - """ - query: String - - """ - The role to filter by. - """ - role: EnterpriseAdministratorRole - ): EnterpriseAdministratorInvitationConnection! + role: EnterpriseAdministratorRole! +} +""" +The connection type for EnterpriseAdministratorInvitation. +""" +type EnterpriseAdministratorInvitationConnection { """ - A list of pending collaborators across the repositories in the enterprise. + A list of edges. """ - pendingCollaborators( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for pending repository collaborator invitations returned from the connection. - """ - orderBy: RepositoryInvitationOrder = {field: INVITEE_LOGIN, direction: ASC} - - """ - The search string to look for. - """ - query: String - ): EnterprisePendingCollaboratorConnection! + edges: [EnterpriseAdministratorInvitationEdge] """ - A list of pending member invitations for organizations in the enterprise. + A list of nodes. """ - pendingMemberInvitations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - The search string to look for. - """ - query: String - ): EnterprisePendingMemberInvitationConnection! + nodes: [EnterpriseAdministratorInvitation] """ - The setting value for whether repository projects are enabled in this enterprise. + Information to aid in pagination. """ - repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue! + pageInfo: PageInfo! """ - A list of enterprise organizations configured with the provided repository projects setting value. + Identifies the total count of items in the connection. """ - repositoryProjectsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + totalCount: Int! +} +""" +An edge in a connection. +""" +type EnterpriseAdministratorInvitationEdge { """ - The SAML Identity Provider for the enterprise. + A cursor for use in pagination. """ - samlIdentityProvider: EnterpriseIdentityProvider + cursor: String! """ - A list of enterprise organizations configured with the SAML single sign-on setting value. + The item at the end of the edge. """ - samlIdentityProviderSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - - """ - The setting value to find organizations for. - """ - value: IdentityProviderConfigurationState! - ): OrganizationConnection! + node: EnterpriseAdministratorInvitation +} +""" +Ordering options for enterprise administrator invitation connections +""" +input EnterpriseAdministratorInvitationOrder { """ - The setting value for whether team discussions are enabled for organizations in this enterprise. + The ordering direction. """ - teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue! + direction: OrderDirection! """ - A list of enterprise organizations configured with the provided team discussions setting value. + The field to order enterprise administrator invitations by. """ - teamDiscussionsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + field: EnterpriseAdministratorInvitationOrderField! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Properties by which enterprise administrator invitation connections can be ordered. +""" +enum EnterpriseAdministratorInvitationOrderField { + """ + Order enterprise administrator member invitations by creation time + """ + CREATED_AT +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +The possible administrator roles in an enterprise account. +""" +enum EnterpriseAdministratorRole { + """ + Represents a billing manager of the enterprise account. + """ + BILLING_MANAGER - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Represents an owner of the enterprise account. + """ + OWNER +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +The possible values for the enterprise allow private repository forking policy value. +""" +enum EnterpriseAllowPrivateRepositoryForkingPolicyValue { + """ + Members can fork a repository to an organization within this enterprise. + """ + ENTERPRISE_ORGANIZATIONS - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + Members can fork a repository to their enterprise-managed user account or an organization inside this enterprise. + """ + ENTERPRISE_ORGANIZATIONS_USER_ACCOUNTS """ - The setting value for whether the enterprise requires two-factor authentication for its organizations and users. + Members can fork a repository to their user account or an organization, either inside or outside of this enterprise. """ - twoFactorRequiredSetting: EnterpriseEnabledSettingValue! + EVERYWHERE """ - A list of enterprise organizations configured with the two-factor authentication setting value. + Members can fork a repository only within the same organization (intra-org). """ - twoFactorRequiredSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + SAME_ORGANIZATION - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Members can fork a repository to their user account or within the same organization. + """ + SAME_ORGANIZATION_USER_ACCOUNTS - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Members can fork a repository to their user account. + """ + USER_ACCOUNTS +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Metadata for an audit entry containing enterprise account information. +""" +interface EnterpriseAuditEntryData { + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The slug of the enterprise. + """ + enterpriseSlug: String - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI } """ -The connection type for User. +Enterprise billing information visible to enterprise billing managers and owners. """ -type EnterprisePendingCollaboratorConnection @preview(toggledBy: "enterprise-accounts-preview") { +type EnterpriseBillingInfo { """ - A list of edges. + The number of licenseable users/emails across the enterprise. """ - edges: [EnterprisePendingCollaboratorEdge] + allLicensableUsersCount: Int! """ - A list of nodes. + The number of data packs used by all organizations owned by the enterprise. """ - nodes: [User] + assetPacks: Int! """ - Information to aid in pagination. + The bandwidth quota in GB for all organizations owned by the enterprise. """ - pageInfo: PageInfo! + bandwidthQuota: Float! """ - Identifies the total count of items in the connection. + The bandwidth usage in GB for all organizations owned by the enterprise. """ - totalCount: Int! -} + bandwidthUsage: Float! -""" -A user with an invitation to be a collaborator on a repository owned by an organization in an enterprise. -""" -type EnterprisePendingCollaboratorEdge @preview(toggledBy: "enterprise-accounts-preview") { """ - A cursor for use in pagination. + The bandwidth usage as a percentage of the bandwidth quota. """ - cursor: String! + bandwidthUsagePercentage: Int! """ - Whether the invited collaborator does not have a license for the enterprise. + The storage quota in GB for all organizations owned by the enterprise. """ - isUnlicensed: Boolean! + storageQuota: Float! """ - The item at the end of the edge. + The storage usage in GB for all organizations owned by the enterprise. """ - node: User + storageUsage: Float! """ - The enterprise organization repositories this user is a member of. + The storage usage as a percentage of the storage quota. """ - repositories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + storageUsagePercentage: Int! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The number of available licenses across all owned organizations based on the unique number of billable users. + """ + totalAvailableLicenses: Int! - """ - Ordering options for repositories. - """ - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! + """ + The total number of licenses allocated. + """ + totalLicenses: Int! } """ -The connection type for OrganizationInvitation. +The possible values for the enterprise base repository permission setting. """ -type EnterprisePendingMemberInvitationConnection @preview(toggledBy: "enterprise-accounts-preview") { +enum EnterpriseDefaultRepositoryPermissionSettingValue { """ - A list of edges. + Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. """ - edges: [EnterprisePendingMemberInvitationEdge] + ADMIN """ - A list of nodes. + Organization members will only be able to clone and pull public repositories. """ - nodes: [OrganizationInvitation] + NONE """ - Information to aid in pagination. + Organizations in the enterprise choose base repository permissions for their members. """ - pageInfo: PageInfo! + NO_POLICY """ - Identifies the total count of items in the connection. + Organization members will be able to clone and pull all organization repositories. """ - totalCount: Int! + READ """ - Identifies the total count of unique users in the connection. + Organization members will be able to clone, pull, and push all organization repositories. """ - totalUniqueUserCount: Int! + WRITE } """ -An invitation to be a member in an enterprise organization. +The possible values for an enabled/disabled enterprise setting. """ -type EnterprisePendingMemberInvitationEdge @preview(toggledBy: "enterprise-accounts-preview") { +enum EnterpriseEnabledDisabledSettingValue { """ - A cursor for use in pagination. + The setting is disabled for organizations in the enterprise. """ - cursor: String! + DISABLED """ - Whether the invitation has a license for the enterprise. + The setting is enabled for organizations in the enterprise. """ - isUnlicensed: Boolean! + ENABLED """ - The item at the end of the edge. + There is no policy set for organizations in the enterprise. """ - node: OrganizationInvitation + NO_POLICY } """ -A subset of repository information queryable from an enterprise. +The possible values for an enabled/no policy enterprise setting. """ -type EnterpriseRepositoryInfo implements Node @preview(toggledBy: "enterprise-accounts-preview") { - id: ID! - - """ - Identifies if the repository is private. - """ - isPrivate: Boolean! - +enum EnterpriseEnabledSettingValue { """ - The repository's name. + The setting is enabled for organizations in the enterprise. """ - name: String! + ENABLED """ - The repository's name with owner. + There is no policy set for organizations in the enterprise. """ - nameWithOwner: String! + NO_POLICY } """ -The connection type for EnterpriseRepositoryInfo. +The connection type for OrganizationInvitation. """ -type EnterpriseRepositoryInfoConnection { +type EnterpriseFailedInvitationConnection { """ A list of edges. """ - edges: [EnterpriseRepositoryInfoEdge] + edges: [EnterpriseFailedInvitationEdge] """ A list of nodes. """ - nodes: [EnterpriseRepositoryInfo] @preview(toggledBy: "enterprise-accounts-preview") + nodes: [OrganizationInvitation] """ Information to aid in pagination. @@ -8464,12 +11896,17 @@ type EnterpriseRepositoryInfoConnection { Identifies the total count of items in the connection. """ totalCount: Int! + + """ + Identifies the total count of unique users in the connection. + """ + totalUniqueUserCount: Int! } """ -An edge in a connection. +A failed invitation to be a member in an enterprise organization. """ -type EnterpriseRepositoryInfoEdge { +type EnterpriseFailedInvitationEdge { """ A cursor for use in pagination. """ @@ -8478,47 +11915,31 @@ type EnterpriseRepositoryInfoEdge { """ The item at the end of the edge. """ - node: EnterpriseRepositoryInfo @preview(toggledBy: "enterprise-accounts-preview") + node: OrganizationInvitation } """ -An Enterprise Server installation. +An identity provider configured to provision identities for an enterprise. """ -type EnterpriseServerInstallation implements Node @preview(toggledBy: "enterprise-accounts-preview") { +type EnterpriseIdentityProvider implements Node { """ - Identifies the date and time when the object was created. + The digest algorithm used to sign SAML requests for the identity provider. """ - createdAt: DateTime! + digestMethod: SamlDigestAlgorithm """ - The customer name to which the Enterprise Server installation belongs. + The enterprise this identity provider belongs to. """ - customerName: String! + enterprise: Enterprise """ - The host name of the Enterprise Server installation. + ExternalIdentities provisioned by this identity provider. """ - hostName: String! - id: ID! - - """ - Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect. - """ - isConnected: Boolean! - - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! - - """ - User accounts on this Enterprise Server installation. - """ - userAccounts( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + externalIdentities( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String """ Returns the elements in the list that come before the specified cursor. @@ -8536,55 +11957,66 @@ type EnterpriseServerInstallation implements Node @preview(toggledBy: "enterpris last: Int """ - Ordering options for Enterprise Server user accounts returned from the connection. + Filter to external identities with the users login """ - orderBy: EnterpriseServerUserAccountOrder = {field: LOGIN, direction: ASC} - ): EnterpriseServerUserAccountConnection! + login: String - """ - User accounts uploads for the Enterprise Server installation. - """ - userAccountsUploads( """ - Returns the elements in the list that come after the specified cursor. + Filter to external identities with valid org membership only """ - after: String + membersOnly: Boolean """ - Returns the elements in the list that come before the specified cursor. + Filter to external identities with the users userName/NameID attribute """ - before: String + userName: String + ): ExternalIdentityConnection! + id: ID! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The x509 certificate used by the identity provider to sign assertions and responses. + """ + idpCertificate: X509Certificate - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The Issuer Entity ID for the SAML identity provider. + """ + issuer: String - """ - Ordering options for Enterprise Server user accounts uploads returned from the connection. - """ - orderBy: EnterpriseServerUserAccountsUploadOrder = {field: CREATED_AT, direction: DESC} - ): EnterpriseServerUserAccountsUploadConnection! + """ + Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable. + """ + recoveryCodes: [String!] + + """ + The signature algorithm used to sign SAML requests for the identity provider. + """ + signatureMethod: SamlSignatureAlgorithm + + """ + The URL endpoint for the identity provider's SAML SSO. + """ + ssoUrl: URI } """ -The connection type for EnterpriseServerInstallation. +An object that is a member of an enterprise. """ -type EnterpriseServerInstallationConnection { +union EnterpriseMember = EnterpriseUserAccount | User + +""" +The connection type for EnterpriseMember. +""" +type EnterpriseMemberConnection { """ A list of edges. """ - edges: [EnterpriseServerInstallationEdge] + edges: [EnterpriseMemberEdge] """ A list of nodes. """ - nodes: [EnterpriseServerInstallation] @preview(toggledBy: "enterprise-accounts-preview") + nodes: [EnterpriseMember] """ Information to aid in pagination. @@ -8598,9 +12030,9 @@ type EnterpriseServerInstallationConnection { } """ -An edge in a connection. +A User who is a member of an enterprise through one or more organizations. """ -type EnterpriseServerInstallationEdge { +type EnterpriseMemberEdge { """ A cursor for use in pagination. """ @@ -8609,133 +12041,97 @@ type EnterpriseServerInstallationEdge { """ The item at the end of the edge. """ - node: EnterpriseServerInstallation @preview(toggledBy: "enterprise-accounts-preview") + node: EnterpriseMember } """ -Ordering options for Enterprise Server installation connections. +Ordering options for enterprise member connections. """ -input EnterpriseServerInstallationOrder @preview(toggledBy: "enterprise-accounts-preview") { +input EnterpriseMemberOrder { """ The ordering direction. """ direction: OrderDirection! """ - The field to order Enterprise Server installations by. + The field to order enterprise members by. """ - field: EnterpriseServerInstallationOrderField! + field: EnterpriseMemberOrderField! } """ -Properties by which Enterprise Server installation connections can be ordered. +Properties by which enterprise member connections can be ordered. """ -enum EnterpriseServerInstallationOrderField @preview(toggledBy: "enterprise-accounts-preview") { +enum EnterpriseMemberOrderField { """ - Order Enterprise Server installations by creation time + Order enterprise members by creation time """ CREATED_AT """ - Order Enterprise Server installations by customer name - """ - CUSTOMER_NAME - - """ - Order Enterprise Server installations by host name + Order enterprise members by login """ - HOST_NAME + LOGIN } """ -A user account on an Enterprise Server installation. +The possible values for the enterprise members can create repositories setting. """ -type EnterpriseServerUserAccount implements Node @preview(toggledBy: "enterprise-accounts-preview") { - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - - """ - User emails belonging to this user account. - """ - emails( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for Enterprise Server user account emails returned from the connection. - """ - orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} - ): EnterpriseServerUserAccountEmailConnection! - +enum EnterpriseMembersCanCreateRepositoriesSettingValue { """ - The Enterprise Server installation on which this user account exists. + Members will be able to create public and private repositories. """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + ALL """ - Whether the user account is a site administrator on the Enterprise Server installation. + Members will not be able to create public or private repositories. """ - isSiteAdmin: Boolean! + DISABLED """ - The login of the user account on the Enterprise Server installation. + Organization administrators choose whether to allow members to create repositories. """ - login: String! + NO_POLICY """ - The profile name of the user account on the Enterprise Server installation. + Members will be able to create only private repositories. """ - profileName: String + PRIVATE """ - The date and time when the user account was created on the Enterprise Server installation. + Members will be able to create only public repositories. """ - remoteCreatedAt: DateTime! + PUBLIC +} +""" +The possible values for the members can make purchases setting. +""" +enum EnterpriseMembersCanMakePurchasesSettingValue { """ - The ID of the user account on the Enterprise Server installation. + The setting is disabled for organizations in the enterprise. """ - remoteUserId: Int! + DISABLED """ - Identifies the date and time when the object was last updated. + The setting is enabled for organizations in the enterprise. """ - updatedAt: DateTime! + ENABLED } """ -The connection type for EnterpriseServerUserAccount. +The connection type for Organization. """ -type EnterpriseServerUserAccountConnection { +type EnterpriseOrganizationMembershipConnection { """ A list of edges. """ - edges: [EnterpriseServerUserAccountEdge] + edges: [EnterpriseOrganizationMembershipEdge] """ A list of nodes. """ - nodes: [EnterpriseServerUserAccount] @preview(toggledBy: "enterprise-accounts-preview") + nodes: [Organization] """ Information to aid in pagination. @@ -8749,9 +12145,9 @@ type EnterpriseServerUserAccountConnection { } """ -An edge in a connection. +An enterprise organization that a user is a member of. """ -type EnterpriseServerUserAccountEdge { +type EnterpriseOrganizationMembershipEdge { """ A cursor for use in pagination. """ @@ -8760,53 +12156,27 @@ type EnterpriseServerUserAccountEdge { """ The item at the end of the edge. """ - node: EnterpriseServerUserAccount @preview(toggledBy: "enterprise-accounts-preview") -} - -""" -An email belonging to a user account on an Enterprise Server installation. -""" -type EnterpriseServerUserAccountEmail implements Node @preview(toggledBy: "enterprise-accounts-preview") { - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - - """ - The email address. - """ - email: String! - id: ID! - - """ - Indicates whether this is the primary email of the associated user account. - """ - isPrimary: Boolean! - - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + node: Organization """ - The user account to which the email belongs. + The role of the user in the enterprise membership. """ - userAccount: EnterpriseServerUserAccount! + role: EnterpriseUserAccountMembershipRole! } """ -The connection type for EnterpriseServerUserAccountEmail. +The connection type for User. """ -type EnterpriseServerUserAccountEmailConnection { +type EnterpriseOutsideCollaboratorConnection { """ A list of edges. """ - edges: [EnterpriseServerUserAccountEmailEdge] + edges: [EnterpriseOutsideCollaboratorEdge] """ A list of nodes. """ - nodes: [EnterpriseServerUserAccountEmail] @preview(toggledBy: "enterprise-accounts-preview") + nodes: [User] """ Information to aid in pagination. @@ -8820,9 +12190,9 @@ type EnterpriseServerUserAccountEmailConnection { } """ -An edge in a connection. +A User who is an outside collaborator of an enterprise through one or more organizations. """ -type EnterpriseServerUserAccountEmailEdge { +type EnterpriseOutsideCollaboratorEdge { """ A cursor for use in pagination. """ @@ -8831,224 +12201,177 @@ type EnterpriseServerUserAccountEmailEdge { """ The item at the end of the edge. """ - node: EnterpriseServerUserAccountEmail @preview(toggledBy: "enterprise-accounts-preview") -} - -""" -Ordering options for Enterprise Server user account email connections. -""" -input EnterpriseServerUserAccountEmailOrder @preview(toggledBy: "enterprise-accounts-preview") { - """ - The ordering direction. - """ - direction: OrderDirection! - - """ - The field to order emails by. - """ - field: EnterpriseServerUserAccountEmailOrderField! -} + node: User -""" -Properties by which Enterprise Server user account email connections can be ordered. -""" -enum EnterpriseServerUserAccountEmailOrderField @preview(toggledBy: "enterprise-accounts-preview") { """ - Order emails by email + The enterprise organization repositories this user is a member of. """ - EMAIL -} + repositories( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Ordering options for Enterprise Server user account connections. -""" -input EnterpriseServerUserAccountOrder @preview(toggledBy: "enterprise-accounts-preview") { - """ - The ordering direction. - """ - direction: OrderDirection! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The field to order user accounts by. - """ - field: EnterpriseServerUserAccountOrderField! -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Properties by which Enterprise Server user account connections can be ordered. -""" -enum EnterpriseServerUserAccountOrderField @preview(toggledBy: "enterprise-accounts-preview") { - """ - Order user accounts by login - """ - LOGIN + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Order user accounts by creation time on the Enterprise Server installation - """ - REMOTE_CREATED_AT + """ + Ordering options for repositories. + """ + orderBy: RepositoryOrder = {field: NAME, direction: ASC} + ): EnterpriseRepositoryInfoConnection! } """ -A user accounts upload from an Enterprise Server installation. +Enterprise information only visible to enterprise owners. """ -type EnterpriseServerUserAccountsUpload implements Node @preview(toggledBy: "enterprise-accounts-preview") { +type EnterpriseOwnerInfo { """ - Identifies the date and time when the object was created. + A list of all of the administrators for this enterprise. """ - createdAt: DateTime! + admins( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The enterprise to which this upload belongs. - """ - enterprise: Enterprise! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The Enterprise Server installation for which this upload was generated. - """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The name of the file uploaded. - """ - name: String! + """ + Only return administrators with this two-factor authentication status. + """ + hasTwoFactorEnabled: Boolean = null - """ - The synchronization state of the upload - """ - syncState: EnterpriseServerUserAccountsUploadSyncState! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! -} + """ + Ordering options for administrators returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} -""" -The connection type for EnterpriseServerUserAccountsUpload. -""" -type EnterpriseServerUserAccountsUploadConnection { - """ - A list of edges. - """ - edges: [EnterpriseServerUserAccountsUploadEdge] + """ + Only return members within the organizations with these logins + """ + organizationLogins: [String!] - """ - A list of nodes. - """ - nodes: [EnterpriseServerUserAccountsUpload] @preview(toggledBy: "enterprise-accounts-preview") + """ + The search string to look for. + """ + query: String - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + The role to filter by. + """ + role: EnterpriseAdministratorRole + ): EnterpriseAdministratorConnection! """ - Identifies the total count of items in the connection. + A list of users in the enterprise who currently have two-factor authentication disabled. """ - totalCount: Int! -} + affiliatedUsersWithTwoFactorDisabled( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -An edge in a connection. -""" -type EnterpriseServerUserAccountsUploadEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The item at the end of the edge. - """ - node: EnterpriseServerUserAccountsUpload @preview(toggledBy: "enterprise-accounts-preview") -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Ordering options for Enterprise Server user accounts upload connections. -""" -input EnterpriseServerUserAccountsUploadOrder @preview(toggledBy: "enterprise-accounts-preview") { - """ - The ordering direction. - """ - direction: OrderDirection! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The field to order user accounts uploads by. + Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. """ - field: EnterpriseServerUserAccountsUploadOrderField! -} + affiliatedUsersWithTwoFactorDisabledExist: Boolean! -""" -Properties by which Enterprise Server user accounts upload connections can be ordered. -""" -enum EnterpriseServerUserAccountsUploadOrderField @preview(toggledBy: "enterprise-accounts-preview") { """ - Order user accounts uploads by creation time + The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. """ - CREATED_AT -} + allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! -""" -Synchronization state of the Enterprise Server user accounts upload -""" -enum EnterpriseServerUserAccountsUploadSyncState @preview(toggledBy: "enterprise-accounts-preview") { """ - The synchronization of the upload failed. + A list of enterprise organizations configured with the provided private repository forking setting value. """ - FAILURE + allowPrivateRepositoryForkingSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The synchronization of the upload is pending. - """ - PENDING + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The synchronization of the upload succeeded. - """ - SUCCESS -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations. -""" -type EnterpriseUserAccount implements Actor & Node @preview(toggledBy: "enterprise-accounts-preview") { - """ - A URL pointing to the enterprise user account's public avatar. - """ - avatarUrl( """ - The size of the resulting square image. + Returns the last _n_ elements from the list. """ - size: Int - ): URI! + last: Int - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - """ - The enterprise in which this user account exists. - """ - enterprise: Enterprise! - id: ID! + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! """ - An identifier for the enterprise user account, a login or email address + The value for the allow private repository forking policy on the enterprise. """ - login: String! + allowPrivateRepositoryForkingSettingPolicyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue """ - The name of the enterprise user account + The setting value for base repository permissions for organizations in this enterprise. """ - name: String + defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! """ - A list of enterprise organizations this user is a member of. + A list of enterprise organizations configured with the provided base repository permission. """ - organizations( + defaultRepositoryPermissionSettingOrganizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9070,276 +12393,236 @@ type EnterpriseUserAccount implements Actor & Node @preview(toggledBy: "enterpri last: Int """ - Ordering options for organizations returned from the connection. + Ordering options for organizations with this setting. """ orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} """ - The search string to look for. - """ - query: String - - """ - The role of the user in the enterprise organization. + The permission to find organizations for. """ - role: EnterpriseUserAccountMembershipRole - ): EnterpriseOrganizationMembershipConnection! + value: DefaultRepositoryPermissionField! + ): OrganizationConnection! """ - The HTTP path for this actor. + A list of domains owned by the enterprise. """ - resourcePath: URI! + domains( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP URL for this actor. - """ - url: URI! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The user within the enterprise. - """ - user: User -} + """ + Filter whether or not the domain is approved. + """ + isApproved: Boolean = null -""" -The connection type for EnterpriseUserAccount. -""" -type EnterpriseUserAccountConnection { - """ - A list of edges. - """ - edges: [EnterpriseUserAccountEdge] + """ + Filter whether or not the domain is verified. + """ + isVerified: Boolean = null - """ - A list of nodes. - """ - nodes: [EnterpriseUserAccount] @preview(toggledBy: "enterprise-accounts-preview") + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Ordering options for verifiable domains returned. + """ + orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} + ): VerifiableDomainConnection! """ - Identifies the total count of items in the connection. + Enterprise Server installations owned by the enterprise. """ - totalCount: Int! -} + enterpriseServerInstallations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -An edge in a connection. -""" -type EnterpriseUserAccountEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The item at the end of the edge. - """ - node: EnterpriseUserAccount @preview(toggledBy: "enterprise-accounts-preview") -} + """ + Whether or not to only return installations discovered via GitHub Connect. + """ + connectedOnly: Boolean = false -""" -The possible roles for enterprise membership. -""" -enum EnterpriseUserAccountMembershipRole @preview(toggledBy: "enterprise-accounts-preview") { - """ - The user is a member of the enterprise membership. - """ - MEMBER + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The user is an owner of the enterprise membership. - """ - OWNER -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -The possible GitHub Enterprise deployments where this user can exist. -""" -enum EnterpriseUserDeployment @preview(toggledBy: "enterprise-accounts-preview") { - """ - The user is part of a GitHub Enterprise Cloud deployment. - """ - CLOUD + """ + Ordering options for Enterprise Server installations returned. + """ + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + ): EnterpriseServerInstallationConnection! """ - The user is part of a GitHub Enterprise Server deployment. + A list of failed invitations in the enterprise. """ - SERVER -} + failedInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -An external identity provisioned by SAML SSO or SCIM. -""" -type ExternalIdentity implements Node { - """ - The GUID for this identity - """ - guid: String! - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Organization invitation for this SCIM-provisioned external identity - """ - organizationInvitation: OrganizationInvitation + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - SAML Identity attributes - """ - samlIdentity: ExternalIdentitySamlAttributes + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - SCIM Identity attributes - """ - scimIdentity: ExternalIdentityScimAttributes + """ + The search string to look for. + """ + query: String + ): EnterpriseFailedInvitationConnection! """ - User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + The setting value for whether the enterprise has an IP allow list enabled. """ - user: User -} + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! -""" -The connection type for ExternalIdentity. -""" -type ExternalIdentityConnection { """ - A list of edges. + The IP addresses that are allowed to access resources owned by the enterprise. """ - edges: [ExternalIdentityEdge] + ipAllowListEntries( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A list of nodes. - """ - nodes: [ExternalIdentity] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -An edge in a connection. -""" -type ExternalIdentityEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Ordering options for IP allow list entries returned. + """ + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! """ - The item at the end of the edge. + The setting value for whether the enterprise has IP allow list configuration for installed GitHub Apps enabled. """ - node: ExternalIdentity -} + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! -""" -SAML attributes for the External Identity -""" -type ExternalIdentitySamlAttributes { """ - The NameID of the SAML identity + Whether or not the base repository permission is currently being updated. """ - nameId: String -} + isUpdatingDefaultRepositoryPermission: Boolean! -""" -SCIM attributes for the External Identity -""" -type ExternalIdentityScimAttributes { """ - The userName of the SCIM identity + Whether the two-factor authentication requirement is currently being enforced. """ - username: String -} + isUpdatingTwoFactorRequirement: Boolean! -""" -The connection type for User. -""" -type FollowerConnection { """ - A list of edges. + The setting value for whether organization members with admin permissions on a + repository can change repository visibility. """ - edges: [UserEdge] + membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! """ - A list of nodes. + A list of enterprise organizations configured with the provided can change repository visibility setting value. """ - nodes: [User] + membersCanChangeRepositoryVisibilitySettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The connection type for User. -""" -type FollowingConnection { - """ - A list of edges. - """ - edges: [UserEdge] + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - A list of nodes. - """ - nodes: [User] + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! """ - Information to aid in pagination. + The setting value for whether members of organizations in the enterprise can create internal repositories. """ - pageInfo: PageInfo! + membersCanCreateInternalRepositoriesSetting: Boolean """ - Identifies the total count of items in the connection. + The setting value for whether members of organizations in the enterprise can create private repositories. """ - totalCount: Int! -} + membersCanCreatePrivateRepositoriesSetting: Boolean -""" -A generic hovercard context with a message and icon -""" -type GenericHovercardContext implements HovercardContext { """ - A string describing this context + The setting value for whether members of organizations in the enterprise can create public repositories. """ - message: String! + membersCanCreatePublicRepositoriesSetting: Boolean """ - An octicon to accompany this context + The setting value for whether members of organizations in the enterprise can create repositories. """ - octicon: String! -} + membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue -""" -A Gist. -""" -type Gist implements Node & Starrable & UniformResourceLocatable { """ - A list of comments associated with the gist + A list of enterprise organizations configured with the provided repository creation setting value. """ - comments( + membersCanCreateRepositoriesSettingOrganizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9359,37 +12642,27 @@ type Gist implements Node & Starrable & UniformResourceLocatable { Returns the last _n_ elements from the list. """ last: Int - ): GistCommentConnection! - - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - - """ - The gist description. - """ - description: String - """ - The files in this gist. - """ - files( """ - The maximum number of files to return. + Ordering options for organizations with this setting. """ - limit: Int = 10 + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} """ - The oid of the files to return + The setting to find organizations for. """ - oid: GitObjectID - ): [GistFile] + value: OrganizationMembersCanCreateRepositoriesSettingValue! + ): OrganizationConnection! """ - A list of forks associated with the gist + The setting value for whether members with admin permissions for repositories can delete issues. """ - forks( + membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can delete issues setting value. + """ + membersCanDeleteIssuesSettingOrganizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9411,46 +12684,25 @@ type Gist implements Node & Starrable & UniformResourceLocatable { last: Int """ - Ordering options for gists returned from the connection + Ordering options for organizations with this setting. """ - orderBy: GistOrder - ): GistConnection! - id: ID! - - """ - Identifies if the gist is a fork. - """ - isFork: Boolean! - - """ - Whether the gist is public or not. - """ - isPublic: Boolean! - - """ - The gist name. - """ - name: String! - - """ - The gist owner. - """ - owner: RepositoryOwner + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - """ - Identifies when the gist was last pushed to. - """ - pushedAt: DateTime + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! """ - The HTML path to this resource. + The setting value for whether members with admin permissions for repositories can delete or transfer repositories. """ - resourcePath: URI! + membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! """ - A list of users who have starred this starrable. + A list of enterprise organizations configured with the provided members can delete repositories setting value. """ - stargazers( + membersCanDeleteRepositoriesSettingOrganizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9472,116 +12724,110 @@ type Gist implements Node & Starrable & UniformResourceLocatable { last: Int """ - Order for connection + Ordering options for organizations with this setting. """ - orderBy: StarOrder - ): StargazerConnection! - - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! - - """ - The HTTP URL for this Gist. - """ - url: URI! + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - """ - Returns a boolean indicating whether the viewing user has starred this starrable. - """ - viewerHasStarred: Boolean! -} + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! -""" -Represents a comment on an Gist. -""" -type GistComment implements Comment & Deletable & Minimizable & Node & Updatable & UpdatableComment { """ - The actor who authored the comment. + The setting value for whether members of organizations in the enterprise can invite outside collaborators. """ - author: Actor + membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! """ - Author's association with the gist. + A list of enterprise organizations configured with the provided members can invite collaborators setting value. """ - authorAssociation: CommentAuthorAssociation! + membersCanInviteCollaboratorsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Identifies the comment body. - """ - body: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The comment body rendered to HTML. - """ - bodyHTML: HTML! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The body rendered to text. - """ - bodyText: String! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - """ - Check if this comment was created via an email reply. - """ - createdViaEmail: Boolean! + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! """ - Identifies the primary key from the database. + Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. """ - databaseId: Int + membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! """ - The actor who edited the comment. + The setting value for whether members with admin permissions for repositories can update protected branches. """ - editor: Actor + membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! """ - The associated gist. + A list of enterprise organizations configured with the provided members can update protected branches setting value. """ - gist: Gist! - id: ID! + membersCanUpdateProtectedBranchesSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Check if this comment was edited and includes an edit with the creation data - """ - includesCreatedEdit: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Returns whether or not a comment has been minimized. - """ - isMinimized: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The moment the editor made the last edit - """ - lastEditedAt: DateTime + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Returns why the comment was minimized. - """ - minimizedReason: String + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - """ - Identifies when the comment was published at. - """ - publishedAt: DateTime + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! """ - Identifies the date and time when the object was last updated. + The setting value for whether members can view dependency insights. """ - updatedAt: DateTime! + membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! """ - A list of edits to this content. + A list of enterprise organizations configured with the provided members can view dependency insights setting value. """ - userContentEdits( + membersCanViewDependencyInsightsSettingOrganizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9601,763 +12847,13344 @@ type GistComment implements Comment & Deletable & Minimizable & Node & Updatable Returns the last _n_ elements from the list. """ last: Int - ): UserContentEditConnection + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + Indicates if email notification delivery for this enterprise is restricted to verified or approved domains. + """ + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! + + """ + The OIDC Identity Provider for the enterprise. + """ + oidcProvider: OIDCProvider + + """ + The setting value for whether organization projects are enabled for organizations in this enterprise. + """ + organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided organization projects setting value. + """ + organizationProjectsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + A list of outside collaborators across the repositories in the enterprise. + """ + outsideCollaborators( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Only return outside collaborators with this two-factor authentication status. + """ + hasTwoFactorEnabled: Boolean = null + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + The login of one specific outside collaborator. + """ + login: String + + """ + Ordering options for outside collaborators returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """ + Only return outside collaborators within the organizations with these logins + """ + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + + """ + Only return outside collaborators on repositories with this visibility. + """ + visibility: RepositoryVisibility + ): EnterpriseOutsideCollaboratorConnection! + + """ + A list of pending administrator invitations for the enterprise. + """ + pendingAdminInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pending enterprise administrator invitations returned from the connection. + """ + orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} + + """ + The search string to look for. + """ + query: String + + """ + The role to filter by. + """ + role: EnterpriseAdministratorRole + ): EnterpriseAdministratorInvitationConnection! + + """ + A list of pending collaborator invitations across the repositories in the enterprise. + """ + pendingCollaboratorInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pending repository collaborator invitations returned from the connection. + """ + orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} + + """ + The search string to look for. + """ + query: String + ): RepositoryInvitationConnection! + + """ + A list of pending member invitations for organizations in the enterprise. + """ + pendingMemberInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Only return invitations matching this invitation source + """ + invitationSource: OrganizationInvitationSource + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Only return invitations within the organizations with these logins + """ + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + ): EnterprisePendingMemberInvitationConnection! + + """ + The setting value for whether repository projects are enabled in this enterprise. + """ + repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided repository projects setting value. + """ + repositoryProjectsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The SAML Identity Provider for the enterprise. When used by a GitHub App, + requires an installation token with read and write access to members. + """ + samlIdentityProvider: EnterpriseIdentityProvider + + """ + A list of enterprise organizations configured with the SAML single sign-on setting value. + """ + samlIdentityProviderSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: IdentityProviderConfigurationState! + ): OrganizationConnection! + + """ + A list of members with a support entitlement. + """ + supportEntitlements( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for support entitlement users returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + ): EnterpriseMemberConnection! + + """ + The setting value for whether team discussions are enabled for organizations in this enterprise. + """ + teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided team discussions setting value. + """ + teamDiscussionsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The setting value for whether the enterprise requires two-factor authentication for its organizations and users. + """ + twoFactorRequiredSetting: EnterpriseEnabledSettingValue! + + """ + A list of enterprise organizations configured with the two-factor authentication setting value. + """ + twoFactorRequiredSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! +} + +""" +The connection type for OrganizationInvitation. +""" +type EnterprisePendingMemberInvitationConnection { + """ + A list of edges. + """ + edges: [EnterprisePendingMemberInvitationEdge] + + """ + A list of nodes. + """ + nodes: [OrganizationInvitation] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + Identifies the total count of unique users in the connection. + """ + totalUniqueUserCount: Int! +} + +""" +An invitation to be a member in an enterprise organization. +""" +type EnterprisePendingMemberInvitationEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: OrganizationInvitation +} + +""" +A subset of repository information queryable from an enterprise. +""" +type EnterpriseRepositoryInfo implements Node { + id: ID! + + """ + Identifies if the repository is private or internal. + """ + isPrivate: Boolean! + + """ + The repository's name. + """ + name: String! + + """ + The repository's name with owner. + """ + nameWithOwner: String! +} + +""" +The connection type for EnterpriseRepositoryInfo. +""" +type EnterpriseRepositoryInfoConnection { + """ + A list of edges. + """ + edges: [EnterpriseRepositoryInfoEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseRepositoryInfo] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseRepositoryInfoEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseRepositoryInfo +} + +""" +An Enterprise Server installation. +""" +type EnterpriseServerInstallation implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The customer name to which the Enterprise Server installation belongs. + """ + customerName: String! + + """ + The host name of the Enterprise Server installation. + """ + hostName: String! + id: ID! + + """ + Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect. + """ + isConnected: Boolean! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + User accounts on this Enterprise Server installation. + """ + userAccounts( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Enterprise Server user accounts returned from the connection. + """ + orderBy: EnterpriseServerUserAccountOrder = {field: LOGIN, direction: ASC} + ): EnterpriseServerUserAccountConnection! + + """ + User accounts uploads for the Enterprise Server installation. + """ + userAccountsUploads( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Enterprise Server user accounts uploads returned from the connection. + """ + orderBy: EnterpriseServerUserAccountsUploadOrder = {field: CREATED_AT, direction: DESC} + ): EnterpriseServerUserAccountsUploadConnection! +} + +""" +The connection type for EnterpriseServerInstallation. +""" +type EnterpriseServerInstallationConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerInstallationEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerInstallation] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerInstallationEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerInstallation +} + +""" +Ordering options for Enterprise Server installation connections. +""" +input EnterpriseServerInstallationOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order Enterprise Server installations by. + """ + field: EnterpriseServerInstallationOrderField! +} + +""" +Properties by which Enterprise Server installation connections can be ordered. +""" +enum EnterpriseServerInstallationOrderField { + """ + Order Enterprise Server installations by creation time + """ + CREATED_AT + + """ + Order Enterprise Server installations by customer name + """ + CUSTOMER_NAME + + """ + Order Enterprise Server installations by host name + """ + HOST_NAME +} + +""" +A user account on an Enterprise Server installation. +""" +type EnterpriseServerUserAccount implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + User emails belonging to this user account. + """ + emails( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Enterprise Server user account emails returned from the connection. + """ + orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} + ): EnterpriseServerUserAccountEmailConnection! + + """ + The Enterprise Server installation on which this user account exists. + """ + enterpriseServerInstallation: EnterpriseServerInstallation! + id: ID! + + """ + Whether the user account is a site administrator on the Enterprise Server installation. + """ + isSiteAdmin: Boolean! + + """ + The login of the user account on the Enterprise Server installation. + """ + login: String! + + """ + The profile name of the user account on the Enterprise Server installation. + """ + profileName: String + + """ + The date and time when the user account was created on the Enterprise Server installation. + """ + remoteCreatedAt: DateTime! + + """ + The ID of the user account on the Enterprise Server installation. + """ + remoteUserId: Int! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for EnterpriseServerUserAccount. +""" +type EnterpriseServerUserAccountConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerUserAccountEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerUserAccount] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerUserAccountEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerUserAccount +} + +""" +An email belonging to a user account on an Enterprise Server installation. +""" +type EnterpriseServerUserAccountEmail implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The email address. + """ + email: String! + id: ID! + + """ + Indicates whether this is the primary email of the associated user account. + """ + isPrimary: Boolean! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The user account to which the email belongs. + """ + userAccount: EnterpriseServerUserAccount! +} + +""" +The connection type for EnterpriseServerUserAccountEmail. +""" +type EnterpriseServerUserAccountEmailConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerUserAccountEmailEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerUserAccountEmail] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerUserAccountEmailEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerUserAccountEmail +} + +""" +Ordering options for Enterprise Server user account email connections. +""" +input EnterpriseServerUserAccountEmailOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order emails by. + """ + field: EnterpriseServerUserAccountEmailOrderField! +} + +""" +Properties by which Enterprise Server user account email connections can be ordered. +""" +enum EnterpriseServerUserAccountEmailOrderField { + """ + Order emails by email + """ + EMAIL +} + +""" +Ordering options for Enterprise Server user account connections. +""" +input EnterpriseServerUserAccountOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order user accounts by. + """ + field: EnterpriseServerUserAccountOrderField! +} + +""" +Properties by which Enterprise Server user account connections can be ordered. +""" +enum EnterpriseServerUserAccountOrderField { + """ + Order user accounts by login + """ + LOGIN + + """ + Order user accounts by creation time on the Enterprise Server installation + """ + REMOTE_CREATED_AT +} + +""" +A user accounts upload from an Enterprise Server installation. +""" +type EnterpriseServerUserAccountsUpload implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The enterprise to which this upload belongs. + """ + enterprise: Enterprise! + + """ + The Enterprise Server installation for which this upload was generated. + """ + enterpriseServerInstallation: EnterpriseServerInstallation! + id: ID! + + """ + The name of the file uploaded. + """ + name: String! + + """ + The synchronization state of the upload + """ + syncState: EnterpriseServerUserAccountsUploadSyncState! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for EnterpriseServerUserAccountsUpload. +""" +type EnterpriseServerUserAccountsUploadConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerUserAccountsUploadEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerUserAccountsUpload] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerUserAccountsUploadEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerUserAccountsUpload +} + +""" +Ordering options for Enterprise Server user accounts upload connections. +""" +input EnterpriseServerUserAccountsUploadOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order user accounts uploads by. + """ + field: EnterpriseServerUserAccountsUploadOrderField! +} + +""" +Properties by which Enterprise Server user accounts upload connections can be ordered. +""" +enum EnterpriseServerUserAccountsUploadOrderField { + """ + Order user accounts uploads by creation time + """ + CREATED_AT +} + +""" +Synchronization state of the Enterprise Server user accounts upload +""" +enum EnterpriseServerUserAccountsUploadSyncState { + """ + The synchronization of the upload failed. + """ + FAILURE + + """ + The synchronization of the upload is pending. + """ + PENDING + + """ + The synchronization of the upload succeeded. + """ + SUCCESS +} + +""" +An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations. +""" +type EnterpriseUserAccount implements Actor & Node { + """ + A URL pointing to the enterprise user account's public avatar. + """ + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The enterprise in which this user account exists. + """ + enterprise: Enterprise! + id: ID! + + """ + An identifier for the enterprise user account, a login or email address + """ + login: String! + + """ + The name of the enterprise user account + """ + name: String + + """ + A list of enterprise organizations this user is a member of. + """ + organizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations returned from the connection. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The search string to look for. + """ + query: String + + """ + The role of the user in the enterprise organization. + """ + role: EnterpriseUserAccountMembershipRole + ): EnterpriseOrganizationMembershipConnection! + + """ + The HTTP path for this user. + """ + resourcePath: URI! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this user. + """ + url: URI! + + """ + The user within the enterprise. + """ + user: User +} + +""" +The possible roles for enterprise membership. +""" +enum EnterpriseUserAccountMembershipRole { + """ + The user is a member of an organization in the enterprise. + """ + MEMBER + + """ + The user is an owner of an organization in the enterprise. + """ + OWNER + + """ + The user is not an owner of the enterprise, and not a member or owner of any + organizations in the enterprise; only for EMU-enabled enterprises. + """ + UNAFFILIATED +} + +""" +The possible GitHub Enterprise deployments where this user can exist. +""" +enum EnterpriseUserDeployment { + """ + The user is part of a GitHub Enterprise Cloud deployment. + """ + CLOUD + + """ + The user is part of a GitHub Enterprise Server deployment. + """ + SERVER +} + +""" +An environment. +""" +type Environment implements Node { + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + The name of the environment + """ + name: String! + + """ + The protection rules defined for this environment + """ + protectionRules( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentProtectionRuleConnection! +} + +""" +The connection type for Environment. +""" +type EnvironmentConnection { + """ + A list of edges. + """ + edges: [EnvironmentEdge] + + """ + A list of nodes. + """ + nodes: [Environment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnvironmentEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Environment +} + +""" +An external identity provisioned by SAML SSO or SCIM. +""" +type ExternalIdentity implements Node { + """ + The GUID for this identity + """ + guid: String! + id: ID! + + """ + Organization invitation for this SCIM-provisioned external identity + """ + organizationInvitation: OrganizationInvitation + + """ + SAML Identity attributes + """ + samlIdentity: ExternalIdentitySamlAttributes + + """ + SCIM Identity attributes + """ + scimIdentity: ExternalIdentityScimAttributes + + """ + User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + """ + user: User +} + +""" +An attribute for the External Identity attributes collection +""" +type ExternalIdentityAttribute { + """ + The attribute metadata as JSON + """ + metadata: String + + """ + The attribute name + """ + name: String! + + """ + The attribute value + """ + value: String! +} + +""" +The connection type for ExternalIdentity. +""" +type ExternalIdentityConnection { + """ + A list of edges. + """ + edges: [ExternalIdentityEdge] + + """ + A list of nodes. + """ + nodes: [ExternalIdentity] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type ExternalIdentityEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: ExternalIdentity +} + +""" +SAML attributes for the External Identity +""" +type ExternalIdentitySamlAttributes { + """ + SAML Identity attributes + """ + attributes: [ExternalIdentityAttribute!]! + + """ + The emails associated with the SAML identity + """ + emails: [UserEmailMetadata!] + + """ + Family name of the SAML identity + """ + familyName: String + + """ + Given name of the SAML identity + """ + givenName: String + + """ + The groups linked to this identity in IDP + """ + groups: [String!] + + """ + The NameID of the SAML identity + """ + nameId: String + + """ + The userName of the SAML identity + """ + username: String +} + +""" +SCIM attributes for the External Identity +""" +type ExternalIdentityScimAttributes { + """ + The emails associated with the SCIM identity + """ + emails: [UserEmailMetadata!] + + """ + Family name of the SCIM identity + """ + familyName: String + + """ + Given name of the SCIM identity + """ + givenName: String + + """ + The groups linked to this identity in IDP + """ + groups: [String!] + + """ + The userName of the SCIM identity + """ + username: String +} + +""" +A command to add a file at the given path with the given contents as part of a +commit. Any existing file at that that path will be replaced. +""" +input FileAddition { + """ + The base64 encoded contents of the file + """ + contents: Base64String! + + """ + The path in the repository where the file will be located + """ + path: String! +} + +""" +A description of a set of changes to a file tree to be made as part of +a git commit, modeled as zero or more file `additions` and zero or more +file `deletions`. + +Both fields are optional; omitting both will produce a commit with no +file changes. + +`deletions` and `additions` describe changes to files identified +by their path in the git tree using unix-style path separators, i.e. +`/`. The root of a git tree is an empty string, so paths are not +slash-prefixed. + +`path` values must be unique across all `additions` and `deletions` +provided. Any duplication will result in a validation error. + +### Encoding + +File contents must be provided in full for each `FileAddition`. + +The `contents` of a `FileAddition` must be encoded using RFC 4648 +compliant base64, i.e. correct padding is required and no characters +outside the standard alphabet may be used. Invalid base64 +encoding will be rejected with a validation error. + +The encoded contents may be binary. + +For text files, no assumptions are made about the character encoding of +the file contents (after base64 decoding). No charset transcoding or +line-ending normalization will be performed; it is the client's +responsibility to manage the character encoding of files they provide. +However, for maximum compatibility we recommend using UTF-8 encoding +and ensuring that all files in a repository use a consistent +line-ending convention (`\n` or `\r\n`), and that all files end +with a newline. + +### Modeling file changes + +Each of the the five types of conceptual changes that can be made in a +git commit can be described using the `FileChanges` type as follows: + +1. New file addition: create file `hello world\n` at path `docs/README.txt`: + + { + "additions" [ + { + "path": "docs/README.txt", + "contents": base64encode("hello world\n") + } + ] + } + +2. Existing file modification: change existing `docs/README.txt` to have new + content `new content here\n`: + + { + "additions" [ + { + "path": "docs/README.txt", + "contents": base64encode("new content here\n") + } + ] + } + +3. Existing file deletion: remove existing file `docs/README.txt`. + Note that the path is required to exist -- specifying a + path that does not exist on the given branch will abort the + commit and return an error. + + { + "deletions" [ + { + "path": "docs/README.txt" + } + ] + } + + +4. File rename with no changes: rename `docs/README.txt` with + previous content `hello world\n` to the same content at + `newdocs/README.txt`: + + { + "deletions" [ + { + "path": "docs/README.txt", + } + ], + "additions" [ + { + "path": "newdocs/README.txt", + "contents": base64encode("hello world\n") + } + ] + } + + +5. File rename with changes: rename `docs/README.txt` with + previous content `hello world\n` to a file at path + `newdocs/README.txt` with content `new contents\n`: + + { + "deletions" [ + { + "path": "docs/README.txt", + } + ], + "additions" [ + { + "path": "newdocs/README.txt", + "contents": base64encode("new contents\n") + } + ] + } +""" +input FileChanges { + """ + File to add or change. + """ + additions: [FileAddition!] = [] + + """ + Files to delete. + """ + deletions: [FileDeletion!] = [] +} + +""" +A command to delete the file at the given path as part of a commit. +""" +input FileDeletion { + """ + The path to delete + """ + path: String! +} + +""" +The possible viewed states of a file . +""" +enum FileViewedState { + """ + The file has new changes since last viewed. + """ + DISMISSED + + """ + The file has not been marked as viewed. + """ + UNVIEWED + + """ + The file has been marked as viewed. + """ + VIEWED +} + +""" +Autogenerated input type of FollowOrganization +""" +input FollowOrganizationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the organization to follow. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of FollowOrganization +""" +type FollowOrganizationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organization that was followed. + """ + organization: Organization +} + +""" +Autogenerated input type of FollowUser +""" +input FollowUserInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the user to follow. + """ + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} + +""" +Autogenerated return type of FollowUser +""" +type FollowUserPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The user that was followed. + """ + user: User +} + +""" +The connection type for User. +""" +type FollowerConnection { + """ + A list of edges. + """ + edges: [UserEdge] + + """ + A list of nodes. + """ + nodes: [User] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +The connection type for User. +""" +type FollowingConnection { + """ + A list of edges. + """ + edges: [UserEdge] + + """ + A list of nodes. + """ + nodes: [User] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +A funding platform link for a repository. +""" +type FundingLink { + """ + The funding platform this link is for. + """ + platform: FundingPlatform! + + """ + The configured URL for this funding link. + """ + url: URI! +} + +""" +The possible funding platforms for repository funding links. +""" +enum FundingPlatform { + """ + Community Bridge funding platform. + """ + COMMUNITY_BRIDGE + + """ + Custom funding platform. + """ + CUSTOM + + """ + GitHub funding platform. + """ + GITHUB + + """ + IssueHunt funding platform. + """ + ISSUEHUNT + + """ + Ko-fi funding platform. + """ + KO_FI + + """ + LFX Crowdfunding funding platform. + """ + LFX_CROWDFUNDING + + """ + Liberapay funding platform. + """ + LIBERAPAY + + """ + Open Collective funding platform. + """ + OPEN_COLLECTIVE + + """ + Otechie funding platform. + """ + OTECHIE + + """ + Patreon funding platform. + """ + PATREON + + """ + Tidelift funding platform. + """ + TIDELIFT +} + +""" +A generic hovercard context with a message and icon +""" +type GenericHovercardContext implements HovercardContext { + """ + A string describing this context + """ + message: String! + + """ + An octicon to accompany this context + """ + octicon: String! +} + +""" +A Gist. +""" +type Gist implements Node & Starrable & UniformResourceLocatable { + """ + A list of comments associated with the gist + """ + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): GistCommentConnection! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The gist description. + """ + description: String + + """ + The files in this gist. + """ + files( + """ + The maximum number of files to return. + """ + limit: Int = 10 + + """ + The oid of the files to return + """ + oid: GitObjectID + ): [GistFile] + + """ + A list of forks associated with the gist + """ + forks( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for gists returned from the connection + """ + orderBy: GistOrder + ): GistConnection! + id: ID! + + """ + Identifies if the gist is a fork. + """ + isFork: Boolean! + + """ + Whether the gist is public or not. + """ + isPublic: Boolean! + + """ + The gist name. + """ + name: String! + + """ + The gist owner. + """ + owner: RepositoryOwner + + """ + Identifies when the gist was last pushed to. + """ + pushedAt: DateTime + + """ + The HTML path to this resource. + """ + resourcePath: URI! + + """ + Returns a count of how many stargazers there are on this object + """ + stargazerCount: Int! + + """ + A list of users who have starred this starrable. + """ + stargazers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Order for connection + """ + orderBy: StarOrder + ): StargazerConnection! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this Gist. + """ + url: URI! + + """ + Returns a boolean indicating whether the viewing user has starred this starrable. + """ + viewerHasStarred: Boolean! +} + +""" +Represents a comment on an Gist. +""" +type GistComment implements Comment & Deletable & Minimizable & Node & Updatable & UpdatableComment { + """ + The actor who authored the comment. + """ + author: Actor + + """ + Author's association with the gist. + """ + authorAssociation: CommentAuthorAssociation! + + """ + Identifies the comment body. + """ + body: String! + + """ + The body rendered to HTML. + """ + bodyHTML: HTML! + + """ + The body rendered to text. + """ + bodyText: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The actor who edited the comment. + """ + editor: Actor + + """ + The associated gist. + """ + gist: Gist! + id: ID! + + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! + + """ + Returns whether or not a comment has been minimized. + """ + isMinimized: Boolean! + + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime + + """ + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. + """ + minimizedReason: String + + """ + Identifies when the comment was published at. + """ + publishedAt: DateTime + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + A list of edits to this content. + """ + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Check if the current viewer can minimize this object. + """ + viewerCanMinimize: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! +} + +""" +The connection type for GistComment. +""" +type GistCommentConnection { + """ + A list of edges. + """ + edges: [GistCommentEdge] + + """ + A list of nodes. + """ + nodes: [GistComment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type GistCommentEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: GistComment +} + +""" +The connection type for Gist. +""" +type GistConnection { + """ + A list of edges. + """ + edges: [GistEdge] + + """ + A list of nodes. + """ + nodes: [Gist] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type GistEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Gist +} + +""" +A file in a gist. +""" +type GistFile { + """ + The file name encoded to remove characters that are invalid in URL paths. + """ + encodedName: String + + """ + The gist file encoding. + """ + encoding: String + + """ + The file extension from the file name. + """ + extension: String + + """ + Indicates if this file is an image. + """ + isImage: Boolean! + + """ + Whether the file's contents were truncated. + """ + isTruncated: Boolean! + + """ + The programming language this file is written in. + """ + language: Language + + """ + The gist file name. + """ + name: String + + """ + The gist file size in bytes. + """ + size: Int + + """ + UTF8 text data or null if the file is binary + """ + text( + """ + Optionally truncate the returned file to this length. + """ + truncate: Int + ): String +} + +""" +Ordering options for gist connections +""" +input GistOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order repositories by. + """ + field: GistOrderField! +} + +""" +Properties by which gist connections can be ordered. +""" +enum GistOrderField { + """ + Order gists by creation time + """ + CREATED_AT + + """ + Order gists by push time + """ + PUSHED_AT + + """ + Order gists by update time + """ + UPDATED_AT +} + +""" +The privacy of a Gist +""" +enum GistPrivacy { + """ + Gists that are public and secret + """ + ALL + + """ + Public + """ + PUBLIC + + """ + Secret + """ + SECRET +} + +""" +Represents an actor in a Git commit (ie. an author or committer). +""" +type GitActor { + """ + A URL pointing to the author's public avatar. + """ + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + + """ + The timestamp of the Git action (authoring or committing). + """ + date: GitTimestamp + + """ + The email in the Git commit. + """ + email: String + + """ + The name in the Git commit. + """ + name: String + + """ + The GitHub user corresponding to the email field. Null if no such user exists. + """ + user: User +} + +""" +The connection type for GitActor. +""" +type GitActorConnection { + """ + A list of edges. + """ + edges: [GitActorEdge] + + """ + A list of nodes. + """ + nodes: [GitActor] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type GitActorEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: GitActor +} + +""" +Represents information about the GitHub instance. +""" +type GitHubMetadata { + """ + Returns a String that's a SHA of `github-services` + """ + gitHubServicesSha: GitObjectID! + + """ + IP addresses that users connect to for git operations + """ + gitIpAddresses: [String!] + + """ + IP addresses that service hooks are sent from + """ + hookIpAddresses: [String!] + + """ + IP addresses that the importer connects from + """ + importerIpAddresses: [String!] + + """ + Whether or not users are verified + """ + isPasswordAuthenticationVerifiable: Boolean! + + """ + IP addresses for GitHub Pages' A records + """ + pagesIpAddresses: [String!] +} + +""" +Represents a Git object. +""" +interface GitObject { + """ + An abbreviated version of the Git object ID + """ + abbreviatedOid: String! + + """ + The HTTP path for this Git object + """ + commitResourcePath: URI! + + """ + The HTTP URL for this Git object + """ + commitUrl: URI! + id: ID! + + """ + The Git object ID + """ + oid: GitObjectID! + + """ + The Repository the Git object belongs to + """ + repository: Repository! +} + +""" +A Git object ID. +""" +scalar GitObjectID + +""" +A fully qualified reference name (e.g. `refs/heads/master`). +""" +scalar GitRefname @preview(toggledBy: "update-refs-preview") + +""" +Git SSH string +""" +scalar GitSSHRemote + +""" +Information about a signature (GPG or S/MIME) on a Commit or Tag. +""" +interface GitSignature { + """ + Email used to sign this object. + """ + email: String! + + """ + True if the signature is valid and verified by GitHub. + """ + isValid: Boolean! + + """ + Payload for GPG signing object. Raw ODB object without the signature header. + """ + payload: String! + + """ + ASCII-armored signature header from object. + """ + signature: String! + + """ + GitHub user corresponding to the email signing this commit. + """ + signer: User + + """ + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. + """ + state: GitSignatureState! + + """ + True if the signature was made with GitHub's signing key. + """ + wasSignedByGitHub: Boolean! +} + +""" +The state of a Git signature. +""" +enum GitSignatureState { + """ + The signing certificate or its chain could not be verified + """ + BAD_CERT + + """ + Invalid email used for signing + """ + BAD_EMAIL + + """ + Signing key expired + """ + EXPIRED_KEY + + """ + Internal error - the GPG verification service misbehaved + """ + GPGVERIFY_ERROR + + """ + Internal error - the GPG verification service is unavailable at the moment + """ + GPGVERIFY_UNAVAILABLE + + """ + Invalid signature + """ + INVALID + + """ + Malformed signature + """ + MALFORMED_SIG + + """ + The usage flags for the key that signed this don't allow signing + """ + NOT_SIGNING_KEY + + """ + Email used for signing not known to GitHub + """ + NO_USER + + """ + Valid signature, though certificate revocation check failed + """ + OCSP_ERROR + + """ + Valid signature, pending certificate revocation checking + """ + OCSP_PENDING + + """ + One or more certificates in chain has been revoked + """ + OCSP_REVOKED + + """ + Key used for signing not known to GitHub + """ + UNKNOWN_KEY + + """ + Unknown signature type + """ + UNKNOWN_SIG_TYPE + + """ + Unsigned + """ + UNSIGNED + + """ + Email used for signing unverified on GitHub + """ + UNVERIFIED_EMAIL + + """ + Valid signature and verified by GitHub + """ + VALID +} + +""" +An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC. +""" +scalar GitTimestamp + +""" +Represents a GPG signature on a Commit or Tag. +""" +type GpgSignature implements GitSignature { + """ + Email used to sign this object. + """ + email: String! + + """ + True if the signature is valid and verified by GitHub. + """ + isValid: Boolean! + + """ + Hex-encoded ID of the key that signed this object. + """ + keyId: String + + """ + Payload for GPG signing object. Raw ODB object without the signature header. + """ + payload: String! + + """ + ASCII-armored signature header from object. + """ + signature: String! + + """ + GitHub user corresponding to the email signing this commit. + """ + signer: User + + """ + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. + """ + state: GitSignatureState! + + """ + True if the signature was made with GitHub's signing key. + """ + wasSignedByGitHub: Boolean! +} + +""" +Autogenerated input type of GrantEnterpriseOrganizationsMigratorRole +""" +input GrantEnterpriseOrganizationsMigratorRoleInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of the user to grant the migrator role + """ + login: String! +} + +""" +Autogenerated return type of GrantEnterpriseOrganizationsMigratorRole +""" +type GrantEnterpriseOrganizationsMigratorRolePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organizations that had the migrator role applied to for the given user. + """ + organizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): OrganizationConnection +} + +""" +Autogenerated input type of GrantMigratorRole +""" +input GrantMigratorRoleInput { + """ + The user login or Team slug to grant the migrator role. + """ + actor: String! + + """ + Specifies the type of the actor, can be either USER or TEAM. + """ + actorType: ActorType! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the organization that the user/team belongs to. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of GrantMigratorRole +""" +type GrantMigratorRolePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Did the operation succeed? + """ + success: Boolean +} + +""" +A string containing HTML code. +""" +scalar HTML + +""" +Represents a 'head_ref_deleted' event on a given pull request. +""" +type HeadRefDeletedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the Ref associated with the `head_ref_deleted` event. + """ + headRef: Ref + + """ + Identifies the name of the Ref associated with the `head_ref_deleted` event. + """ + headRefName: String! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +Represents a 'head_ref_force_pushed' event on a given pull request. +""" +type HeadRefForcePushedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the after commit SHA for the 'head_ref_force_pushed' event. + """ + afterCommit: Commit + + """ + Identifies the before commit SHA for the 'head_ref_force_pushed' event. + """ + beforeCommit: Commit + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! + + """ + Identifies the fully qualified ref name for the 'head_ref_force_pushed' event. + """ + ref: Ref +} + +""" +Represents a 'head_ref_restored' event on a given pull request. +""" +type HeadRefRestoredEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +Detail needed to display a hovercard for a user +""" +type Hovercard { + """ + Each of the contexts for this hovercard + """ + contexts: [HovercardContext!]! +} + +""" +An individual line of a hovercard +""" +interface HovercardContext { + """ + A string describing this context + """ + message: String! + + """ + An octicon to accompany this context + """ + octicon: String! +} + +""" +The possible states in which authentication can be configured with an identity provider. +""" +enum IdentityProviderConfigurationState { + """ + Authentication with an identity provider is configured but not enforced. + """ + CONFIGURED + + """ + Authentication with an identity provider is configured and enforced. + """ + ENFORCED + + """ + Authentication with an identity provider is not configured. + """ + UNCONFIGURED +} + +""" +Autogenerated input type of ImportProject +""" +input ImportProjectInput { + """ + The description of Project. + """ + body: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A list of columns containing issues and pull requests. + """ + columnImports: [ProjectColumnImport!]! + + """ + The name of Project. + """ + name: String! + + """ + The name of the Organization or User to create the Project under. + """ + ownerName: String! + + """ + Whether the Project is public or not. + """ + public: Boolean = false +} + +""" +Autogenerated return type of ImportProject +""" +type ImportProjectPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new Project! + """ + project: Project +} + +""" +Autogenerated input type of InviteEnterpriseAdmin +""" +input InviteEnterpriseAdminInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The email of the person to invite as an administrator. + """ + email: String + + """ + The ID of the enterprise to which you want to invite an administrator. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of a user to invite as an administrator. + """ + invitee: String + + """ + The role of the administrator. + """ + role: EnterpriseAdministratorRole +} + +""" +Autogenerated return type of InviteEnterpriseAdmin +""" +type InviteEnterpriseAdminPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The created enterprise administrator invitation. + """ + invitation: EnterpriseAdministratorInvitation +} + +""" +The possible values for the IP allow list enabled setting. +""" +enum IpAllowListEnabledSettingValue { + """ + The setting is disabled for the owner. + """ + DISABLED + + """ + The setting is enabled for the owner. + """ + ENABLED +} + +""" +An IP address or range of addresses that is allowed to access an owner's resources. +""" +type IpAllowListEntry implements Node { + """ + A single IP address or range of IP addresses in CIDR notation. + """ + allowListValue: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Whether the entry is currently active. + """ + isActive: Boolean! + + """ + The name of the IP allow list entry. + """ + name: String + + """ + The owner of the IP allow list entry. + """ + owner: IpAllowListOwner! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for IpAllowListEntry. +""" +type IpAllowListEntryConnection { + """ + A list of edges. + """ + edges: [IpAllowListEntryEdge] + + """ + A list of nodes. + """ + nodes: [IpAllowListEntry] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type IpAllowListEntryEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IpAllowListEntry +} + +""" +Ordering options for IP allow list entry connections. +""" +input IpAllowListEntryOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order IP allow list entries by. + """ + field: IpAllowListEntryOrderField! +} + +""" +Properties by which IP allow list entry connections can be ordered. +""" +enum IpAllowListEntryOrderField { + """ + Order IP allow list entries by the allow list value. + """ + ALLOW_LIST_VALUE + + """ + Order IP allow list entries by creation time. + """ + CREATED_AT +} + +""" +The possible values for the IP allow list configuration for installed GitHub Apps setting. +""" +enum IpAllowListForInstalledAppsEnabledSettingValue { + """ + The setting is disabled for the owner. + """ + DISABLED + + """ + The setting is enabled for the owner. + """ + ENABLED +} + +""" +Types that can own an IP allow list. +""" +union IpAllowListOwner = App | Enterprise | Organization + +""" +An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project. +""" +type Issue implements Assignable & Closable & Comment & Labelable & Lockable & Node & ProjectV2Owner & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { + """ + Reason that the conversation was locked. + """ + activeLockReason: LockReason + + """ + A list of Users assigned to this object. + """ + assignees( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! + + """ + The actor who authored the comment. + """ + author: Actor + + """ + Author's association with the subject of the comment. + """ + authorAssociation: CommentAuthorAssociation! + + """ + Identifies the body of the issue. + """ + body: String! + + """ + The body rendered to HTML. + """ + bodyHTML: HTML! + + """ + The http path for this issue body + """ + bodyResourcePath: URI! + + """ + Identifies the body of the issue rendered to text. + """ + bodyText: String! + + """ + The http URL for this issue body + """ + bodyUrl: URI! + + """ + Indicates if the object is closed (definition of closed may depend on type) + """ + closed: Boolean! + + """ + Identifies the date and time when the object was closed. + """ + closedAt: DateTime + + """ + A list of comments associated with the Issue. + """ + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder + ): IssueCommentConnection! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The actor who edited the comment. + """ + editor: Actor + + """ + The hovercard information for this issue + """ + hovercard( + """ + Whether or not to include notification contexts + """ + includeNotificationContexts: Boolean = true + ): Hovercard! + id: ID! + + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! + + """ + Indicates whether or not this issue is currently pinned to the repository issues list + """ + isPinned: Boolean + + """ + Is this issue read by the viewer + """ + isReadByViewer: Boolean + + """ + A list of labels associated with the object. + """ + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection + + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime + + """ + Branches linked to this issue. + """ + linkedBranches( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): LinkedBranchConnection! + + """ + `true` if the object is locked + """ + locked: Boolean! + + """ + Identifies the milestone associated with the issue. + """ + milestone: Milestone + + """ + Identifies the issue number. + """ + number: Int! + + """ + A list of Users that are participating in the Issue conversation. + """ + participants( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! + + """ + List of project cards associated with this issue. + """ + projectCards( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + A list of archived states to filter the cards by + """ + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! + + """ + List of project items associated with this issue. + """ + projectItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Include archived items. + """ + includeArchived: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ItemConnection! + + """ + Find a project by number. + """ + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 + + """ + A list of projects under the owner. + """ + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! + + """ + Identifies when the comment was published at. + """ + publishedAt: DateTime + + """ + A list of reactions grouped by content left on the subject. + """ + reactionGroups: [ReactionGroup!] + + """ + A list of Reactions left on the Issue. + """ + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! + + """ + The repository associated with this node. + """ + repository: Repository! + + """ + The HTTP path for this issue + """ + resourcePath: URI! + + """ + Identifies the state of the issue. + """ + state: IssueState! + + """ + Identifies the reason for the issue state. + """ + stateReason: IssueStateReason + + """ + A list of events, comments, commits, etc. associated with the issue. + """ + timeline( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows filtering timeline events by a `since` timestamp. + """ + since: DateTime + ): IssueTimelineConnection! + @deprecated(reason: "`timeline` will be removed Use Issue.timelineItems instead. Removal on 2020-10-01 UTC.") + + """ + A list of events, comments, commits, etc. associated with the issue. + """ + timelineItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Filter timeline items by type. + """ + itemTypes: [IssueTimelineItemsItemType!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter timeline items by a `since` timestamp. + """ + since: DateTime + + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): IssueTimelineItemsConnection! + + """ + Identifies the issue title. + """ + title: String! + + """ + Identifies the issue title rendered to HTML. + """ + titleHTML: String! + + """ + A list of issues that track this issue + """ + trackedInIssues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): IssueConnection! + + """ + A list of issues tracked inside the current issue + """ + trackedIssues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): IssueConnection! + + """ + The number of tracked issues for this issue + """ + trackedIssuesCount( + """ + Limit the count to tracked issues with the specified states. + """ + states: [TrackedIssueStates] + ): Int! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this issue + """ + url: URI! + + """ + A list of edits to this content. + """ + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Check if the viewer is able to change their subscription status for the repository. + """ + viewerCanSubscribe: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! + + """ + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + """ + viewerSubscription: SubscriptionState +} + +""" +The possible state reasons of a closed issue. +""" +enum IssueClosedStateReason { + """ + An issue that has been closed as completed + """ + COMPLETED + + """ + An issue that has been closed as not planned + """ + NOT_PLANNED +} + +""" +Represents a comment on an Issue. +""" +type IssueComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { + """ + The actor who authored the comment. + """ + author: Actor + + """ + Author's association with the subject of the comment. + """ + authorAssociation: CommentAuthorAssociation! + + """ + The body as Markdown. + """ + body: String! + + """ + The body rendered to HTML. + """ + bodyHTML: HTML! + + """ + The body rendered to text. + """ + bodyText: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The actor who edited the comment. + """ + editor: Actor + id: ID! + + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! + + """ + Returns whether or not a comment has been minimized. + """ + isMinimized: Boolean! + + """ + Identifies the issue associated with the comment. + """ + issue: Issue! + + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime + + """ + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. + """ + minimizedReason: String + + """ + Identifies when the comment was published at. + """ + publishedAt: DateTime + + """ + Returns the pull request associated with the comment, if this comment was made on a + pull request. + """ + pullRequest: PullRequest + + """ + A list of reactions grouped by content left on the subject. + """ + reactionGroups: [ReactionGroup!] + + """ + A list of Reactions left on the Issue. + """ + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! + + """ + The repository associated with this node. + """ + repository: Repository! + + """ + The HTTP path for this issue comment + """ + resourcePath: URI! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this issue comment + """ + url: URI! + + """ + A list of edits to this content. + """ + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Check if the current viewer can minimize this object. + """ + viewerCanMinimize: Boolean! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! +} + +""" +The connection type for IssueComment. +""" +type IssueCommentConnection { + """ + A list of edges. + """ + edges: [IssueCommentEdge] + + """ + A list of nodes. + """ + nodes: [IssueComment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type IssueCommentEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IssueComment +} + +""" +Ways in which lists of issue comments can be ordered upon return. +""" +input IssueCommentOrder { + """ + The direction in which to order issue comments by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order issue comments by. + """ + field: IssueCommentOrderField! +} + +""" +Properties by which issue comment connections can be ordered. +""" +enum IssueCommentOrderField { + """ + Order issue comments by update time + """ + UPDATED_AT +} + +""" +The connection type for Issue. +""" +type IssueConnection { + """ + A list of edges. + """ + edges: [IssueEdge] + + """ + A list of nodes. + """ + nodes: [Issue] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +This aggregates issues opened by a user within one repository. +""" +type IssueContributionsByRepository { + """ + The issue contributions. + """ + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for contributions returned from the connection. + """ + orderBy: ContributionOrder = {direction: DESC} + ): CreatedIssueContributionConnection! + + """ + The repository in which the issues were opened. + """ + repository: Repository! +} + +""" +An edge in a connection. +""" +type IssueEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Issue +} + +""" +Ways in which to filter lists of issues. +""" +input IssueFilters { + """ + List issues assigned to given name. Pass in `null` for issues with no assigned + user, and `*` for issues assigned to any user. + """ + assignee: String + + """ + List issues created by given name. + """ + createdBy: String + + """ + List issues where the list of label names exist on the issue. + """ + labels: [String!] + + """ + List issues where the given name is mentioned in the issue. + """ + mentioned: String + + """ + List issues by given milestone argument. If an string representation of an + integer is passed, it should refer to a milestone by its database ID. Pass in + `null` for issues with no milestone, and `*` for issues that are assigned to any milestone. + """ + milestone: String + + """ + List issues by given milestone argument. If an string representation of an + integer is passed, it should refer to a milestone by its number field. Pass in + `null` for issues with no milestone, and `*` for issues that are assigned to any milestone. + """ + milestoneNumber: String + + """ + List issues that have been updated at or after the given date. + """ + since: DateTime + + """ + List issues filtered by the list of states given. + """ + states: [IssueState!] + + """ + List issues subscribed to by viewer. + """ + viewerSubscribed: Boolean = false +} + +""" +Used for return value of Repository.issueOrPullRequest. +""" +union IssueOrPullRequest = Issue | PullRequest + +""" +Ways in which lists of issues can be ordered upon return. +""" +input IssueOrder { + """ + The direction in which to order issues by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order issues by. + """ + field: IssueOrderField! +} + +""" +Properties by which issue connections can be ordered. +""" +enum IssueOrderField { + """ + Order issues by comment count + """ + COMMENTS + + """ + Order issues by creation time + """ + CREATED_AT + + """ + Order issues by update time + """ + UPDATED_AT +} + +""" +The possible states of an issue. +""" +enum IssueState { + """ + An issue that has been closed + """ + CLOSED + + """ + An issue that is still open + """ + OPEN +} + +""" +The possible state reasons of an issue. +""" +enum IssueStateReason { + """ + An issue that has been closed as completed + """ + COMPLETED + + """ + An issue that has been closed as not planned + """ + NOT_PLANNED + + """ + An issue that has been reopened + """ + REOPENED +} + +""" +A repository issue template. +""" +type IssueTemplate { + """ + The template purpose. + """ + about: String + + """ + The suggested issue body. + """ + body: String + + """ + The template filename. + """ + filename: String! + + """ + The template name. + """ + name: String! + + """ + The suggested issue title. + """ + title: String +} + +""" +The connection type for IssueTimelineItem. +""" +type IssueTimelineConnection { + """ + A list of edges. + """ + edges: [IssueTimelineItemEdge] + + """ + A list of nodes. + """ + nodes: [IssueTimelineItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An item in an issue timeline +""" +union IssueTimelineItem = + AssignedEvent + | ClosedEvent + | Commit + | CrossReferencedEvent + | DemilestonedEvent + | IssueComment + | LabeledEvent + | LockedEvent + | MilestonedEvent + | ReferencedEvent + | RenamedTitleEvent + | ReopenedEvent + | SubscribedEvent + | TransferredEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnsubscribedEvent + | UserBlockedEvent + +""" +An edge in a connection. +""" +type IssueTimelineItemEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IssueTimelineItem +} + +""" +An item in an issue timeline +""" +union IssueTimelineItems = + AddedToProjectEvent + | AssignedEvent + | ClosedEvent + | CommentDeletedEvent + | ConnectedEvent + | ConvertedNoteToIssueEvent + | ConvertedToDiscussionEvent + | CrossReferencedEvent + | DemilestonedEvent + | DisconnectedEvent + | IssueComment + | LabeledEvent + | LockedEvent + | MarkedAsDuplicateEvent + | MentionedEvent + | MilestonedEvent + | MovedColumnsInProjectEvent + | PinnedEvent + | ReferencedEvent + | RemovedFromProjectEvent + | RenamedTitleEvent + | ReopenedEvent + | SubscribedEvent + | TransferredEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnmarkedAsDuplicateEvent + | UnpinnedEvent + | UnsubscribedEvent + | UserBlockedEvent + +""" +The connection type for IssueTimelineItems. +""" +type IssueTimelineItemsConnection { + """ + A list of edges. + """ + edges: [IssueTimelineItemsEdge] + + """ + Identifies the count of items after applying `before` and `after` filters. + """ + filteredCount: Int! + + """ + A list of nodes. + """ + nodes: [IssueTimelineItems] + + """ + Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + """ + pageCount: Int! + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + Identifies the date and time when the timeline was last updated. + """ + updatedAt: DateTime! +} + +""" +An edge in a connection. +""" +type IssueTimelineItemsEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IssueTimelineItems +} + +""" +The possible item types found in a timeline. +""" +enum IssueTimelineItemsItemType { + """ + Represents a 'added_to_project' event on a given issue or pull request. + """ + ADDED_TO_PROJECT_EVENT + + """ + Represents an 'assigned' event on any assignable object. + """ + ASSIGNED_EVENT + + """ + Represents a 'closed' event on any `Closable`. + """ + CLOSED_EVENT + + """ + Represents a 'comment_deleted' event on a given issue or pull request. + """ + COMMENT_DELETED_EVENT + + """ + Represents a 'connected' event on a given issue or pull request. + """ + CONNECTED_EVENT + + """ + Represents a 'converted_note_to_issue' event on a given issue or pull request. + """ + CONVERTED_NOTE_TO_ISSUE_EVENT + + """ + Represents a 'converted_to_discussion' event on a given issue. + """ + CONVERTED_TO_DISCUSSION_EVENT + + """ + Represents a mention made by one issue or pull request to another. + """ + CROSS_REFERENCED_EVENT + + """ + Represents a 'demilestoned' event on a given issue or pull request. + """ + DEMILESTONED_EVENT + + """ + Represents a 'disconnected' event on a given issue or pull request. + """ + DISCONNECTED_EVENT + + """ + Represents a comment on an Issue. + """ + ISSUE_COMMENT + + """ + Represents a 'labeled' event on a given issue or pull request. + """ + LABELED_EVENT + + """ + Represents a 'locked' event on a given issue or pull request. + """ + LOCKED_EVENT + + """ + Represents a 'marked_as_duplicate' event on a given issue or pull request. + """ + MARKED_AS_DUPLICATE_EVENT + + """ + Represents a 'mentioned' event on a given issue or pull request. + """ + MENTIONED_EVENT + + """ + Represents a 'milestoned' event on a given issue or pull request. + """ + MILESTONED_EVENT + + """ + Represents a 'moved_columns_in_project' event on a given issue or pull request. + """ + MOVED_COLUMNS_IN_PROJECT_EVENT + + """ + Represents a 'pinned' event on a given issue or pull request. + """ + PINNED_EVENT + + """ + Represents a 'referenced' event on a given `ReferencedSubject`. + """ + REFERENCED_EVENT + + """ + Represents a 'removed_from_project' event on a given issue or pull request. + """ + REMOVED_FROM_PROJECT_EVENT + + """ + Represents a 'renamed' event on a given issue or pull request + """ + RENAMED_TITLE_EVENT + + """ + Represents a 'reopened' event on any `Closable`. + """ + REOPENED_EVENT + + """ + Represents a 'subscribed' event on a given `Subscribable`. + """ + SUBSCRIBED_EVENT + + """ + Represents a 'transferred' event on a given issue or pull request. + """ + TRANSFERRED_EVENT + + """ + Represents an 'unassigned' event on any assignable object. + """ + UNASSIGNED_EVENT + + """ + Represents an 'unlabeled' event on a given issue or pull request. + """ + UNLABELED_EVENT + + """ + Represents an 'unlocked' event on a given issue or pull request. + """ + UNLOCKED_EVENT + + """ + Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + """ + UNMARKED_AS_DUPLICATE_EVENT + + """ + Represents an 'unpinned' event on a given issue or pull request. + """ + UNPINNED_EVENT + + """ + Represents an 'unsubscribed' event on a given `Subscribable`. + """ + UNSUBSCRIBED_EVENT + + """ + Represents a 'user_blocked' event on a given user. + """ + USER_BLOCKED_EVENT +} + +""" +Represents a user signing up for a GitHub account. +""" +type JoinedGitHubContribution implements Contribution { + """ + Whether this contribution is associated with a record you do not have access to. For + example, your own 'first issue' contribution may have been made on a repository you can no + longer access. + """ + isRestricted: Boolean! + + """ + When this contribution was made. + """ + occurredAt: DateTime! + + """ + The HTTP path for this contribution. + """ + resourcePath: URI! + + """ + The HTTP URL for this contribution. + """ + url: URI! + + """ + The user who made this contribution. + """ + user: User! +} + +""" +A label for categorizing Issues, Pull Requests, Milestones, or Discussions with a given Repository. +""" +type Label implements Node { + """ + Identifies the label color. + """ + color: String! + + """ + Identifies the date and time when the label was created. + """ + createdAt: DateTime + + """ + A brief description of this label. + """ + description: String + id: ID! + + """ + Indicates whether or not this is a default label. + """ + isDefault: Boolean! + + """ + A list of issues associated with this label. + """ + issues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for issues returned from the connection. + """ + filterBy: IssueFilters + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issues returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! + + """ + Identifies the label name. + """ + name: String! + + """ + A list of pull requests associated with this label. + """ + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! + + """ + The repository associated with this label. + """ + repository: Repository! + + """ + The HTTP path for this label. + """ + resourcePath: URI! + + """ + Identifies the date and time when the label was last updated. + """ + updatedAt: DateTime + + """ + The HTTP URL for this label. + """ + url: URI! +} + +""" +The connection type for Label. +""" +type LabelConnection { + """ + A list of edges. + """ + edges: [LabelEdge] + + """ + A list of nodes. + """ + nodes: [Label] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type LabelEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Label +} + +""" +Ways in which lists of labels can be ordered upon return. +""" +input LabelOrder { + """ + The direction in which to order labels by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order labels by. + """ + field: LabelOrderField! +} + +""" +Properties by which label connections can be ordered. +""" +enum LabelOrderField { + """ + Order labels by creation time + """ + CREATED_AT + + """ + Order labels by name + """ + NAME +} + +""" +An object that can have labels assigned to it. +""" +interface Labelable { + """ + A list of labels associated with the object. + """ + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection +} + +""" +Represents a 'labeled' event on a given issue or pull request. +""" +type LabeledEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Identifies the label associated with the 'labeled' event. + """ + label: Label! + + """ + Identifies the `Labelable` associated with the event. + """ + labelable: Labelable! +} + +""" +Represents a given language found in repositories. +""" +type Language implements Node { + """ + The color defined for the current language. + """ + color: String + id: ID! + + """ + The name of the current language. + """ + name: String! +} + +""" +A list of languages associated with the parent. +""" +type LanguageConnection { + """ + A list of edges. + """ + edges: [LanguageEdge] + + """ + A list of nodes. + """ + nodes: [Language] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + The total size in bytes of files written in that language. + """ + totalSize: Int! +} + +""" +Represents the language of a repository. +""" +type LanguageEdge { + cursor: String! + node: Language! + + """ + The number of bytes of code written in the language. + """ + size: Int! +} + +""" +Ordering options for language connections. +""" +input LanguageOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order languages by. + """ + field: LanguageOrderField! +} + +""" +Properties by which language connections can be ordered. +""" +enum LanguageOrderField { + """ + Order languages by the size of all files containing the language + """ + SIZE +} + +""" +A repository's open source license +""" +type License implements Node { + """ + The full text of the license + """ + body: String! + + """ + The conditions set by the license + """ + conditions: [LicenseRule]! + + """ + A human-readable description of the license + """ + description: String + + """ + Whether the license should be featured + """ + featured: Boolean! + + """ + Whether the license should be displayed in license pickers + """ + hidden: Boolean! + id: ID! + + """ + Instructions on how to implement the license + """ + implementation: String + + """ + The lowercased SPDX ID of the license + """ + key: String! + + """ + The limitations set by the license + """ + limitations: [LicenseRule]! + + """ + The license full name specified by + """ + name: String! + + """ + Customary short name if applicable (e.g, GPLv3) + """ + nickname: String + + """ + The permissions set by the license + """ + permissions: [LicenseRule]! + + """ + Whether the license is a pseudo-license placeholder (e.g., other, no-license) + """ + pseudoLicense: Boolean! + + """ + Short identifier specified by + """ + spdxId: String + + """ + URL to the license on + """ + url: URI +} + +""" +Describes a License's conditions, permissions, and limitations +""" +type LicenseRule { + """ + A description of the rule + """ + description: String! + + """ + The machine-readable rule key + """ + key: String! + + """ + The human-readable rule label + """ + label: String! +} + +""" +Autogenerated input type of LinkProjectV2ToRepository +""" +input LinkProjectV2ToRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to link to the repository. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the repository to link to the project. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of LinkProjectV2ToRepository +""" +type LinkProjectV2ToRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository the project is linked to. + """ + repository: Repository +} + +""" +Autogenerated input type of LinkProjectV2ToTeam +""" +input LinkProjectV2ToTeamInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to link to the team. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the team to link to the project. + """ + teamId: ID! @possibleTypes(concreteTypes: ["Team"]) +} + +""" +Autogenerated return type of LinkProjectV2ToTeam +""" +type LinkProjectV2ToTeamPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The team the project is linked to + """ + team: Team +} + +""" +Autogenerated input type of LinkRepositoryToProject +""" +input LinkRepositoryToProjectInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to link to a Repository + """ + projectId: ID! @possibleTypes(concreteTypes: ["Project"]) + + """ + The ID of the Repository to link to a Project. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of LinkRepositoryToProject +""" +type LinkRepositoryToProjectPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The linked Project. + """ + project: Project + + """ + The linked Repository. + """ + repository: Repository +} + +""" +A branch linked to an issue. +""" +type LinkedBranch implements Node { + id: ID! + + """ + The branch's ref. + """ + ref: Ref +} + +""" +The connection type for LinkedBranch. +""" +type LinkedBranchConnection { + """ + A list of edges. + """ + edges: [LinkedBranchEdge] + + """ + A list of nodes. + """ + nodes: [LinkedBranch] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type LinkedBranchEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: LinkedBranch +} + +""" +Autogenerated input type of LockLockable +""" +input LockLockableInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A reason for why the item will be locked. + """ + lockReason: LockReason + + """ + ID of the item to be locked. + """ + lockableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Lockable") +} + +""" +Autogenerated return type of LockLockable +""" +type LockLockablePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item that was locked. + """ + lockedRecord: Lockable +} + +""" +The possible reasons that an issue or pull request was locked. +""" +enum LockReason { + """ + The issue or pull request was locked because the conversation was off-topic. + """ + OFF_TOPIC + + """ + The issue or pull request was locked because the conversation was resolved. + """ + RESOLVED + + """ + The issue or pull request was locked because the conversation was spam. + """ + SPAM + + """ + The issue or pull request was locked because the conversation was too heated. + """ + TOO_HEATED +} + +""" +An object that can be locked. +""" +interface Lockable { + """ + Reason that the conversation was locked. + """ + activeLockReason: LockReason + + """ + `true` if the object is locked + """ + locked: Boolean! +} + +""" +Represents a 'locked' event on a given issue or pull request. +""" +type LockedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Reason that the conversation was locked (optional). + """ + lockReason: LockReason + + """ + Object that was locked. + """ + lockable: Lockable! +} + +""" +A placeholder user for attribution of imported data on GitHub. +""" +type Mannequin implements Actor & Node & UniformResourceLocatable { + """ + A URL pointing to the GitHub App's public avatar. + """ + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + + """ + The user that has claimed the data attributed to this mannequin. + """ + claimant: User + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The mannequin's email on the source instance. + """ + email: String + id: ID! + + """ + The username of the actor. + """ + login: String! + + """ + The HTML path to this resource. + """ + resourcePath: URI! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The URL to this resource. + """ + url: URI! +} + +""" +The connection type for Mannequin. +""" +type MannequinConnection { + """ + A list of edges. + """ + edges: [MannequinEdge] + + """ + A list of nodes. + """ + nodes: [Mannequin] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +Represents a mannequin. +""" +type MannequinEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Mannequin +} + +""" +Ordering options for mannequins. +""" +input MannequinOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order mannequins by. + """ + field: MannequinOrderField! +} + +""" +Properties by which mannequins can be ordered. +""" +enum MannequinOrderField { + """ + Order mannequins why when they were created. + """ + CREATED_AT + + """ + Order mannequins alphabetically by their source login. + """ + LOGIN +} + +""" +Autogenerated input type of MarkDiscussionCommentAsAnswer +""" +input MarkDiscussionCommentAsAnswerInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion comment to mark as an answer. + """ + id: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of MarkDiscussionCommentAsAnswer +""" +type MarkDiscussionCommentAsAnswerPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that includes the chosen comment. + """ + discussion: Discussion +} + +""" +Autogenerated input type of MarkFileAsViewed +""" +input MarkFileAsViewedInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The path of the file to mark as viewed + """ + path: String! + + """ + The Node ID of the pull request. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of MarkFileAsViewed +""" +type MarkFileAsViewedPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated pull request. + """ + pullRequest: PullRequest +} + +""" +Autogenerated input type of MarkPullRequestReadyForReview +""" +input MarkPullRequestReadyForReviewInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the pull request to be marked as ready for review. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of MarkPullRequestReadyForReview +""" +type MarkPullRequestReadyForReviewPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that is ready for review. + """ + pullRequest: PullRequest +} + +""" +Represents a 'marked_as_duplicate' event on a given issue or pull request. +""" +type MarkedAsDuplicateEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + The authoritative issue or pull request which has been duplicated by another. + """ + canonical: IssueOrPullRequest + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The issue or pull request which has been marked as a duplicate of another. + """ + duplicate: IssueOrPullRequest + id: ID! + + """ + Canonical and duplicate belong to different repositories. + """ + isCrossRepository: Boolean! +} + +""" +A public description of a Marketplace category. +""" +type MarketplaceCategory implements Node { + """ + The category's description. + """ + description: String + + """ + The technical description of how apps listed in this category work with GitHub. + """ + howItWorks: String + id: ID! + + """ + The category's name. + """ + name: String! + + """ + How many Marketplace listings have this as their primary category. + """ + primaryListingCount: Int! + + """ + The HTTP path for this Marketplace category. + """ + resourcePath: URI! + + """ + How many Marketplace listings have this as their secondary category. + """ + secondaryListingCount: Int! + + """ + The short name of the category used in its URL. + """ + slug: String! + + """ + The HTTP URL for this Marketplace category. + """ + url: URI! +} + +""" +A listing in the GitHub integration marketplace. +""" +type MarketplaceListing implements Node { + """ + The GitHub App this listing represents. + """ + app: App + + """ + URL to the listing owner's company site. + """ + companyUrl: URI + + """ + The HTTP path for configuring access to the listing's integration or OAuth app + """ + configurationResourcePath: URI! + + """ + The HTTP URL for configuring access to the listing's integration or OAuth app + """ + configurationUrl: URI! + + """ + URL to the listing's documentation. + """ + documentationUrl: URI + + """ + The listing's detailed description. + """ + extendedDescription: String + + """ + The listing's detailed description rendered to HTML. + """ + extendedDescriptionHTML: HTML! + + """ + The listing's introductory description. + """ + fullDescription: String! + + """ + The listing's introductory description rendered to HTML. + """ + fullDescriptionHTML: HTML! + + """ + Does this listing have any plans with a free trial? + """ + hasPublishedFreeTrialPlans: Boolean! + + """ + Does this listing have a terms of service link? + """ + hasTermsOfService: Boolean! + + """ + Whether the creator of the app is a verified org + """ + hasVerifiedOwner: Boolean! + + """ + A technical description of how this app works with GitHub. + """ + howItWorks: String + + """ + The listing's technical description rendered to HTML. + """ + howItWorksHTML: HTML! + id: ID! + + """ + URL to install the product to the viewer's account or organization. + """ + installationUrl: URI + + """ + Whether this listing's app has been installed for the current viewer + """ + installedForViewer: Boolean! + + """ + Whether this listing has been removed from the Marketplace. + """ + isArchived: Boolean! + + """ + Whether this listing is still an editable draft that has not been submitted + for review and is not publicly visible in the Marketplace. + """ + isDraft: Boolean! + + """ + Whether the product this listing represents is available as part of a paid plan. + """ + isPaid: Boolean! + + """ + Whether this listing has been approved for display in the Marketplace. + """ + isPublic: Boolean! + + """ + Whether this listing has been rejected by GitHub for display in the Marketplace. + """ + isRejected: Boolean! + + """ + Whether this listing has been approved for unverified display in the Marketplace. + """ + isUnverified: Boolean! + + """ + Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace. + """ + isUnverifiedPending: Boolean! + + """ + Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + """ + isVerificationPendingFromDraft: Boolean! + + """ + Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + """ + isVerificationPendingFromUnverified: Boolean! + + """ + Whether this listing has been approved for verified display in the Marketplace. + """ + isVerified: Boolean! + + """ + The hex color code, without the leading '#', for the logo background. + """ + logoBackgroundColor: String! + + """ + URL for the listing's logo image. + """ + logoUrl( + """ + The size in pixels of the resulting square image. + """ + size: Int = 400 + ): URI + + """ + The listing's full name. + """ + name: String! + + """ + The listing's very short description without a trailing period or ampersands. + """ + normalizedShortDescription: String! + + """ + URL to the listing's detailed pricing. + """ + pricingUrl: URI + + """ + The category that best describes the listing. + """ + primaryCategory: MarketplaceCategory! + + """ + URL to the listing's privacy policy, may return an empty string for listings that do not require a privacy policy URL. + """ + privacyPolicyUrl: URI! + + """ + The HTTP path for the Marketplace listing. + """ + resourcePath: URI! + + """ + The URLs for the listing's screenshots. + """ + screenshotUrls: [String]! + + """ + An alternate category that describes the listing. + """ + secondaryCategory: MarketplaceCategory + + """ + The listing's very short description. + """ + shortDescription: String! + + """ + The short name of the listing used in its URL. + """ + slug: String! + + """ + URL to the listing's status page. + """ + statusUrl: URI + + """ + An email address for support for this listing's app. + """ + supportEmail: String + + """ + Either a URL or an email address for support for this listing's app, may + return an empty string for listings that do not require a support URL. + """ + supportUrl: URI! + + """ + URL to the listing's terms of service. + """ + termsOfServiceUrl: URI + + """ + The HTTP URL for the Marketplace listing. + """ + url: URI! + + """ + Can the current viewer add plans for this Marketplace listing. + """ + viewerCanAddPlans: Boolean! + + """ + Can the current viewer approve this Marketplace listing. + """ + viewerCanApprove: Boolean! + + """ + Can the current viewer delist this Marketplace listing. + """ + viewerCanDelist: Boolean! + + """ + Can the current viewer edit this Marketplace listing. + """ + viewerCanEdit: Boolean! + + """ + Can the current viewer edit the primary and secondary category of this + Marketplace listing. + """ + viewerCanEditCategories: Boolean! + + """ + Can the current viewer edit the plans for this Marketplace listing. + """ + viewerCanEditPlans: Boolean! + + """ + Can the current viewer return this Marketplace listing to draft state + so it becomes editable again. + """ + viewerCanRedraft: Boolean! + + """ + Can the current viewer reject this Marketplace listing by returning it to + an editable draft state or rejecting it entirely. + """ + viewerCanReject: Boolean! + + """ + Can the current viewer request this listing be reviewed for display in + the Marketplace as verified. + """ + viewerCanRequestApproval: Boolean! + + """ + Indicates whether the current user has an active subscription to this Marketplace listing. + """ + viewerHasPurchased: Boolean! + + """ + Indicates if the current user has purchased a subscription to this Marketplace listing + for all of the organizations the user owns. + """ + viewerHasPurchasedForAllOrganizations: Boolean! + + """ + Does the current viewer role allow them to administer this Marketplace listing. + """ + viewerIsListingAdmin: Boolean! +} + +""" +Look up Marketplace Listings +""" +type MarketplaceListingConnection { + """ + A list of edges. + """ + edges: [MarketplaceListingEdge] + + """ + A list of nodes. + """ + nodes: [MarketplaceListing] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type MarketplaceListingEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: MarketplaceListing +} + +""" +Entities that have members who can set status messages. +""" +interface MemberStatusable { + """ + Get the status messages members of this entity have set that are either public or visible only to the organization. + """ + memberStatuses( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for user statuses returned from the connection. + """ + orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} + ): UserStatusConnection! +} + +""" +Audit log entry for a members_can_delete_repos.clear event. +""" +type MembersCanDeleteReposClearAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a members_can_delete_repos.disable event. +""" +type MembersCanDeleteReposDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a members_can_delete_repos.enable event. +""" +type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Represents a 'mentioned' event on a given issue or pull request. +""" +type MentionedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! +} + +""" +Autogenerated input type of MergeBranch +""" +input MergeBranchInput { + """ + The email address to associate with this commit. + """ + authorEmail: String + + """ + The name of the base branch that the provided head will be merged into. + """ + base: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Message to use for the merge commit. If omitted, a default will be used. + """ + commitMessage: String + + """ + The head to merge into the base branch. This can be a branch name or a commit GitObjectID. + """ + head: String! + + """ + The Node ID of the Repository containing the base branch that will be modified. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of MergeBranch +""" +type MergeBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The resulting merge Commit. + """ + mergeCommit: Commit +} + +""" +The possible default commit messages for merges. +""" +enum MergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the pull request's body. + """ + PR_BODY + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +The possible default commit titles for merges. +""" +enum MergeCommitTitle { + """ + Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). + """ + MERGE_MESSAGE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +Autogenerated input type of MergePullRequest +""" +input MergePullRequestInput { + """ + The email address to associate with this merge. + """ + authorEmail: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Commit body to use for the merge commit; if omitted, a default message will be used + """ + commitBody: String + + """ + Commit headline to use for the merge commit; if omitted, a default message will be used. + """ + commitHeadline: String + + """ + OID that the pull request head ref must match to allow merge; if omitted, no check is performed. + """ + expectedHeadOid: GitObjectID + + """ + The merge method to use. If omitted, defaults to 'MERGE' + """ + mergeMethod: PullRequestMergeMethod = MERGE + + """ + ID of the pull request to be merged. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of MergePullRequest +""" +type MergePullRequestPayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that was merged. + """ + pullRequest: PullRequest +} + +""" +Detailed status information about a pull request merge. +""" +enum MergeStateStatus { + """ + The head ref is out of date. + """ + BEHIND + + """ + The merge is blocked. + """ + BLOCKED + + """ + Mergeable and passing commit status. + """ + CLEAN + + """ + The merge commit cannot be cleanly created. + """ + DIRTY + + """ + The merge is blocked due to the pull request being a draft. + """ + DRAFT + @deprecated( + reason: "DRAFT state will be removed from this enum and `isDraft` should be used instead Use PullRequest.isDraft instead. Removal on 2021-01-01 UTC." + ) + + """ + Mergeable with passing commit status and pre-receive hooks. + """ + HAS_HOOKS + + """ + The state cannot currently be determined. + """ + UNKNOWN + + """ + Mergeable with non-passing commit status. + """ + UNSTABLE +} + +""" +Whether or not a PullRequest can be merged. +""" +enum MergeableState { + """ + The pull request cannot be merged due to merge conflicts. + """ + CONFLICTING + + """ + The pull request can be merged. + """ + MERGEABLE + + """ + The mergeability of the pull request is still being calculated. + """ + UNKNOWN +} + +""" +Represents a 'merged' event on a given pull request. +""" +type MergedEvent implements Node & UniformResourceLocatable { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the commit associated with the `merge` event. + """ + commit: Commit + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Identifies the Ref associated with the `merge` event. + """ + mergeRef: Ref + + """ + Identifies the name of the Ref associated with the `merge` event. + """ + mergeRefName: String! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! + + """ + The HTTP path for this merged event. + """ + resourcePath: URI! + + """ + The HTTP URL for this merged event. + """ + url: URI! +} + +""" +Represents a GitHub Enterprise Importer (GEI) migration. +""" +interface Migration { + """ + The migration flag to continue on error. + """ + continueOnError: Boolean! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: String + + """ + The reason the migration failed. + """ + failureReason: String + id: ID! + + """ + The URL for the migration log (expires 1 day after migration completes). + """ + migrationLogUrl: URI + + """ + The migration source. + """ + migrationSource: MigrationSource! + + """ + The target repository name. + """ + repositoryName: String! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + sourceUrl: URI! + + """ + The migration state. + """ + state: MigrationState! +} + +""" +A GitHub Enterprise Importer (GEI) migration source. +""" +type MigrationSource implements Node { + id: ID! + + """ + The migration source name. + """ + name: String! + + """ + The migration source type. + """ + type: MigrationSourceType! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + url: URI! +} + +""" +Represents the different GitHub Enterprise Importer (GEI) migration sources. +""" +enum MigrationSourceType { + """ + An Azure DevOps migration source. + """ + AZURE_DEVOPS + + """ + A Bitbucket Server migration source. + """ + BITBUCKET_SERVER + + """ + A GitHub Migration API source. + """ + GITHUB_ARCHIVE +} + +""" +The GitHub Enterprise Importer (GEI) migration state. +""" +enum MigrationState { + """ + The migration has failed. + """ + FAILED + + """ + The migration has invalid credentials. + """ + FAILED_VALIDATION + + """ + The migration is in progress. + """ + IN_PROGRESS + + """ + The migration has not started. + """ + NOT_STARTED + + """ + The migration needs to have its credentials validated. + """ + PENDING_VALIDATION + + """ + The migration has been queued. + """ + QUEUED + + """ + The migration has succeeded. + """ + SUCCEEDED +} + +""" +Represents a Milestone object on a given repository. +""" +type Milestone implements Closable & Node & UniformResourceLocatable { + """ + Indicates if the object is closed (definition of closed may depend on type) + """ + closed: Boolean! + + """ + Identifies the date and time when the object was closed. + """ + closedAt: DateTime + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the actor who created the milestone. + """ + creator: Actor + + """ + Identifies the description of the milestone. + """ + description: String + + """ + Identifies the due date of the milestone. + """ + dueOn: DateTime + id: ID! + + """ + A list of issues associated with the milestone. + """ + issues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for issues returned from the connection. + """ + filterBy: IssueFilters + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issues returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! + + """ + Identifies the number of the milestone. + """ + number: Int! + + """ + Identifies the percentage complete for the milestone + """ + progressPercentage: Float! + + """ + A list of pull requests associated with the milestone. + """ + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! + + """ + The repository associated with this milestone. + """ + repository: Repository! + + """ + The HTTP path for this milestone + """ + resourcePath: URI! + + """ + Identifies the state of the milestone. + """ + state: MilestoneState! + + """ + Identifies the title of the milestone. + """ + title: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this milestone + """ + url: URI! +} + +""" +The connection type for Milestone. +""" +type MilestoneConnection { + """ + A list of edges. + """ + edges: [MilestoneEdge] + + """ + A list of nodes. + """ + nodes: [Milestone] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type MilestoneEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Milestone +} + +""" +Types that can be inside a Milestone. +""" +union MilestoneItem = Issue | PullRequest + +""" +Ordering options for milestone connections. +""" +input MilestoneOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order milestones by. + """ + field: MilestoneOrderField! +} + +""" +Properties by which milestone connections can be ordered. +""" +enum MilestoneOrderField { + """ + Order milestones by when they were created. + """ + CREATED_AT + + """ + Order milestones by when they are due. + """ + DUE_DATE + + """ + Order milestones by their number. + """ + NUMBER + + """ + Order milestones by when they were last updated. + """ + UPDATED_AT +} + +""" +The possible states of a milestone. +""" +enum MilestoneState { + """ + A milestone that has been closed. + """ + CLOSED + + """ + A milestone that is still open. + """ + OPEN +} + +""" +Represents a 'milestoned' event on a given issue or pull request. +""" +type MilestonedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Identifies the milestone title associated with the 'milestoned' event. + """ + milestoneTitle: String! + + """ + Object referenced by event. + """ + subject: MilestoneItem! +} + +""" +Entities that can be minimized. +""" +interface Minimizable { + """ + Returns whether or not a comment has been minimized. + """ + isMinimized: Boolean! + + """ + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. + """ + minimizedReason: String + + """ + Check if the current viewer can minimize this object. + """ + viewerCanMinimize: Boolean! +} + +""" +Autogenerated input type of MinimizeComment +""" +input MinimizeCommentInput { + """ + The classification of comment + """ + classifier: ReportedContentClassifiers! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the subject to modify. + """ + subjectId: ID! + @possibleTypes( + concreteTypes: ["CommitComment", "DiscussionComment", "GistComment", "IssueComment", "PullRequestReviewComment"] + abstractType: "Minimizable" + ) +} + +""" +Autogenerated return type of MinimizeComment +""" +type MinimizeCommentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The comment that was minimized. + """ + minimizedComment: Minimizable +} + +""" +Autogenerated input type of MoveProjectCard +""" +input MoveProjectCardInput { + """ + Place the new card after the card with this id. Pass null to place it at the top. + """ + afterCardId: ID @possibleTypes(concreteTypes: ["ProjectCard"]) + + """ + The id of the card to move. + """ + cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the column to move it into. + """ + columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) +} + +""" +Autogenerated return type of MoveProjectCard +""" +type MoveProjectCardPayload { + """ + The new edge of the moved card. + """ + cardEdge: ProjectCardEdge + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated input type of MoveProjectColumn +""" +input MoveProjectColumnInput { + """ + Place the new column after the column with this id. Pass null to place it at the front. + """ + afterColumnId: ID @possibleTypes(concreteTypes: ["ProjectColumn"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the column to move. + """ + columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) +} + +""" +Autogenerated return type of MoveProjectColumn +""" +type MoveProjectColumnPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new edge of the moved column. + """ + columnEdge: ProjectColumnEdge +} + +""" +Represents a 'moved_columns_in_project' event on a given issue or pull request. +""" +type MovedColumnsInProjectEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + Column name the issue or pull request was moved from. + """ + previousProjectColumnName: String! @preview(toggledBy: "starfox-preview") + + """ + Project referenced by event. + """ + project: Project @preview(toggledBy: "starfox-preview") + + """ + Project card referenced by this project event. + """ + projectCard: ProjectCard @preview(toggledBy: "starfox-preview") + + """ + Column name the issue or pull request was moved to. + """ + projectColumnName: String! @preview(toggledBy: "starfox-preview") +} + +""" +The root query for implementing GraphQL mutations. +""" +type Mutation { + """ + Clear all of a customer's queued migrations + """ + abortQueuedMigrations( + """ + Parameters for AbortQueuedMigrations + """ + input: AbortQueuedMigrationsInput! + ): AbortQueuedMigrationsPayload + + """ + Accepts a pending invitation for a user to become an administrator of an enterprise. + """ + acceptEnterpriseAdministratorInvitation( + """ + Parameters for AcceptEnterpriseAdministratorInvitation + """ + input: AcceptEnterpriseAdministratorInvitationInput! + ): AcceptEnterpriseAdministratorInvitationPayload + + """ + Applies a suggested topic to the repository. + """ + acceptTopicSuggestion( + """ + Parameters for AcceptTopicSuggestion + """ + input: AcceptTopicSuggestionInput! + ): AcceptTopicSuggestionPayload + + """ + Adds assignees to an assignable object. + """ + addAssigneesToAssignable( + """ + Parameters for AddAssigneesToAssignable + """ + input: AddAssigneesToAssignableInput! + ): AddAssigneesToAssignablePayload + + """ + Adds a comment to an Issue or Pull Request. + """ + addComment( + """ + Parameters for AddComment + """ + input: AddCommentInput! + ): AddCommentPayload + + """ + Adds a comment to a Discussion, possibly as a reply to another comment. + """ + addDiscussionComment( + """ + Parameters for AddDiscussionComment + """ + input: AddDiscussionCommentInput! + ): AddDiscussionCommentPayload + + """ + Vote for an option in a discussion poll. + """ + addDiscussionPollVote( + """ + Parameters for AddDiscussionPollVote + """ + input: AddDiscussionPollVoteInput! + ): AddDiscussionPollVotePayload + + """ + Adds enterprise members to an organization within the enterprise. + """ + addEnterpriseOrganizationMember( + """ + Parameters for AddEnterpriseOrganizationMember + """ + input: AddEnterpriseOrganizationMemberInput! + ): AddEnterpriseOrganizationMemberPayload + + """ + Adds a support entitlement to an enterprise member. + """ + addEnterpriseSupportEntitlement( + """ + Parameters for AddEnterpriseSupportEntitlement + """ + input: AddEnterpriseSupportEntitlementInput! + ): AddEnterpriseSupportEntitlementPayload + + """ + Adds labels to a labelable object. + """ + addLabelsToLabelable( + """ + Parameters for AddLabelsToLabelable + """ + input: AddLabelsToLabelableInput! + ): AddLabelsToLabelablePayload + + """ + Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. + """ + addProjectCard( + """ + Parameters for AddProjectCard + """ + input: AddProjectCardInput! + ): AddProjectCardPayload + + """ + Adds a column to a Project. + """ + addProjectColumn( + """ + Parameters for AddProjectColumn + """ + input: AddProjectColumnInput! + ): AddProjectColumnPayload + + """ + Creates a new draft issue and add it to a Project. + """ + addProjectV2DraftIssue( + """ + Parameters for AddProjectV2DraftIssue + """ + input: AddProjectV2DraftIssueInput! + ): AddProjectV2DraftIssuePayload + + """ + Links an existing content instance to a Project. + """ + addProjectV2ItemById( + """ + Parameters for AddProjectV2ItemById + """ + input: AddProjectV2ItemByIdInput! + ): AddProjectV2ItemByIdPayload + + """ + Adds a review to a Pull Request. + """ + addPullRequestReview( + """ + Parameters for AddPullRequestReview + """ + input: AddPullRequestReviewInput! + ): AddPullRequestReviewPayload + + """ + Adds a comment to a review. + """ + addPullRequestReviewComment( + """ + Parameters for AddPullRequestReviewComment + """ + input: AddPullRequestReviewCommentInput! + ): AddPullRequestReviewCommentPayload + + """ + Adds a new thread to a pending Pull Request Review. + """ + addPullRequestReviewThread( + """ + Parameters for AddPullRequestReviewThread + """ + input: AddPullRequestReviewThreadInput! + ): AddPullRequestReviewThreadPayload + + """ + Adds a reaction to a subject. + """ + addReaction( + """ + Parameters for AddReaction + """ + input: AddReactionInput! + ): AddReactionPayload + + """ + Adds a star to a Starrable. + """ + addStar( + """ + Parameters for AddStar + """ + input: AddStarInput! + ): AddStarPayload + + """ + Add an upvote to a discussion or discussion comment. + """ + addUpvote( + """ + Parameters for AddUpvote + """ + input: AddUpvoteInput! + ): AddUpvotePayload + + """ + Adds a verifiable domain to an owning account. + """ + addVerifiableDomain( + """ + Parameters for AddVerifiableDomain + """ + input: AddVerifiableDomainInput! + ): AddVerifiableDomainPayload + + """ + Approve all pending deployments under one or more environments + """ + approveDeployments( + """ + Parameters for ApproveDeployments + """ + input: ApproveDeploymentsInput! + ): ApproveDeploymentsPayload + + """ + Approve a verifiable domain for notification delivery. + """ + approveVerifiableDomain( + """ + Parameters for ApproveVerifiableDomain + """ + input: ApproveVerifiableDomainInput! + ): ApproveVerifiableDomainPayload + + """ + Archives a ProjectV2Item + """ + archiveProjectV2Item( + """ + Parameters for ArchiveProjectV2Item + """ + input: ArchiveProjectV2ItemInput! + ): ArchiveProjectV2ItemPayload + + """ + Marks a repository as archived. + """ + archiveRepository( + """ + Parameters for ArchiveRepository + """ + input: ArchiveRepositoryInput! + ): ArchiveRepositoryPayload + + """ + Cancels a pending invitation for an administrator to join an enterprise. + """ + cancelEnterpriseAdminInvitation( + """ + Parameters for CancelEnterpriseAdminInvitation + """ + input: CancelEnterpriseAdminInvitationInput! + ): CancelEnterpriseAdminInvitationPayload + + """ + Cancel an active sponsorship. + """ + cancelSponsorship( + """ + Parameters for CancelSponsorship + """ + input: CancelSponsorshipInput! + ): CancelSponsorshipPayload + + """ + Update your status on GitHub. + """ + changeUserStatus( + """ + Parameters for ChangeUserStatus + """ + input: ChangeUserStatusInput! + ): ChangeUserStatusPayload + + """ + Clears all labels from a labelable object. + """ + clearLabelsFromLabelable( + """ + Parameters for ClearLabelsFromLabelable + """ + input: ClearLabelsFromLabelableInput! + ): ClearLabelsFromLabelablePayload + + """ + This mutation clears the value of a field for an item in a Project. Currently + only text, number, date, assignees, labels, single-select, iteration and + milestone fields are supported. + """ + clearProjectV2ItemFieldValue( + """ + Parameters for ClearProjectV2ItemFieldValue + """ + input: ClearProjectV2ItemFieldValueInput! + ): ClearProjectV2ItemFieldValuePayload + + """ + Creates a new project by cloning configuration from an existing project. + """ + cloneProject( + """ + Parameters for CloneProject + """ + input: CloneProjectInput! + ): CloneProjectPayload + + """ + Create a new repository with the same files and directory structure as a template repository. + """ + cloneTemplateRepository( + """ + Parameters for CloneTemplateRepository + """ + input: CloneTemplateRepositoryInput! + ): CloneTemplateRepositoryPayload + + """ + Close an issue. + """ + closeIssue( + """ + Parameters for CloseIssue + """ + input: CloseIssueInput! + ): CloseIssuePayload + + """ + Close a pull request. + """ + closePullRequest( + """ + Parameters for ClosePullRequest + """ + input: ClosePullRequestInput! + ): ClosePullRequestPayload + + """ + Convert a project note card to one associated with a newly created issue. + """ + convertProjectCardNoteToIssue( + """ + Parameters for ConvertProjectCardNoteToIssue + """ + input: ConvertProjectCardNoteToIssueInput! + ): ConvertProjectCardNoteToIssuePayload + + """ + Converts a pull request to draft + """ + convertPullRequestToDraft( + """ + Parameters for ConvertPullRequestToDraft + """ + input: ConvertPullRequestToDraftInput! + ): ConvertPullRequestToDraftPayload + + """ + Copy a project. + """ + copyProjectV2( + """ + Parameters for CopyProjectV2 + """ + input: CopyProjectV2Input! + ): CopyProjectV2Payload + + """ + Invites a user to claim reattributable data + """ + createAttributionInvitation( + """ + Parameters for CreateAttributionInvitation + """ + input: CreateAttributionInvitationInput! + ): CreateAttributionInvitationPayload + + """ + Create a new branch protection rule + """ + createBranchProtectionRule( + """ + Parameters for CreateBranchProtectionRule + """ + input: CreateBranchProtectionRuleInput! + ): CreateBranchProtectionRulePayload + + """ + Create a check run. + """ + createCheckRun( + """ + Parameters for CreateCheckRun + """ + input: CreateCheckRunInput! + ): CreateCheckRunPayload + + """ + Create a check suite + """ + createCheckSuite( + """ + Parameters for CreateCheckSuite + """ + input: CreateCheckSuiteInput! + ): CreateCheckSuitePayload + + """ + Appends a commit to the given branch as the authenticated user. + + This mutation creates a commit whose parent is the HEAD of the provided + branch and also updates that branch to point to the new commit. + It can be thought of as similar to `git commit`. + + ### Locating a Branch + + Commits are appended to a `branch` of type `Ref`. + This must refer to a git branch (i.e. the fully qualified path must + begin with `refs/heads/`, although including this prefix is optional. + + Callers may specify the `branch` to commit to either by its global node + ID or by passing both of `repositoryNameWithOwner` and `refName`. For + more details see the documentation for `CommittableBranch`. + + ### Describing Changes + + `fileChanges` are specified as a `FilesChanges` object describing + `FileAdditions` and `FileDeletions`. + + Please see the documentation for `FileChanges` for more information on + how to use this argument to describe any set of file changes. + + ### Authorship + + Similar to the web commit interface, this mutation does not support + specifying the author or committer of the commit and will not add + support for this in the future. + + A commit created by a successful execution of this mutation will be + authored by the owner of the credential which authenticates the API + request. The committer will be identical to that of commits authored + using the web interface. + + If you need full control over author and committer information, please + use the Git Database REST API instead. + + ### Commit Signing + + Commits made using this mutation are automatically signed by GitHub if + supported and will be marked as verified in the user interface. + """ + createCommitOnBranch( + """ + Parameters for CreateCommitOnBranch + """ + input: CreateCommitOnBranchInput! + ): CreateCommitOnBranchPayload + + """ + Creates a new deployment event. + """ + createDeployment( + """ + Parameters for CreateDeployment + """ + input: CreateDeploymentInput! + ): CreateDeploymentPayload @preview(toggledBy: "flash-preview") + + """ + Create a deployment status. + """ + createDeploymentStatus( + """ + Parameters for CreateDeploymentStatus + """ + input: CreateDeploymentStatusInput! + ): CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") + + """ + Create a discussion. + """ + createDiscussion( + """ + Parameters for CreateDiscussion + """ + input: CreateDiscussionInput! + ): CreateDiscussionPayload + + """ + Creates an organization as part of an enterprise account. + """ + createEnterpriseOrganization( + """ + Parameters for CreateEnterpriseOrganization + """ + input: CreateEnterpriseOrganizationInput! + ): CreateEnterpriseOrganizationPayload + + """ + Creates an environment or simply returns it if already exists. + """ + createEnvironment( + """ + Parameters for CreateEnvironment + """ + input: CreateEnvironmentInput! + ): CreateEnvironmentPayload + + """ + Creates a new IP allow list entry. + """ + createIpAllowListEntry( + """ + Parameters for CreateIpAllowListEntry + """ + input: CreateIpAllowListEntryInput! + ): CreateIpAllowListEntryPayload + + """ + Creates a new issue. + """ + createIssue( + """ + Parameters for CreateIssue + """ + input: CreateIssueInput! + ): CreateIssuePayload + + """ + Creates a new label. + """ + createLabel( + """ + Parameters for CreateLabel + """ + input: CreateLabelInput! + ): CreateLabelPayload @preview(toggledBy: "bane-preview") + + """ + Create a branch linked to an issue. + """ + createLinkedBranch( + """ + Parameters for CreateLinkedBranch + """ + input: CreateLinkedBranchInput! + ): CreateLinkedBranchPayload + + """ + Creates a GitHub Enterprise Importer (GEI) migration source. + """ + createMigrationSource( + """ + Parameters for CreateMigrationSource + """ + input: CreateMigrationSourceInput! + ): CreateMigrationSourcePayload + + """ + Creates a new project. + """ + createProject( + """ + Parameters for CreateProject + """ + input: CreateProjectInput! + ): CreateProjectPayload + + """ + Creates a new project. + """ + createProjectV2( + """ + Parameters for CreateProjectV2 + """ + input: CreateProjectV2Input! + ): CreateProjectV2Payload + + """ + Create a new project field. + """ + createProjectV2Field( + """ + Parameters for CreateProjectV2Field + """ + input: CreateProjectV2FieldInput! + ): CreateProjectV2FieldPayload + + """ + Create a new pull request + """ + createPullRequest( + """ + Parameters for CreatePullRequest + """ + input: CreatePullRequestInput! + ): CreatePullRequestPayload + + """ + Create a new Git Ref. + """ + createRef( + """ + Parameters for CreateRef + """ + input: CreateRefInput! + ): CreateRefPayload + + """ + Create a new repository. + """ + createRepository( + """ + Parameters for CreateRepository + """ + input: CreateRepositoryInput! + ): CreateRepositoryPayload + + """ + Create a GitHub Sponsors profile to allow others to sponsor you or your organization. + """ + createSponsorsListing( + """ + Parameters for CreateSponsorsListing + """ + input: CreateSponsorsListingInput! + ): CreateSponsorsListingPayload + + """ + Create a new payment tier for your GitHub Sponsors profile. + """ + createSponsorsTier( + """ + Parameters for CreateSponsorsTier + """ + input: CreateSponsorsTierInput! + ): CreateSponsorsTierPayload + + """ + Start a new sponsorship of a maintainer in GitHub Sponsors, or reactivate a past sponsorship. + """ + createSponsorship( + """ + Parameters for CreateSponsorship + """ + input: CreateSponsorshipInput! + ): CreateSponsorshipPayload + + """ + Creates a new team discussion. + """ + createTeamDiscussion( + """ + Parameters for CreateTeamDiscussion + """ + input: CreateTeamDiscussionInput! + ): CreateTeamDiscussionPayload + + """ + Creates a new team discussion comment. + """ + createTeamDiscussionComment( + """ + Parameters for CreateTeamDiscussionComment + """ + input: CreateTeamDiscussionCommentInput! + ): CreateTeamDiscussionCommentPayload + + """ + Rejects a suggested topic for the repository. + """ + declineTopicSuggestion( + """ + Parameters for DeclineTopicSuggestion + """ + input: DeclineTopicSuggestionInput! + ): DeclineTopicSuggestionPayload + + """ + Delete a branch protection rule + """ + deleteBranchProtectionRule( + """ + Parameters for DeleteBranchProtectionRule + """ + input: DeleteBranchProtectionRuleInput! + ): DeleteBranchProtectionRulePayload + + """ + Deletes a deployment. + """ + deleteDeployment( + """ + Parameters for DeleteDeployment + """ + input: DeleteDeploymentInput! + ): DeleteDeploymentPayload + + """ + Delete a discussion and all of its replies. + """ + deleteDiscussion( + """ + Parameters for DeleteDiscussion + """ + input: DeleteDiscussionInput! + ): DeleteDiscussionPayload + + """ + Delete a discussion comment. If it has replies, wipe it instead. + """ + deleteDiscussionComment( + """ + Parameters for DeleteDiscussionComment + """ + input: DeleteDiscussionCommentInput! + ): DeleteDiscussionCommentPayload + + """ + Deletes an environment + """ + deleteEnvironment( + """ + Parameters for DeleteEnvironment + """ + input: DeleteEnvironmentInput! + ): DeleteEnvironmentPayload + + """ + Deletes an IP allow list entry. + """ + deleteIpAllowListEntry( + """ + Parameters for DeleteIpAllowListEntry + """ + input: DeleteIpAllowListEntryInput! + ): DeleteIpAllowListEntryPayload + + """ + Deletes an Issue object. + """ + deleteIssue( + """ + Parameters for DeleteIssue + """ + input: DeleteIssueInput! + ): DeleteIssuePayload + + """ + Deletes an IssueComment object. + """ + deleteIssueComment( + """ + Parameters for DeleteIssueComment + """ + input: DeleteIssueCommentInput! + ): DeleteIssueCommentPayload + + """ + Deletes a label. + """ + deleteLabel( + """ + Parameters for DeleteLabel + """ + input: DeleteLabelInput! + ): DeleteLabelPayload @preview(toggledBy: "bane-preview") + + """ + Unlink a branch from an issue. + """ + deleteLinkedBranch( + """ + Parameters for DeleteLinkedBranch + """ + input: DeleteLinkedBranchInput! + ): DeleteLinkedBranchPayload + + """ + Delete a package version. + """ + deletePackageVersion( + """ + Parameters for DeletePackageVersion + """ + input: DeletePackageVersionInput! + ): DeletePackageVersionPayload @preview(toggledBy: "package-deletes-preview") + + """ + Deletes a project. + """ + deleteProject( + """ + Parameters for DeleteProject + """ + input: DeleteProjectInput! + ): DeleteProjectPayload + + """ + Deletes a project card. + """ + deleteProjectCard( + """ + Parameters for DeleteProjectCard + """ + input: DeleteProjectCardInput! + ): DeleteProjectCardPayload + + """ + Deletes a project column. + """ + deleteProjectColumn( + """ + Parameters for DeleteProjectColumn + """ + input: DeleteProjectColumnInput! + ): DeleteProjectColumnPayload + + """ + Delete a project. + """ + deleteProjectV2( + """ + Parameters for DeleteProjectV2 + """ + input: DeleteProjectV2Input! + ): DeleteProjectV2Payload + + """ + Delete a project field. + """ + deleteProjectV2Field( + """ + Parameters for DeleteProjectV2Field + """ + input: DeleteProjectV2FieldInput! + ): DeleteProjectV2FieldPayload + + """ + Deletes an item from a Project. + """ + deleteProjectV2Item( + """ + Parameters for DeleteProjectV2Item + """ + input: DeleteProjectV2ItemInput! + ): DeleteProjectV2ItemPayload + + """ + Deletes a pull request review. + """ + deletePullRequestReview( + """ + Parameters for DeletePullRequestReview + """ + input: DeletePullRequestReviewInput! + ): DeletePullRequestReviewPayload + + """ + Deletes a pull request review comment. + """ + deletePullRequestReviewComment( + """ + Parameters for DeletePullRequestReviewComment + """ + input: DeletePullRequestReviewCommentInput! + ): DeletePullRequestReviewCommentPayload + + """ + Delete a Git Ref. + """ + deleteRef( + """ + Parameters for DeleteRef + """ + input: DeleteRefInput! + ): DeleteRefPayload + + """ + Deletes a team discussion. + """ + deleteTeamDiscussion( + """ + Parameters for DeleteTeamDiscussion + """ + input: DeleteTeamDiscussionInput! + ): DeleteTeamDiscussionPayload + + """ + Deletes a team discussion comment. + """ + deleteTeamDiscussionComment( + """ + Parameters for DeleteTeamDiscussionComment + """ + input: DeleteTeamDiscussionCommentInput! + ): DeleteTeamDiscussionCommentPayload + + """ + Deletes a verifiable domain. + """ + deleteVerifiableDomain( + """ + Parameters for DeleteVerifiableDomain + """ + input: DeleteVerifiableDomainInput! + ): DeleteVerifiableDomainPayload + + """ + Disable auto merge on the given pull request + """ + disablePullRequestAutoMerge( + """ + Parameters for DisablePullRequestAutoMerge + """ + input: DisablePullRequestAutoMergeInput! + ): DisablePullRequestAutoMergePayload + + """ + Dismisses an approved or rejected pull request review. + """ + dismissPullRequestReview( + """ + Parameters for DismissPullRequestReview + """ + input: DismissPullRequestReviewInput! + ): DismissPullRequestReviewPayload + + """ + Dismisses the Dependabot alert. + """ + dismissRepositoryVulnerabilityAlert( + """ + Parameters for DismissRepositoryVulnerabilityAlert + """ + input: DismissRepositoryVulnerabilityAlertInput! + ): DismissRepositoryVulnerabilityAlertPayload + + """ + Enable the default auto-merge on a pull request. + """ + enablePullRequestAutoMerge( + """ + Parameters for EnablePullRequestAutoMerge + """ + input: EnablePullRequestAutoMergeInput! + ): EnablePullRequestAutoMergePayload + + """ + Follow an organization. + """ + followOrganization( + """ + Parameters for FollowOrganization + """ + input: FollowOrganizationInput! + ): FollowOrganizationPayload + + """ + Follow a user. + """ + followUser( + """ + Parameters for FollowUser + """ + input: FollowUserInput! + ): FollowUserPayload + + """ + Grant the migrator role to a user for all organizations under an enterprise account. + """ + grantEnterpriseOrganizationsMigratorRole( + """ + Parameters for GrantEnterpriseOrganizationsMigratorRole + """ + input: GrantEnterpriseOrganizationsMigratorRoleInput! + ): GrantEnterpriseOrganizationsMigratorRolePayload + + """ + Grant the migrator role to a user or a team. + """ + grantMigratorRole( + """ + Parameters for GrantMigratorRole + """ + input: GrantMigratorRoleInput! + ): GrantMigratorRolePayload + + """ + Creates a new project by importing columns and a list of issues/PRs. + """ + importProject( + """ + Parameters for ImportProject + """ + input: ImportProjectInput! + ): ImportProjectPayload @preview(toggledBy: "slothette-preview") + + """ + Invite someone to become an administrator of the enterprise. + """ + inviteEnterpriseAdmin( + """ + Parameters for InviteEnterpriseAdmin + """ + input: InviteEnterpriseAdminInput! + ): InviteEnterpriseAdminPayload + + """ + Links a project to a repository. + """ + linkProjectV2ToRepository( + """ + Parameters for LinkProjectV2ToRepository + """ + input: LinkProjectV2ToRepositoryInput! + ): LinkProjectV2ToRepositoryPayload + + """ + Links a project to a team. + """ + linkProjectV2ToTeam( + """ + Parameters for LinkProjectV2ToTeam + """ + input: LinkProjectV2ToTeamInput! + ): LinkProjectV2ToTeamPayload + + """ + Creates a repository link for a project. + """ + linkRepositoryToProject( + """ + Parameters for LinkRepositoryToProject + """ + input: LinkRepositoryToProjectInput! + ): LinkRepositoryToProjectPayload + + """ + Lock a lockable object + """ + lockLockable( + """ + Parameters for LockLockable + """ + input: LockLockableInput! + ): LockLockablePayload + + """ + Mark a discussion comment as the chosen answer for discussions in an answerable category. + """ + markDiscussionCommentAsAnswer( + """ + Parameters for MarkDiscussionCommentAsAnswer + """ + input: MarkDiscussionCommentAsAnswerInput! + ): MarkDiscussionCommentAsAnswerPayload + + """ + Mark a pull request file as viewed + """ + markFileAsViewed( + """ + Parameters for MarkFileAsViewed + """ + input: MarkFileAsViewedInput! + ): MarkFileAsViewedPayload + + """ + Marks a pull request ready for review. + """ + markPullRequestReadyForReview( + """ + Parameters for MarkPullRequestReadyForReview + """ + input: MarkPullRequestReadyForReviewInput! + ): MarkPullRequestReadyForReviewPayload + + """ + Merge a head into a branch. + """ + mergeBranch( + """ + Parameters for MergeBranch + """ + input: MergeBranchInput! + ): MergeBranchPayload + + """ + Merge a pull request. + """ + mergePullRequest( + """ + Parameters for MergePullRequest + """ + input: MergePullRequestInput! + ): MergePullRequestPayload + + """ + Minimizes a comment on an Issue, Commit, Pull Request, or Gist + """ + minimizeComment( + """ + Parameters for MinimizeComment + """ + input: MinimizeCommentInput! + ): MinimizeCommentPayload + + """ + Moves a project card to another place. + """ + moveProjectCard( + """ + Parameters for MoveProjectCard + """ + input: MoveProjectCardInput! + ): MoveProjectCardPayload + + """ + Moves a project column to another place. + """ + moveProjectColumn( + """ + Parameters for MoveProjectColumn + """ + input: MoveProjectColumnInput! + ): MoveProjectColumnPayload + + """ + Pin an issue to a repository + """ + pinIssue( + """ + Parameters for PinIssue + """ + input: PinIssueInput! + ): PinIssuePayload + + """ + Publish an existing sponsorship tier that is currently still a draft to a GitHub Sponsors profile. + """ + publishSponsorsTier( + """ + Parameters for PublishSponsorsTier + """ + input: PublishSponsorsTierInput! + ): PublishSponsorsTierPayload + + """ + Regenerates the identity provider recovery codes for an enterprise + """ + regenerateEnterpriseIdentityProviderRecoveryCodes( + """ + Parameters for RegenerateEnterpriseIdentityProviderRecoveryCodes + """ + input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput! + ): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload + + """ + Regenerates a verifiable domain's verification token. + """ + regenerateVerifiableDomainToken( + """ + Parameters for RegenerateVerifiableDomainToken + """ + input: RegenerateVerifiableDomainTokenInput! + ): RegenerateVerifiableDomainTokenPayload + + """ + Reject all pending deployments under one or more environments + """ + rejectDeployments( + """ + Parameters for RejectDeployments + """ + input: RejectDeploymentsInput! + ): RejectDeploymentsPayload + + """ + Removes assignees from an assignable object. + """ + removeAssigneesFromAssignable( + """ + Parameters for RemoveAssigneesFromAssignable + """ + input: RemoveAssigneesFromAssignableInput! + ): RemoveAssigneesFromAssignablePayload + + """ + Removes an administrator from the enterprise. + """ + removeEnterpriseAdmin( + """ + Parameters for RemoveEnterpriseAdmin + """ + input: RemoveEnterpriseAdminInput! + ): RemoveEnterpriseAdminPayload + + """ + Removes the identity provider from an enterprise + """ + removeEnterpriseIdentityProvider( + """ + Parameters for RemoveEnterpriseIdentityProvider + """ + input: RemoveEnterpriseIdentityProviderInput! + ): RemoveEnterpriseIdentityProviderPayload + + """ + Removes a user from all organizations within the enterprise + """ + removeEnterpriseMember( + """ + Parameters for RemoveEnterpriseMember + """ + input: RemoveEnterpriseMemberInput! + ): RemoveEnterpriseMemberPayload + + """ + Removes an organization from the enterprise + """ + removeEnterpriseOrganization( + """ + Parameters for RemoveEnterpriseOrganization + """ + input: RemoveEnterpriseOrganizationInput! + ): RemoveEnterpriseOrganizationPayload + + """ + Removes a support entitlement from an enterprise member. + """ + removeEnterpriseSupportEntitlement( + """ + Parameters for RemoveEnterpriseSupportEntitlement + """ + input: RemoveEnterpriseSupportEntitlementInput! + ): RemoveEnterpriseSupportEntitlementPayload + + """ + Removes labels from a Labelable object. + """ + removeLabelsFromLabelable( + """ + Parameters for RemoveLabelsFromLabelable + """ + input: RemoveLabelsFromLabelableInput! + ): RemoveLabelsFromLabelablePayload + + """ + Removes outside collaborator from all repositories in an organization. + """ + removeOutsideCollaborator( + """ + Parameters for RemoveOutsideCollaborator + """ + input: RemoveOutsideCollaboratorInput! + ): RemoveOutsideCollaboratorPayload + + """ + Removes a reaction from a subject. + """ + removeReaction( + """ + Parameters for RemoveReaction + """ + input: RemoveReactionInput! + ): RemoveReactionPayload + + """ + Removes a star from a Starrable. + """ + removeStar( + """ + Parameters for RemoveStar + """ + input: RemoveStarInput! + ): RemoveStarPayload + + """ + Remove an upvote to a discussion or discussion comment. + """ + removeUpvote( + """ + Parameters for RemoveUpvote + """ + input: RemoveUpvoteInput! + ): RemoveUpvotePayload + + """ + Reopen a issue. + """ + reopenIssue( + """ + Parameters for ReopenIssue + """ + input: ReopenIssueInput! + ): ReopenIssuePayload + + """ + Reopen a pull request. + """ + reopenPullRequest( + """ + Parameters for ReopenPullRequest + """ + input: ReopenPullRequestInput! + ): ReopenPullRequestPayload + + """ + Set review requests on a pull request. + """ + requestReviews( + """ + Parameters for RequestReviews + """ + input: RequestReviewsInput! + ): RequestReviewsPayload + + """ + Rerequests an existing check suite. + """ + rerequestCheckSuite( + """ + Parameters for RerequestCheckSuite + """ + input: RerequestCheckSuiteInput! + ): RerequestCheckSuitePayload + + """ + Marks a review thread as resolved. + """ + resolveReviewThread( + """ + Parameters for ResolveReviewThread + """ + input: ResolveReviewThreadInput! + ): ResolveReviewThreadPayload + + """ + Retire a published payment tier from your GitHub Sponsors profile so it cannot be used to start new sponsorships. + """ + retireSponsorsTier( + """ + Parameters for RetireSponsorsTier + """ + input: RetireSponsorsTierInput! + ): RetireSponsorsTierPayload + + """ + Create a pull request that reverts the changes from a merged pull request. + """ + revertPullRequest( + """ + Parameters for RevertPullRequest + """ + input: RevertPullRequestInput! + ): RevertPullRequestPayload + + """ + Revoke the migrator role to a user for all organizations under an enterprise account. + """ + revokeEnterpriseOrganizationsMigratorRole( + """ + Parameters for RevokeEnterpriseOrganizationsMigratorRole + """ + input: RevokeEnterpriseOrganizationsMigratorRoleInput! + ): RevokeEnterpriseOrganizationsMigratorRolePayload + + """ + Revoke the migrator role from a user or a team. + """ + revokeMigratorRole( + """ + Parameters for RevokeMigratorRole + """ + input: RevokeMigratorRoleInput! + ): RevokeMigratorRolePayload + + """ + Creates or updates the identity provider for an enterprise. + """ + setEnterpriseIdentityProvider( + """ + Parameters for SetEnterpriseIdentityProvider + """ + input: SetEnterpriseIdentityProviderInput! + ): SetEnterpriseIdentityProviderPayload + + """ + Set an organization level interaction limit for an organization's public repositories. + """ + setOrganizationInteractionLimit( + """ + Parameters for SetOrganizationInteractionLimit + """ + input: SetOrganizationInteractionLimitInput! + ): SetOrganizationInteractionLimitPayload + + """ + Sets an interaction limit setting for a repository. + """ + setRepositoryInteractionLimit( + """ + Parameters for SetRepositoryInteractionLimit + """ + input: SetRepositoryInteractionLimitInput! + ): SetRepositoryInteractionLimitPayload + + """ + Set a user level interaction limit for an user's public repositories. + """ + setUserInteractionLimit( + """ + Parameters for SetUserInteractionLimit + """ + input: SetUserInteractionLimitInput! + ): SetUserInteractionLimitPayload + + """ + Starts a GitHub Enterprise Importer organization migration. + """ + startOrganizationMigration( + """ + Parameters for StartOrganizationMigration + """ + input: StartOrganizationMigrationInput! + ): StartOrganizationMigrationPayload + + """ + Starts a GitHub Enterprise Importer (GEI) repository migration. + """ + startRepositoryMigration( + """ + Parameters for StartRepositoryMigration + """ + input: StartRepositoryMigrationInput! + ): StartRepositoryMigrationPayload + + """ + Submits a pending pull request review. + """ + submitPullRequestReview( + """ + Parameters for SubmitPullRequestReview + """ + input: SubmitPullRequestReviewInput! + ): SubmitPullRequestReviewPayload + + """ + Transfer an organization from one enterprise to another enterprise. + """ + transferEnterpriseOrganization( + """ + Parameters for TransferEnterpriseOrganization + """ + input: TransferEnterpriseOrganizationInput! + ): TransferEnterpriseOrganizationPayload + + """ + Transfer an issue to a different repository + """ + transferIssue( + """ + Parameters for TransferIssue + """ + input: TransferIssueInput! + ): TransferIssuePayload + + """ + Unarchives a ProjectV2Item + """ + unarchiveProjectV2Item( + """ + Parameters for UnarchiveProjectV2Item + """ + input: UnarchiveProjectV2ItemInput! + ): UnarchiveProjectV2ItemPayload + + """ + Unarchives a repository. + """ + unarchiveRepository( + """ + Parameters for UnarchiveRepository + """ + input: UnarchiveRepositoryInput! + ): UnarchiveRepositoryPayload + + """ + Unfollow an organization. + """ + unfollowOrganization( + """ + Parameters for UnfollowOrganization + """ + input: UnfollowOrganizationInput! + ): UnfollowOrganizationPayload + + """ + Unfollow a user. + """ + unfollowUser( + """ + Parameters for UnfollowUser + """ + input: UnfollowUserInput! + ): UnfollowUserPayload + + """ + Unlinks a project from a repository. + """ + unlinkProjectV2FromRepository( + """ + Parameters for UnlinkProjectV2FromRepository + """ + input: UnlinkProjectV2FromRepositoryInput! + ): UnlinkProjectV2FromRepositoryPayload + + """ + Unlinks a project to a team. + """ + unlinkProjectV2FromTeam( + """ + Parameters for UnlinkProjectV2FromTeam + """ + input: UnlinkProjectV2FromTeamInput! + ): UnlinkProjectV2FromTeamPayload + + """ + Deletes a repository link from a project. + """ + unlinkRepositoryFromProject( + """ + Parameters for UnlinkRepositoryFromProject + """ + input: UnlinkRepositoryFromProjectInput! + ): UnlinkRepositoryFromProjectPayload + + """ + Unlock a lockable object + """ + unlockLockable( + """ + Parameters for UnlockLockable + """ + input: UnlockLockableInput! + ): UnlockLockablePayload + + """ + Unmark a discussion comment as the chosen answer for discussions in an answerable category. + """ + unmarkDiscussionCommentAsAnswer( + """ + Parameters for UnmarkDiscussionCommentAsAnswer + """ + input: UnmarkDiscussionCommentAsAnswerInput! + ): UnmarkDiscussionCommentAsAnswerPayload + + """ + Unmark a pull request file as viewed + """ + unmarkFileAsViewed( + """ + Parameters for UnmarkFileAsViewed + """ + input: UnmarkFileAsViewedInput! + ): UnmarkFileAsViewedPayload + + """ + Unmark an issue as a duplicate of another issue. + """ + unmarkIssueAsDuplicate( + """ + Parameters for UnmarkIssueAsDuplicate + """ + input: UnmarkIssueAsDuplicateInput! + ): UnmarkIssueAsDuplicatePayload + + """ + Unminimizes a comment on an Issue, Commit, Pull Request, or Gist + """ + unminimizeComment( + """ + Parameters for UnminimizeComment + """ + input: UnminimizeCommentInput! + ): UnminimizeCommentPayload + + """ + Unpin a pinned issue from a repository + """ + unpinIssue( + """ + Parameters for UnpinIssue + """ + input: UnpinIssueInput! + ): UnpinIssuePayload + + """ + Marks a review thread as unresolved. + """ + unresolveReviewThread( + """ + Parameters for UnresolveReviewThread + """ + input: UnresolveReviewThreadInput! + ): UnresolveReviewThreadPayload + + """ + Update a branch protection rule + """ + updateBranchProtectionRule( + """ + Parameters for UpdateBranchProtectionRule + """ + input: UpdateBranchProtectionRuleInput! + ): UpdateBranchProtectionRulePayload + + """ + Update a check run + """ + updateCheckRun( + """ + Parameters for UpdateCheckRun + """ + input: UpdateCheckRunInput! + ): UpdateCheckRunPayload + + """ + Modifies the settings of an existing check suite + """ + updateCheckSuitePreferences( + """ + Parameters for UpdateCheckSuitePreferences + """ + input: UpdateCheckSuitePreferencesInput! + ): UpdateCheckSuitePreferencesPayload + + """ + Update a discussion + """ + updateDiscussion( + """ + Parameters for UpdateDiscussion + """ + input: UpdateDiscussionInput! + ): UpdateDiscussionPayload + + """ + Update the contents of a comment on a Discussion + """ + updateDiscussionComment( + """ + Parameters for UpdateDiscussionComment + """ + input: UpdateDiscussionCommentInput! + ): UpdateDiscussionCommentPayload + + """ + Updates the role of an enterprise administrator. + """ + updateEnterpriseAdministratorRole( + """ + Parameters for UpdateEnterpriseAdministratorRole + """ + input: UpdateEnterpriseAdministratorRoleInput! + ): UpdateEnterpriseAdministratorRolePayload + + """ + Sets whether private repository forks are enabled for an enterprise. + """ + updateEnterpriseAllowPrivateRepositoryForkingSetting( + """ + Parameters for UpdateEnterpriseAllowPrivateRepositoryForkingSetting + """ + input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput! + ): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload + + """ + Sets the base repository permission for organizations in an enterprise. + """ + updateEnterpriseDefaultRepositoryPermissionSetting( + """ + Parameters for UpdateEnterpriseDefaultRepositoryPermissionSetting + """ + input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput! + ): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload + + """ + Sets whether organization members with admin permissions on a repository can change repository visibility. + """ + updateEnterpriseMembersCanChangeRepositoryVisibilitySetting( + """ + Parameters for UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting + """ + input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput! + ): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload + + """ + Sets the members can create repositories setting for an enterprise. + """ + updateEnterpriseMembersCanCreateRepositoriesSetting( + """ + Parameters for UpdateEnterpriseMembersCanCreateRepositoriesSetting + """ + input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput! + ): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload + + """ + Sets the members can delete issues setting for an enterprise. + """ + updateEnterpriseMembersCanDeleteIssuesSetting( + """ + Parameters for UpdateEnterpriseMembersCanDeleteIssuesSetting + """ + input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput! + ): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload + + """ + Sets the members can delete repositories setting for an enterprise. + """ + updateEnterpriseMembersCanDeleteRepositoriesSetting( + """ + Parameters for UpdateEnterpriseMembersCanDeleteRepositoriesSetting + """ + input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput! + ): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload + + """ + Sets whether members can invite collaborators are enabled for an enterprise. + """ + updateEnterpriseMembersCanInviteCollaboratorsSetting( + """ + Parameters for UpdateEnterpriseMembersCanInviteCollaboratorsSetting + """ + input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput! + ): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload + + """ + Sets whether or not an organization admin can make purchases. + """ + updateEnterpriseMembersCanMakePurchasesSetting( + """ + Parameters for UpdateEnterpriseMembersCanMakePurchasesSetting + """ + input: UpdateEnterpriseMembersCanMakePurchasesSettingInput! + ): UpdateEnterpriseMembersCanMakePurchasesSettingPayload + + """ + Sets the members can update protected branches setting for an enterprise. + """ + updateEnterpriseMembersCanUpdateProtectedBranchesSetting( + """ + Parameters for UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting + """ + input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput! + ): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload + + """ + Sets the members can view dependency insights for an enterprise. + """ + updateEnterpriseMembersCanViewDependencyInsightsSetting( + """ + Parameters for UpdateEnterpriseMembersCanViewDependencyInsightsSetting + """ + input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput! + ): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload + + """ + Sets whether organization projects are enabled for an enterprise. + """ + updateEnterpriseOrganizationProjectsSetting( + """ + Parameters for UpdateEnterpriseOrganizationProjectsSetting + """ + input: UpdateEnterpriseOrganizationProjectsSettingInput! + ): UpdateEnterpriseOrganizationProjectsSettingPayload + + """ + Updates the role of an enterprise owner with an organization. + """ + updateEnterpriseOwnerOrganizationRole( + """ + Parameters for UpdateEnterpriseOwnerOrganizationRole + """ + input: UpdateEnterpriseOwnerOrganizationRoleInput! + ): UpdateEnterpriseOwnerOrganizationRolePayload + + """ + Updates an enterprise's profile. + """ + updateEnterpriseProfile( + """ + Parameters for UpdateEnterpriseProfile + """ + input: UpdateEnterpriseProfileInput! + ): UpdateEnterpriseProfilePayload + + """ + Sets whether repository projects are enabled for a enterprise. + """ + updateEnterpriseRepositoryProjectsSetting( + """ + Parameters for UpdateEnterpriseRepositoryProjectsSetting + """ + input: UpdateEnterpriseRepositoryProjectsSettingInput! + ): UpdateEnterpriseRepositoryProjectsSettingPayload + + """ + Sets whether team discussions are enabled for an enterprise. + """ + updateEnterpriseTeamDiscussionsSetting( + """ + Parameters for UpdateEnterpriseTeamDiscussionsSetting + """ + input: UpdateEnterpriseTeamDiscussionsSettingInput! + ): UpdateEnterpriseTeamDiscussionsSettingPayload + + """ + Sets whether two factor authentication is required for all users in an enterprise. + """ + updateEnterpriseTwoFactorAuthenticationRequiredSetting( + """ + Parameters for UpdateEnterpriseTwoFactorAuthenticationRequiredSetting + """ + input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput! + ): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload + + """ + Updates an environment. + """ + updateEnvironment( + """ + Parameters for UpdateEnvironment + """ + input: UpdateEnvironmentInput! + ): UpdateEnvironmentPayload + + """ + Sets whether an IP allow list is enabled on an owner. + """ + updateIpAllowListEnabledSetting( + """ + Parameters for UpdateIpAllowListEnabledSetting + """ + input: UpdateIpAllowListEnabledSettingInput! + ): UpdateIpAllowListEnabledSettingPayload + + """ + Updates an IP allow list entry. + """ + updateIpAllowListEntry( + """ + Parameters for UpdateIpAllowListEntry + """ + input: UpdateIpAllowListEntryInput! + ): UpdateIpAllowListEntryPayload + + """ + Sets whether IP allow list configuration for installed GitHub Apps is enabled on an owner. + """ + updateIpAllowListForInstalledAppsEnabledSetting( + """ + Parameters for UpdateIpAllowListForInstalledAppsEnabledSetting + """ + input: UpdateIpAllowListForInstalledAppsEnabledSettingInput! + ): UpdateIpAllowListForInstalledAppsEnabledSettingPayload + + """ + Updates an Issue. + """ + updateIssue( + """ + Parameters for UpdateIssue + """ + input: UpdateIssueInput! + ): UpdateIssuePayload + + """ + Updates an IssueComment object. + """ + updateIssueComment( + """ + Parameters for UpdateIssueComment + """ + input: UpdateIssueCommentInput! + ): UpdateIssueCommentPayload + + """ + Updates an existing label. + """ + updateLabel( + """ + Parameters for UpdateLabel + """ + input: UpdateLabelInput! + ): UpdateLabelPayload @preview(toggledBy: "bane-preview") + + """ + Update the setting to restrict notifications to only verified or approved domains available to an owner. + """ + updateNotificationRestrictionSetting( + """ + Parameters for UpdateNotificationRestrictionSetting + """ + input: UpdateNotificationRestrictionSettingInput! + ): UpdateNotificationRestrictionSettingPayload + + """ + Sets whether private repository forks are enabled for an organization. + """ + updateOrganizationAllowPrivateRepositoryForkingSetting( + """ + Parameters for UpdateOrganizationAllowPrivateRepositoryForkingSetting + """ + input: UpdateOrganizationAllowPrivateRepositoryForkingSettingInput! + ): UpdateOrganizationAllowPrivateRepositoryForkingSettingPayload + + """ + Sets whether contributors are required to sign off on web-based commits for repositories in an organization. + """ + updateOrganizationWebCommitSignoffSetting( + """ + Parameters for UpdateOrganizationWebCommitSignoffSetting + """ + input: UpdateOrganizationWebCommitSignoffSettingInput! + ): UpdateOrganizationWebCommitSignoffSettingPayload + + """ + Updates an existing project. + """ + updateProject( + """ + Parameters for UpdateProject + """ + input: UpdateProjectInput! + ): UpdateProjectPayload + + """ + Updates an existing project card. + """ + updateProjectCard( + """ + Parameters for UpdateProjectCard + """ + input: UpdateProjectCardInput! + ): UpdateProjectCardPayload + + """ + Updates an existing project column. + """ + updateProjectColumn( + """ + Parameters for UpdateProjectColumn + """ + input: UpdateProjectColumnInput! + ): UpdateProjectColumnPayload + + """ + Updates an existing project (beta). + """ + updateProjectV2( + """ + Parameters for UpdateProjectV2 + """ + input: UpdateProjectV2Input! + ): UpdateProjectV2Payload + + """ + Updates a draft issue within a Project. + """ + updateProjectV2DraftIssue( + """ + Parameters for UpdateProjectV2DraftIssue + """ + input: UpdateProjectV2DraftIssueInput! + ): UpdateProjectV2DraftIssuePayload + + """ + This mutation updates the value of a field for an item in a Project. Currently + only single-select, text, number, date, and iteration fields are supported. + """ + updateProjectV2ItemFieldValue( + """ + Parameters for UpdateProjectV2ItemFieldValue + """ + input: UpdateProjectV2ItemFieldValueInput! + ): UpdateProjectV2ItemFieldValuePayload + + """ + This mutation updates the position of the item in the project, where the position represents the priority of an item. + """ + updateProjectV2ItemPosition( + """ + Parameters for UpdateProjectV2ItemPosition + """ + input: UpdateProjectV2ItemPositionInput! + ): UpdateProjectV2ItemPositionPayload + + """ + Update a pull request + """ + updatePullRequest( + """ + Parameters for UpdatePullRequest + """ + input: UpdatePullRequestInput! + ): UpdatePullRequestPayload + + """ + Merge or Rebase HEAD from upstream branch into pull request branch + """ + updatePullRequestBranch( + """ + Parameters for UpdatePullRequestBranch + """ + input: UpdatePullRequestBranchInput! + ): UpdatePullRequestBranchPayload + + """ + Updates the body of a pull request review. + """ + updatePullRequestReview( + """ + Parameters for UpdatePullRequestReview + """ + input: UpdatePullRequestReviewInput! + ): UpdatePullRequestReviewPayload + + """ + Updates a pull request review comment. + """ + updatePullRequestReviewComment( + """ + Parameters for UpdatePullRequestReviewComment + """ + input: UpdatePullRequestReviewCommentInput! + ): UpdatePullRequestReviewCommentPayload + + """ + Update a Git Ref. + """ + updateRef( + """ + Parameters for UpdateRef + """ + input: UpdateRefInput! + ): UpdateRefPayload + + """ + Creates, updates and/or deletes multiple refs in a repository. + + This mutation takes a list of `RefUpdate`s and performs these updates + on the repository. All updates are performed atomically, meaning that + if one of them is rejected, no other ref will be modified. + + `RefUpdate.beforeOid` specifies that the given reference needs to point + to the given value before performing any updates. A value of + `0000000000000000000000000000000000000000` can be used to verify that + the references should not exist. + + `RefUpdate.afterOid` specifies the value that the given reference + will point to after performing all updates. A value of + `0000000000000000000000000000000000000000` can be used to delete a + reference. + + If `RefUpdate.force` is set to `true`, a non-fast-forward updates + for the given reference will be allowed. + """ + updateRefs( + """ + Parameters for UpdateRefs + """ + input: UpdateRefsInput! + ): UpdateRefsPayload @preview(toggledBy: "update-refs-preview") + + """ + Update information about a repository. + """ + updateRepository( + """ + Parameters for UpdateRepository + """ + input: UpdateRepositoryInput! + ): UpdateRepositoryPayload + + """ + Sets whether contributors are required to sign off on web-based commits for a repository. + """ + updateRepositoryWebCommitSignoffSetting( + """ + Parameters for UpdateRepositoryWebCommitSignoffSetting + """ + input: UpdateRepositoryWebCommitSignoffSettingInput! + ): UpdateRepositoryWebCommitSignoffSettingPayload + + """ + Change visibility of your sponsorship and opt in or out of email updates from the maintainer. + """ + updateSponsorshipPreferences( + """ + Parameters for UpdateSponsorshipPreferences + """ + input: UpdateSponsorshipPreferencesInput! + ): UpdateSponsorshipPreferencesPayload + + """ + Updates the state for subscribable subjects. + """ + updateSubscription( + """ + Parameters for UpdateSubscription + """ + input: UpdateSubscriptionInput! + ): UpdateSubscriptionPayload + + """ + Updates a team discussion. + """ + updateTeamDiscussion( + """ + Parameters for UpdateTeamDiscussion + """ + input: UpdateTeamDiscussionInput! + ): UpdateTeamDiscussionPayload + + """ + Updates a discussion comment. + """ + updateTeamDiscussionComment( + """ + Parameters for UpdateTeamDiscussionComment + """ + input: UpdateTeamDiscussionCommentInput! + ): UpdateTeamDiscussionCommentPayload + + """ + Updates team review assignment. + """ + updateTeamReviewAssignment( + """ + Parameters for UpdateTeamReviewAssignment + """ + input: UpdateTeamReviewAssignmentInput! + ): UpdateTeamReviewAssignmentPayload @preview(toggledBy: "stone-crop-preview") + + """ + Update team repository. + """ + updateTeamsRepository( + """ + Parameters for UpdateTeamsRepository + """ + input: UpdateTeamsRepositoryInput! + ): UpdateTeamsRepositoryPayload + + """ + Replaces the repository's topics with the given topics. + """ + updateTopics( + """ + Parameters for UpdateTopics + """ + input: UpdateTopicsInput! + ): UpdateTopicsPayload + + """ + Verify that a verifiable domain has the expected DNS record. + """ + verifyVerifiableDomain( + """ + Parameters for VerifyVerifiableDomain + """ + input: VerifyVerifiableDomainInput! + ): VerifyVerifiableDomainPayload +} + +""" +An object with an ID. +""" +interface Node { + """ + ID of the object. + """ + id: ID! +} + +""" +The possible values for the notification restriction setting. +""" +enum NotificationRestrictionSettingValue { + """ + The setting is disabled for the owner. + """ + DISABLED + + """ + The setting is enabled for the owner. + """ + ENABLED +} + +""" +An OIDC identity provider configured to provision identities for an enterprise. +""" +type OIDCProvider implements Node { + """ + The enterprise this identity provider belongs to. + """ + enterprise: Enterprise + + """ + ExternalIdentities provisioned by this identity provider. + """ + externalIdentities( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter to external identities with the users login + """ + login: String + + """ + Filter to external identities with valid org membership only + """ + membersOnly: Boolean + + """ + Filter to external identities with the users userName/NameID attribute + """ + userName: String + ): ExternalIdentityConnection! + id: ID! + + """ + The OIDC identity provider type + """ + providerType: OIDCProviderType! + + """ + The id of the tenant this provider is attached to + """ + tenantId: String! +} + +""" +The OIDC identity provider type +""" +enum OIDCProviderType { + """ + Azure Active Directory + """ + AAD +} + +""" +Metadata for an audit entry with action oauth_application.* +""" +interface OauthApplicationAuditEntryData { + """ + The name of the OAuth Application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth Application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth Application + """ + oauthApplicationUrl: URI +} + +""" +Audit log entry for a oauth_application.create event. +""" +type OauthApplicationCreateAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The application URL of the OAuth Application. + """ + applicationUrl: URI + + """ + The callback URL of the OAuth Application. + """ + callbackUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The name of the OAuth Application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth Application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth Application + """ + oauthApplicationUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The rate limit of the OAuth Application. + """ + rateLimit: Int + + """ + The state of the OAuth Application. + """ + state: OauthApplicationCreateAuditEntryState + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The state of an OAuth Application when it was created. +""" +enum OauthApplicationCreateAuditEntryState { + """ + The OAuth Application was active and allowed to have OAuth Accesses. + """ + ACTIVE + + """ + The OAuth Application was in the process of being deleted. + """ + PENDING_DELETION + + """ + The OAuth Application was suspended from generating OAuth Accesses due to abuse or security concerns. + """ + SUSPENDED +} + +""" +The corresponding operation type for the action +""" +enum OperationType { + """ + An existing resource was accessed + """ + ACCESS + + """ + A resource performed an authentication event + """ + AUTHENTICATION + + """ + A new resource was created + """ + CREATE + + """ + An existing resource was modified + """ + MODIFY + + """ + An existing resource was removed + """ + REMOVE + + """ + An existing resource was restored + """ + RESTORE + + """ + An existing resource was transferred between multiple resources + """ + TRANSFER +} + +""" +Possible directions in which to order a list of items when provided an `orderBy` argument. +""" +enum OrderDirection { + """ + Specifies an ascending order for a given `orderBy` argument. + """ + ASC + + """ + Specifies a descending order for a given `orderBy` argument. + """ + DESC +} + +""" +Audit log entry for a org.add_billing_manager +""" +type OrgAddBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The email address used to invite a billing manager for the organization. + """ + invitationEmail: String + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.add_member +""" +type OrgAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The permission level of the member added to the organization. + """ + permission: OrgAddMemberAuditEntryPermission + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The permissions available to members on an Organization. +""" +enum OrgAddMemberAuditEntryPermission { + """ + Can read, clone, push, and add collaborators to repositories. + """ + ADMIN + + """ + Can read and clone repositories. + """ + READ +} + +""" +Audit log entry for a org.block_user +""" +type OrgBlockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The blocked user. + """ + blockedUser: User + + """ + The username of the blocked user. + """ + blockedUserName: String + + """ + The HTTP path for the blocked user. + """ + blockedUserResourcePath: URI + + """ + The HTTP URL for the blocked user. + """ + blockedUserUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.config.disable_collaborators_only event. +""" +type OrgConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.config.enable_collaborators_only event. +""" +type OrgConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.create event. +""" +type OrgCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The billing plan for the Organization. + """ + billingPlan: OrgCreateAuditEntryBillingPlan + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The billing plans available for organizations. +""" +enum OrgCreateAuditEntryBillingPlan { + """ + Team Plan + """ + BUSINESS + + """ + Enterprise Cloud Plan + """ + BUSINESS_PLUS + + """ + Free Plan + """ + FREE + + """ + Tiered Per Seat Plan + """ + TIERED_PER_SEAT + + """ + Legacy Unlimited Plan + """ + UNLIMITED +} + +""" +Audit log entry for a org.disable_oauth_app_restrictions event. +""" +type OrgDisableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.disable_saml event. +""" +type OrgDisableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The SAML provider's digest algorithm URL. + """ + digestMethodUrl: URI + id: ID! + + """ + The SAML provider's issuer URL. + """ + issuerUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The SAML provider's signature algorithm URL. + """ + signatureMethodUrl: URI + + """ + The SAML provider's single sign-on URL. + """ + singleSignOnUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.disable_two_factor_requirement event. +""" +type OrgDisableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.enable_oauth_app_restrictions event. +""" +type OrgEnableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.enable_saml event. +""" +type OrgEnableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The SAML provider's digest algorithm URL. + """ + digestMethodUrl: URI + id: ID! + + """ + The SAML provider's issuer URL. + """ + issuerUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The SAML provider's signature algorithm URL. + """ + signatureMethodUrl: URI + + """ + The SAML provider's single sign-on URL. + """ + singleSignOnUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.enable_two_factor_requirement event. +""" +type OrgEnableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Ordering options for an organization's enterprise owner connections. +""" +input OrgEnterpriseOwnerOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order enterprise owners by. + """ + field: OrgEnterpriseOwnerOrderField! +} + +""" +Properties by which enterprise owners can be ordered. +""" +enum OrgEnterpriseOwnerOrderField { + """ + Order enterprise owners by login. + """ + LOGIN +} + +""" +Audit log entry for a org.invite_member event. +""" +type OrgInviteMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The email address of the organization invitation. + """ + email: String + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The organization invitation. + """ + organizationInvitation: OrganizationInvitation + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.invite_to_business event. +""" +type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.oauth_app_access_approved event. +""" +type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The name of the OAuth Application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth Application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth Application + """ + oauthApplicationUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.oauth_app_access_denied event. +""" +type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The name of the OAuth Application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth Application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth Application + """ + oauthApplicationUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.oauth_app_access_requested event. +""" +type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The name of the OAuth Application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth Application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth Application + """ + oauthApplicationUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.remove_billing_manager event. +""" +type OrgRemoveBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The reason for the billing manager being removed. + """ + reason: OrgRemoveBillingManagerAuditEntryReason + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The reason a billing manager was removed from an Organization. +""" +enum OrgRemoveBillingManagerAuditEntryReason { + """ + SAML external identity missing + """ + SAML_EXTERNAL_IDENTITY_MISSING + + """ + SAML SSO enforcement requires an external identity + """ + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + + """ + The organization required 2FA of its billing managers and this user did not have 2FA enabled. + """ + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE +} + +""" +Audit log entry for a org.remove_member event. +""" +type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The types of membership the member has with the organization. + """ + membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The reason for the member being removed. + """ + reason: OrgRemoveMemberAuditEntryReason + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The type of membership a user has with an Organization. +""" +enum OrgRemoveMemberAuditEntryMembershipType { + """ + Organization administrators have full access and can change several settings, + including the names of repositories that belong to the Organization and Owners + team membership. In addition, organization admins can delete the organization + and all of its repositories. + """ + ADMIN + + """ + A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + """ + BILLING_MANAGER + + """ + A direct member is a user that is a member of the Organization. + """ + DIRECT_MEMBER + + """ + An outside collaborator is a person who isn't explicitly a member of the + Organization, but who has Read, Write, or Admin permissions to one or more + repositories in the organization. + """ + OUTSIDE_COLLABORATOR + + """ + A suspended member. + """ + SUSPENDED + + """ + An unaffiliated collaborator is a person who is not a member of the + Organization and does not have access to any repositories in the Organization. + """ + UNAFFILIATED +} + +""" +The reason a member was removed from an Organization. +""" +enum OrgRemoveMemberAuditEntryReason { + """ + SAML external identity missing + """ + SAML_EXTERNAL_IDENTITY_MISSING + + """ + SAML SSO enforcement requires an external identity + """ + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + + """ + User was removed from organization during account recovery + """ + TWO_FACTOR_ACCOUNT_RECOVERY + + """ + The organization required 2FA of its billing managers and this user did not have 2FA enabled. + """ + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + + """ + User account has been deleted + """ + USER_ACCOUNT_DELETED +} + +""" +Audit log entry for a org.remove_outside_collaborator event. +""" +type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The types of membership the outside collaborator has with the organization. + """ + membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The reason for the outside collaborator being removed from the Organization. + """ + reason: OrgRemoveOutsideCollaboratorAuditEntryReason + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The type of membership a user has with an Organization. +""" +enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { + """ + A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + """ + BILLING_MANAGER + + """ + An outside collaborator is a person who isn't explicitly a member of the + Organization, but who has Read, Write, or Admin permissions to one or more + repositories in the organization. + """ + OUTSIDE_COLLABORATOR + + """ + An unaffiliated collaborator is a person who is not a member of the + Organization and does not have access to any repositories in the organization. + """ + UNAFFILIATED +} + +""" +The reason an outside collaborator was removed from an Organization. +""" +enum OrgRemoveOutsideCollaboratorAuditEntryReason { + """ + SAML external identity missing + """ + SAML_EXTERNAL_IDENTITY_MISSING + + """ + The organization required 2FA of its billing managers and this user did not have 2FA enabled. + """ + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE +} + +""" +Audit log entry for a org.restore_member event. +""" +type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The number of custom email routings for the restored member. + """ + restoredCustomEmailRoutingsCount: Int + + """ + The number of issue assignments for the restored member. + """ + restoredIssueAssignmentsCount: Int + + """ + Restored organization membership objects. + """ + restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] + + """ + The number of restored memberships. + """ + restoredMembershipsCount: Int + + """ + The number of repositories of the restored member. + """ + restoredRepositoriesCount: Int + + """ + The number of starred repositories for the restored member. + """ + restoredRepositoryStarsCount: Int + + """ + The number of watched repositories for the restored member. + """ + restoredRepositoryWatchesCount: Int + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Types of memberships that can be restored for an Organization member. +""" +union OrgRestoreMemberAuditEntryMembership = + OrgRestoreMemberMembershipOrganizationAuditEntryData + | OrgRestoreMemberMembershipRepositoryAuditEntryData + | OrgRestoreMemberMembershipTeamAuditEntryData + +""" +Metadata for an organization membership for org.restore_member actions +""" +type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI +} + +""" +Metadata for a repository membership for org.restore_member actions +""" +type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { + """ + The repository associated with the action + """ + repository: Repository + + """ + The name of the repository + """ + repositoryName: String + + """ + The HTTP path for the repository + """ + repositoryResourcePath: URI + + """ + The HTTP URL for the repository + """ + repositoryUrl: URI +} + +""" +Metadata for a team membership for org.restore_member actions +""" +type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { + """ + The team associated with the action + """ + team: Team + + """ + The name of the team + """ + teamName: String + + """ + The HTTP path for this team + """ + teamResourcePath: URI + + """ + The HTTP URL for this team """ - Check if the current viewer can delete this object. + teamUrl: URI +} + +""" +Audit log entry for a org.unblock_user +""" +type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - viewerCanDelete: Boolean! + The action name + """ + action: String! """ - Check if the current viewer can minimize this object. + The user who initiated the action """ - viewerCanMinimize: Boolean! + actor: AuditEntryActor """ - Check if the current viewer can update this object. + The IP address of the actor """ - viewerCanUpdate: Boolean! + actorIp: String """ - Reasons why the current viewer can not update this comment. + A readable representation of the actor's location """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + actorLocation: ActorLocation """ - Did the viewer author this comment. + The username of the user who initiated the action """ - viewerDidAuthor: Boolean! -} + actorLogin: String -""" -The connection type for GistComment. -""" -type GistCommentConnection { """ - A list of edges. + The HTTP path for the actor. """ - edges: [GistCommentEdge] + actorResourcePath: URI """ - A list of nodes. + The HTTP URL for the actor. """ - nodes: [GistComment] + actorUrl: URI """ - Information to aid in pagination. + The user being unblocked by the organization. """ - pageInfo: PageInfo! + blockedUser: User """ - Identifies the total count of items in the connection. + The username of the blocked user. """ - totalCount: Int! -} + blockedUserName: String -""" -An edge in a connection. -""" -type GistCommentEdge { """ - A cursor for use in pagination. + The HTTP path for the blocked user. """ - cursor: String! + blockedUserResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the blocked user. """ - node: GistComment + blockedUserUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -The connection type for Gist. +Audit log entry for a org.update_default_repository_permission """ -type GistConnection { +type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [GistEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [Gist] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The new base repository permission level for the organization. + """ + permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + + """ + The former base repository permission level for the organization. + """ + permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -An edge in a connection. +The default permission a repository can have in an Organization. """ -type GistEdge { +enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { """ - A cursor for use in pagination. + Can read, clone, push, and add collaborators to repositories. """ - cursor: String! + ADMIN """ - The item at the end of the edge. + No default permission value. """ - node: Gist + NONE + + """ + Can read and clone repositories. + """ + READ + + """ + Can read, clone and push to repositories. + """ + WRITE } """ -A file in a gist. +Audit log entry for a org.update_member event. """ -type GistFile { +type OrgUpdateMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The file name encoded to remove characters that are invalid in URL paths. + The action name """ - encodedName: String + action: String! """ - The gist file encoding. + The user who initiated the action """ - encoding: String + actor: AuditEntryActor """ - The file extension from the file name. + The IP address of the actor """ - extension: String + actorIp: String """ - Indicates if this file is an image. + A readable representation of the actor's location """ - isImage: Boolean! + actorLocation: ActorLocation """ - Whether the file's contents were truncated. + The username of the user who initiated the action """ - isTruncated: Boolean! + actorLogin: String """ - The programming language this file is written in. + The HTTP path for the actor. """ - language: Language + actorResourcePath: URI """ - The gist file name. + The HTTP URL for the actor. """ - name: String + actorUrl: URI """ - The gist file size in bytes. + The time the action was initiated """ - size: Int + createdAt: PreciseDateTime! + id: ID! """ - UTF8 text data or null if the file is binary + The corresponding operation type for the action """ - text( - """ - Optionally truncate the returned file to this length. - """ - truncate: Int - ): String + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The new member permission level for the organization. + """ + permission: OrgUpdateMemberAuditEntryPermission + + """ + The former member permission level for the organization. + """ + permissionWas: OrgUpdateMemberAuditEntryPermission + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -Ordering options for gist connections +The permissions available to members on an Organization. """ -input GistOrder { +enum OrgUpdateMemberAuditEntryPermission { """ - The ordering direction. + Can read, clone, push, and add collaborators to repositories. """ - direction: OrderDirection! + ADMIN """ - The field to order repositories by. + Can read and clone repositories. """ - field: GistOrderField! + READ } """ -Properties by which gist connections can be ordered. +Audit log entry for a org.update_member_repository_creation_permission event. """ -enum GistOrderField { +type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - Order gists by creation time + The action name """ - CREATED_AT + action: String! """ - Order gists by push time + The user who initiated the action """ - PUSHED_AT + actor: AuditEntryActor """ - Order gists by update time + The IP address of the actor """ - UPDATED_AT -} + actorIp: String -""" -The privacy of a Gist -""" -enum GistPrivacy { """ - Gists that are public and secret + A readable representation of the actor's location """ - ALL + actorLocation: ActorLocation """ - Public + The username of the user who initiated the action """ - PUBLIC + actorLogin: String """ - Secret + The HTTP path for the actor. """ - SECRET -} + actorResourcePath: URI -""" -Represents an actor in a Git commit (ie. an author or committer). -""" -type GitActor { """ - A URL pointing to the author's public avatar. + The HTTP URL for the actor. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + actorUrl: URI """ - The timestamp of the Git action (authoring or committing). + Can members create repositories in the organization. """ - date: GitTimestamp + canCreateRepositories: Boolean """ - The email in the Git commit. + The time the action was initiated """ - email: String + createdAt: PreciseDateTime! + id: ID! """ - The name in the Git commit. + The corresponding operation type for the action """ - name: String + operationType: OperationType """ - The GitHub user corresponding to the email field. Null if no such user exists. + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action """ user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI + + """ + The permission for visibility level of repositories for this organization. + """ + visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility } """ -Represents information about the GitHub instance. +The permissions available for repository creation on an Organization. """ -type GitHubMetadata { +enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - Returns a String that's a SHA of `github-services` + All organization members are restricted from creating any repositories. """ - gitHubServicesSha: GitObjectID! + ALL """ - IP addresses that users connect to for git operations + All organization members are restricted from creating internal repositories. """ - gitIpAddresses: [String!] + INTERNAL """ - IP addresses that service hooks are sent from + All organization members are allowed to create any repositories. """ - hookIpAddresses: [String!] + NONE """ - IP addresses that the importer connects from + All organization members are restricted from creating private repositories. """ - importerIpAddresses: [String!] + PRIVATE """ - Whether or not users are verified + All organization members are restricted from creating private or internal repositories. """ - isPasswordAuthenticationVerifiable: Boolean! + PRIVATE_INTERNAL """ - IP addresses for GitHub Pages' A records + All organization members are restricted from creating public repositories. """ - pagesIpAddresses: [String!] + PUBLIC + + """ + All organization members are restricted from creating public or internal repositories. + """ + PUBLIC_INTERNAL + + """ + All organization members are restricted from creating public or private repositories. + """ + PUBLIC_PRIVATE } """ -Represents a Git object. +Audit log entry for a org.update_member_repository_invitation_permission event. """ -interface GitObject { +type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - An abbreviated version of the Git object ID + The action name """ - abbreviatedOid: String! + action: String! """ - The HTTP path for this Git object + The user who initiated the action """ - commitResourcePath: URI! + actor: AuditEntryActor """ - The HTTP URL for this Git object + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + Can outside collaborators be invited to repositories in the organization. + """ + canInviteOutsideCollaboratorsToRepositories: Boolean + + """ + The time the action was initiated """ - commitUrl: URI! + createdAt: PreciseDateTime! id: ID! """ - The Git object ID + The corresponding operation type for the action """ - oid: GitObjectID! + operationType: OperationType """ - The Repository the Git object belongs to + The Organization associated with the Audit Entry. """ - repository: Repository! -} - -""" -A Git object ID. -""" -scalar GitObjectID - -""" -Git SSH string -""" -scalar GitSSHRemote + organization: Organization -""" -Information about a signature (GPG or S/MIME) on a Commit or Tag. -""" -interface GitSignature { """ - Email used to sign this object. + The name of the Organization. """ - email: String! + organizationName: String """ - True if the signature is valid and verified by GitHub. + The HTTP path for the organization """ - isValid: Boolean! + organizationResourcePath: URI """ - Payload for GPG signing object. Raw ODB object without the signature header. + The HTTP URL for the organization """ - payload: String! + organizationUrl: URI """ - ASCII-armored signature header from object. + The user affected by the action """ - signature: String! + user: User """ - GitHub user corresponding to the email signing this commit. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - signer: User + userLogin: String """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + The HTTP path for the user. """ - state: GitSignatureState! + userResourcePath: URI """ - True if the signature was made with GitHub's signing key. + The HTTP URL for the user. """ - wasSignedByGitHub: Boolean! + userUrl: URI } """ -The state of a Git signature. +An account on GitHub, with one or more owners, that has repositories, members and teams. """ -enum GitSignatureState { +type Organization implements Actor & AnnouncementBanner & MemberStatusable & Node & PackageOwner & ProfileOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & Sponsorable & UniformResourceLocatable { """ - The signing certificate or its chain could not be verified + The text of the announcement """ - BAD_CERT + announcement: String """ - Invalid email used for signing + The expiration date of the announcement, if any """ - BAD_EMAIL + announcementExpiresAt: DateTime """ - Signing key expired + Whether the announcement can be dismissed by the user """ - EXPIRED_KEY + announcementUserDismissible: Boolean """ - Internal error - the GPG verification service misbehaved + Determine if this repository owner has any items that can be pinned to their profile. """ - GPGVERIFY_ERROR + anyPinnableItems( + """ + Filter to only a particular kind of pinnable item. + """ + type: PinnableItemType + ): Boolean! """ - Internal error - the GPG verification service is unavailable at the moment + Audit log entries of the organization """ - GPGVERIFY_UNAVAILABLE + auditLog( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Invalid signature - """ - INVALID + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Malformed signature - """ - MALFORMED_SIG + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The usage flags for the key that signed this don't allow signing - """ - NOT_SIGNING_KEY + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Email used for signing not known to GitHub - """ - NO_USER + """ + Ordering options for the returned audit log entries. + """ + orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} + + """ + The query string to filter audit entries + """ + query: String + ): OrganizationAuditEntryConnection! """ - Valid siganture, though certificate revocation check failed + A URL pointing to the organization's public avatar. """ - OCSP_ERROR + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! """ - Valid signature, pending certificate revocation checking + Identifies the date and time when the object was created. """ - OCSP_PENDING + createdAt: DateTime! """ - One or more certificates in chain has been revoked + Identifies the primary key from the database. """ - OCSP_REVOKED + databaseId: Int """ - Key used for signing not known to GitHub + The organization's public profile description. """ - UNKNOWN_KEY + description: String """ - Unknown signature type + The organization's public profile description rendered to HTML. """ - UNKNOWN_SIG_TYPE + descriptionHTML: String """ - Unsigned + A list of domains owned by the organization. """ - UNSIGNED + domains( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Filter by if the domain is approved. + """ + isApproved: Boolean = null + + """ + Filter by if the domain is verified. + """ + isVerified: Boolean = null + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for verifiable domains returned. + """ + orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} + ): VerifiableDomainConnection """ - Email used for signing unverified on GitHub + The organization's public email. """ - UNVERIFIED_EMAIL + email: String """ - Valid signature and verified by GitHub + A list of owners of the organization's enterprise account. """ - VALID -} + enterpriseOwners( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC. -""" -scalar GitTimestamp + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for enterprise owners returned from the connection. + """ + orderBy: OrgEnterpriseOwnerOrder = {field: LOGIN, direction: ASC} + + """ + The organization role to filter by. + """ + organizationRole: RoleInOrganization + + """ + The search string to look for. + """ + query: String + ): OrganizationEnterpriseOwnerConnection! -""" -Represents a GPG signature on a Commit or Tag. -""" -type GpgSignature implements GitSignature { """ - Email used to sign this object. + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). """ - email: String! + estimatedNextSponsorsPayoutInCents: Int! """ - True if the signature is valid and verified by GitHub. + True if this user/organization has a GitHub Sponsors listing. """ - isValid: Boolean! + hasSponsorsListing: Boolean! + id: ID! """ - Hex-encoded ID of the key that signed this object. + The interaction ability settings for this organization. """ - keyId: String + interactionAbility: RepositoryInteractionAbility """ - Payload for GPG signing object. Raw ODB object without the signature header. + The setting value for whether the organization has an IP allow list enabled. """ - payload: String! + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! """ - ASCII-armored signature header from object. + The IP addresses that are allowed to access resources owned by the organization. """ - signature: String! + ipAllowListEntries( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for IP allow list entries returned. + """ + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! """ - GitHub user corresponding to the email signing this commit. + The setting value for whether the organization has IP allow list configuration for installed GitHub Apps enabled. """ - signer: User + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + Whether the given account is sponsoring this user/organization. """ - state: GitSignatureState! + isSponsoredBy( + """ + The target account's login. + """ + accountLogin: String! + ): Boolean! """ - True if the signature was made with GitHub's signing key. + True if the viewer is sponsored by this user/organization. """ - wasSignedByGitHub: Boolean! -} + isSponsoringViewer: Boolean! -""" -A string containing HTML code. -""" -scalar HTML + """ + Whether the organization has verified its profile email and website. + """ + isVerified: Boolean! -""" -Represents a 'head_ref_deleted' event on a given pull request. -""" -type HeadRefDeletedEvent implements Node { """ - Identifies the actor who performed the event. + Showcases a selection of repositories and gists that the profile owner has + either curated or that have been selected automatically based on popularity. """ - actor: Actor + itemShowcase: ProfileItemShowcase! """ - Identifies the date and time when the object was created. + The organization's public profile location. """ - createdAt: DateTime! + location: String """ - Identifies the Ref associated with the `head_ref_deleted` event. + The organization's login name. """ - headRef: Ref + login: String! """ - Identifies the name of the Ref associated with the `head_ref_deleted` event. + A list of all mannequins for this organization. """ - headRefName: String! - id: ID! + mannequins( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for mannequins returned from the connection. + """ + orderBy: MannequinOrder = {field: CREATED_AT, direction: ASC} + ): MannequinConnection! """ - PullRequest referenced by event. + Get the status messages members of this entity have set that are either public or visible only to the organization. """ - pullRequest: PullRequest! -} + memberStatuses( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for user statuses returned from the connection. + """ + orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} + ): UserStatusConnection! -""" -Represents a 'head_ref_force_pushed' event on a given pull request. -""" -type HeadRefForcePushedEvent implements Node { """ - Identifies the actor who performed the event. + Members can fork private repositories in this organization """ - actor: Actor + membersCanForkPrivateRepositories: Boolean! """ - Identifies the after commit SHA for the 'head_ref_force_pushed' event. + A list of users who are members of this organization. """ - afterCommit: Commit + membersWithRole( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): OrganizationMemberConnection! """ - Identifies the before commit SHA for the 'head_ref_force_pushed' event. + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). """ - beforeCommit: Commit + monthlyEstimatedSponsorsIncomeInCents: Int! """ - Identifies the date and time when the object was created. + The organization's public profile name. """ - createdAt: DateTime! - id: ID! + name: String """ - PullRequest referenced by event. + The HTTP path creating a new team """ - pullRequest: PullRequest! + newTeamResourcePath: URI! """ - Identifies the fully qualified ref name for the 'head_ref_force_pushed' event. + The HTTP URL creating a new team """ - ref: Ref -} + newTeamUrl: URI! -""" -Represents a 'head_ref_restored' event on a given pull request. -""" -type HeadRefRestoredEvent implements Node { """ - Identifies the actor who performed the event. + Indicates if email notification delivery for this organization is restricted to verified or approved domains. """ - actor: Actor + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! """ - Identifies the date and time when the object was created. + The billing email for the organization. """ - createdAt: DateTime! - id: ID! + organizationBillingEmail: String """ - PullRequest referenced by event. + A list of packages under the owner. """ - pullRequest: PullRequest! -} + packages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Find packages by their names. + """ + names: [String] + + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter registry package by type. + """ + packageType: PackageType + + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! -""" -Detail needed to display a hovercard for a user -""" -type Hovercard { """ - Each of the contexts for this hovercard + A list of users who have been invited to join this organization. """ - contexts: [HovercardContext!]! -} + pendingMembers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! -""" -An individual line of a hovercard -""" -interface HovercardContext { """ - A string describing this context + A list of repositories and gists this profile owner can pin to their profile. """ - message: String! + pinnableItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter the types of pinnable items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - An octicon to accompany this context + A list of repositories and gists this profile owner has pinned to their profile """ - octicon: String! -} + pinnedItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The possible states in which authentication can be configured with an identity provider. -""" -enum IdentityProviderConfigurationState { - """ - Authentication with an identity provider is configured but not enforced. - """ - CONFIGURED + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Authentication with an identity provider is configured and enforced. - """ - ENFORCED + """ + Filter the types of pinned items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - Authentication with an identity provider is not configured. + Returns how many more items this profile owner can pin to their profile. """ - UNCONFIGURED -} + pinnedItemsRemaining: Int! -""" -Autogenerated input type of ImportProject -""" -input ImportProjectInput { """ - The description of Project. + Find project by number. """ - body: String + project( + """ + The project number to find. + """ + number: Int! + ): Project """ - A unique identifier for the client performing the mutation. + Find a project by number. """ - clientMutationId: String + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - A list of columns containing issues and pull requests. + A list of projects under the owner. """ - columnImports: [ProjectColumnImport!]! + projects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The name of Project. - """ - name: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The name of the Organization or User to create the Project under. - """ - ownerName: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Whether the Project is public or not. - """ - public: Boolean = false -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -Autogenerated return type of ImportProject -""" -type ImportProjectPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder - """ - The new Project! - """ - project: Project -} + """ + Query to search projects by, currently only searching by name. + """ + search: String -""" -Autogenerated input type of InviteEnterpriseAdmin -""" -input InviteEnterpriseAdminInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - The email of the person to invite as an administrator. + The HTTP path listing organization's projects """ - email: String + projectsResourcePath: URI! """ - The ID of the enterprise to which you want to invite an administrator. + The HTTP URL listing organization's projects """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + projectsUrl: URI! """ - The login of a user to invite as an administrator. + A list of projects under the owner. """ - invitee: String + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The role of the administrator. - """ - role: EnterpriseAdministratorRole -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Autogenerated return type of InviteEnterpriseAdmin -""" -type InviteEnterpriseAdminPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The created enterprise administrator invitation. - """ - invitation: EnterpriseAdministratorInvitation @preview(toggledBy: "enterprise-accounts-preview") -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project. -""" -type Issue implements Assignable & Closable & Comment & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { - """ - Reason that the conversation was locked. - """ - activeLockReason: LockReason + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! """ - A list of Users assigned to this object. + Recent projects that this user has modified in the context of the owner. """ - assignees( + recentProjects( """ Returns the elements in the list that come after the specified cursor. """ @@ -10377,47 +26204,86 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): UserConnection! + ): ProjectV2Connection! """ - The actor who authored the comment. + A list of repositories that the user owns. """ - author: Actor + repositories( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] - """ - Author's association with the subject of the comment. - """ - authorAssociation: CommentAuthorAssociation! + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Identifies the body of the issue. - """ - body: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies the body of the issue rendered to HTML. - """ - bodyHTML: HTML! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the body of the issue rendered to text. - """ - bodyText: String! + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean - """ - `true` if the object is closed (definition of closed may depend on type) - """ - closed: Boolean! + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder + + """ + Array of owner's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + organization or user being viewed owns. + """ + ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - Identifies the date and time when the object was closed. + Find Repository. """ - closedAt: DateTime + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + + """ + Name of Repository to find. + """ + name: String! + ): Repository """ - A list of comments associated with the Issue. + Discussion comments this user has authored. """ - comments( + repositoryDiscussionComments( """ Returns the elements in the list that come after the specified cursor. """ @@ -10437,48 +26303,63 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): IssueCommentConnection! - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false - """ - Check if this comment was created via an email reply. - """ - createdViaEmail: Boolean! + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! """ - Identifies the primary key from the database. + Discussions this user has started. """ - databaseId: Int + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The actor who edited the comment. - """ - editor: Actor + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null - """ - The hovercard information for this issue - """ - hovercard( """ - Whether or not to include notification contexts + Returns the elements in the list that come before the specified cursor. """ - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! + before: String - """ - Check if this comment was edited and includes an edit with the creation data - """ - includesCreatedEdit: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter discussions to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionConnection! """ - A list of labels associated with the object. + A list of all repository migrations for this organization. """ - labels( + repositoryMigrations( """ Returns the elements in the list that come after the specified cursor. """ @@ -10498,32 +26379,43 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): LabelConnection - """ - The moment the editor made the last edit - """ - lastEditedAt: DateTime + """ + Ordering options for repository migrations returned. + """ + orderBy: RepositoryMigrationOrder = {field: CREATED_AT, direction: ASC} + + """ + Filter repository migrations by repository name. + """ + repositoryName: String + + """ + Filter repository migrations by state. + """ + state: MigrationState + ): RepositoryMigrationConnection! """ - `true` if the object is locked + When true the organization requires all members, billing managers, and outside + collaborators to enable two-factor authentication. """ - locked: Boolean! + requiresTwoFactorAuthentication: Boolean """ - Identifies the milestone associated with the issue. + The HTTP path for this organization. """ - milestone: Milestone + resourcePath: URI! """ - Identifies the issue number. + The Organization's SAML identity providers """ - number: Int! + samlIdentityProvider: OrganizationIdentityProvider """ - A list of Users that are participating in the Issue conversation. + List of users and organizations this entity is sponsoring. """ - participants( + sponsoring( """ Returns the elements in the list that come after the specified cursor. """ @@ -10543,22 +26435,22 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): UserConnection! + + """ + Ordering options for the users and organizations returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! """ - List of project cards associated with this issue. + List of sponsors for this user or organization. """ - projectCards( + sponsors( """ Returns the elements in the list that come after the specified cursor. """ after: String - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - """ Returns the elements in the list that come before the specified cursor. """ @@ -10573,22 +26465,28 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): ProjectCardConnection! - """ - Identifies when the comment was published at. - """ - publishedAt: DateTime + """ + Ordering options for sponsors returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} - """ - A list of reactions grouped by content left on the subject. - """ - reactionGroups: [ReactionGroup!] + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. + """ + tierId: ID + ): SponsorConnection! """ - A list of Reactions left on the Issue. + Events involving this sponsorable, such as new sponsorships. """ - reactions( + sponsorsActivities( + """ + Filter activities to only the specified actions. + """ + actions: [SponsorsActivityAction!] = [] + """ Returns the elements in the list that come after the specified cursor. """ @@ -10600,14 +26498,16 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N before: String """ - Allows filtering Reactions by emoji. + Returns the first _n_ elements from the list. """ - content: ReactionContent + first: Int """ - Returns the first _n_ elements from the list. + Whether to include those events where this sponsorable acted as the sponsor. + Defaults to only including events where this sponsorable was the recipient + of a sponsorship. """ - first: Int + includeAsSponsor: Boolean = false """ Returns the last _n_ elements from the list. @@ -10615,30 +26515,59 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Allows specifying the order in which reactions are returned. + Ordering options for activity returned from the connection. """ - orderBy: ReactionOrder - ): ReactionConnection! + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} + + """ + Filter activities returned to only those that occurred in the most recent + specified time period. Set to ALL to avoid filtering by when the activity + occurred. Will be ignored if `since` or `until` is given. + """ + period: SponsorsActivityPeriod = MONTH + + """ + Filter activities to those that occurred on or after this time. + """ + since: DateTime + + """ + Filter activities to those that occurred before this time. + """ + until: DateTime + ): SponsorsActivityConnection! """ - The repository associated with this node. + The GitHub Sponsors listing for this user or organization. """ - repository: Repository! + sponsorsListing: SponsorsListing """ - The HTTP path for this issue + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - resourcePath: URI! + sponsorshipForViewerAsSponsor( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - Identifies the state of the issue. + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - state: IssueState! + sponsorshipForViewerAsSponsorable( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - A list of events, comments, commits, etc. associated with the issue. + List of sponsorship updates sent from this sponsorable to sponsors. """ - timeline( + sponsorshipNewsletters( """ Returns the elements in the list that come after the specified cursor. """ @@ -10660,15 +26589,21 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Allows filtering timeline events by a `since` timestamp. + Ordering options for sponsorship updates returned from the connection. """ - since: DateTime - ): IssueTimelineConnection! @deprecated(reason: "`timeline` will be removed Use Issue.timelineItems instead. Removal on 2019-10-01 UTC.") + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - A list of events, comments, commits, etc. associated with the issue. + The sponsorships where this user or organization is the maintainer receiving the funds. """ - timelineItems( + sponsorshipsAsMaintainer( + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true + """ Returns the elements in the list that come after the specified cursor. """ @@ -10685,9 +26620,9 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N first: Int """ - Filter timeline items by type. + Whether or not to include private sponsorships in the result set """ - itemTypes: [IssueTimelineItemsItemType!] + includePrivate: Boolean = false """ Returns the last _n_ elements from the list. @@ -10695,302 +26630,369 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Filter timeline items by a `since` timestamp. + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. """ - since: DateTime + orderBy: SponsorshipOrder + ): SponsorshipConnection! + """ + The sponsorships where this user or organization is the funder. + """ + sponsorshipsAsSponsor( """ - Skips the first _n_ elements in the list. + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. """ - skip: Int - ): IssueTimelineItemsConnection! + activeOnly: Boolean = true - """ - Identifies the issue title. - """ - title: String! + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter sponsorships returned to those for the specified maintainers. That + is, the recipient of the sponsorship is a user or organization with one of + the given logins. + """ + maintainerLogins: [String!] + + """ + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. + """ + orderBy: SponsorshipOrder + ): SponsorshipConnection! """ - The HTTP URL for this issue + Find an organization's team by its slug. """ - url: URI! + team( + """ + The name or slug of the team to find. + """ + slug: String! + ): Team """ - A list of edits to this content. + A list of teams in this organization. """ - userContentEdits( + teams( """ Returns the elements in the list that come after the specified cursor. """ after: String """ - Returns the elements in the list that come before the specified cursor. + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + If true, filters teams that are mapped to an LDAP Group (Enterprise only) + """ + ldapMapped: Boolean + + """ + Ordering options for teams returned from the connection + """ + orderBy: TeamOrder + + """ + If non-null, filters teams according to privacy + """ + privacy: TeamPrivacy + + """ + If non-null, filters teams with query on team name and team slug + """ + query: String + + """ + If non-null, filters teams according to whether the viewer is an admin or member on team """ - before: String + role: TeamRole """ - Returns the first _n_ elements from the list. + If true, restrict to only root teams """ - first: Int + rootTeamsOnly: Boolean = false """ - Returns the last _n_ elements from the list. + User logins to filter by """ - last: Int - ): UserContentEditConnection - - """ - Can user react to this subject - """ - viewerCanReact: Boolean! - - """ - Check if the viewer is able to change their subscription status for the repository. - """ - viewerCanSubscribe: Boolean! - - """ - Check if the current viewer can update this object. - """ - viewerCanUpdate: Boolean! - - """ - Reasons why the current viewer can not update this comment. - """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! - - """ - Did the viewer author this comment. - """ - viewerDidAuthor: Boolean! + userLogins: [String!] + ): TeamConnection! """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + The HTTP path listing organization's teams """ - viewerSubscription: SubscriptionState -} + teamsResourcePath: URI! -""" -Represents a comment on an Issue. -""" -type IssueComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The actor who authored the comment. + The HTTP URL listing organization's teams """ - author: Actor + teamsUrl: URI! """ - Author's association with the subject of the comment. + The amount in United States cents (e.g., 500 = $5.00 USD) that this entity has + spent on GitHub to fund sponsorships. Only returns a value when viewed by the + user themselves or by a user who can manage sponsorships for the requested organization. """ - authorAssociation: CommentAuthorAssociation! + totalSponsorshipAmountAsSponsorInCents( + """ + Filter payments to those that occurred on or after this time. + """ + since: DateTime - """ - The body as Markdown. - """ - body: String! + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] - """ - The body rendered to HTML. - """ - bodyHTML: HTML! + """ + Filter payments to those that occurred before this time. + """ + until: DateTime + ): Int """ - The body rendered to text. + The organization's Twitter username. """ - bodyText: String! + twitterUsername: String """ - Identifies the date and time when the object was created. + Identifies the date and time when the object was last updated. """ - createdAt: DateTime! + updatedAt: DateTime! """ - Check if this comment was created via an email reply. + The HTTP URL for this organization. """ - createdViaEmail: Boolean! + url: URI! """ - Identifies the primary key from the database. + Organization is adminable by the viewer. """ - databaseId: Int + viewerCanAdminister: Boolean! """ - The actor who edited the comment. + Can the viewer pin repositories and gists to the profile? """ - editor: Actor - id: ID! + viewerCanChangePinnedItems: Boolean! """ - Check if this comment was edited and includes an edit with the creation data + Can the current viewer create new projects on this owner. """ - includesCreatedEdit: Boolean! + viewerCanCreateProjects: Boolean! """ - Returns whether or not a comment has been minimized. + Viewer can create repositories on this organization """ - isMinimized: Boolean! + viewerCanCreateRepositories: Boolean! """ - Identifies the issue associated with the comment. + Viewer can create teams on this organization. """ - issue: Issue! + viewerCanCreateTeams: Boolean! """ - The moment the editor made the last edit + Whether or not the viewer is able to sponsor this user/organization. """ - lastEditedAt: DateTime + viewerCanSponsor: Boolean! """ - Returns why the comment was minimized. + Viewer is an active member of this organization. """ - minimizedReason: String + viewerIsAMember: Boolean! """ - Identifies when the comment was published at. + Whether or not this Organization is followed by the viewer. """ - publishedAt: DateTime + viewerIsFollowing: Boolean! """ - Returns the pull request associated with the comment, if this comment was made on a - pull request. + True if the viewer is sponsoring this user/organization. """ - pullRequest: PullRequest + viewerIsSponsoring: Boolean! """ - A list of reactions grouped by content left on the subject. + Whether contributors are required to sign off on web-based commits for repositories in this organization. """ - reactionGroups: [ReactionGroup!] + webCommitSignoffRequired: Boolean! """ - A list of Reactions left on the Issue. + The organization's public profile URL. """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + websiteUrl: URI +} - """ - The repository associated with this node. - """ - repository: Repository! +""" +An audit entry in an organization audit log. +""" +union OrganizationAuditEntry = + MembersCanDeleteReposClearAuditEntry + | MembersCanDeleteReposDisableAuditEntry + | MembersCanDeleteReposEnableAuditEntry + | OauthApplicationCreateAuditEntry + | OrgAddBillingManagerAuditEntry + | OrgAddMemberAuditEntry + | OrgBlockUserAuditEntry + | OrgConfigDisableCollaboratorsOnlyAuditEntry + | OrgConfigEnableCollaboratorsOnlyAuditEntry + | OrgCreateAuditEntry + | OrgDisableOauthAppRestrictionsAuditEntry + | OrgDisableSamlAuditEntry + | OrgDisableTwoFactorRequirementAuditEntry + | OrgEnableOauthAppRestrictionsAuditEntry + | OrgEnableSamlAuditEntry + | OrgEnableTwoFactorRequirementAuditEntry + | OrgInviteMemberAuditEntry + | OrgInviteToBusinessAuditEntry + | OrgOauthAppAccessApprovedAuditEntry + | OrgOauthAppAccessDeniedAuditEntry + | OrgOauthAppAccessRequestedAuditEntry + | OrgRemoveBillingManagerAuditEntry + | OrgRemoveMemberAuditEntry + | OrgRemoveOutsideCollaboratorAuditEntry + | OrgRestoreMemberAuditEntry + | OrgUnblockUserAuditEntry + | OrgUpdateDefaultRepositoryPermissionAuditEntry + | OrgUpdateMemberAuditEntry + | OrgUpdateMemberRepositoryCreationPermissionAuditEntry + | OrgUpdateMemberRepositoryInvitationPermissionAuditEntry + | PrivateRepositoryForkingDisableAuditEntry + | PrivateRepositoryForkingEnableAuditEntry + | RepoAccessAuditEntry + | RepoAddMemberAuditEntry + | RepoAddTopicAuditEntry + | RepoArchivedAuditEntry + | RepoChangeMergeSettingAuditEntry + | RepoConfigDisableAnonymousGitAccessAuditEntry + | RepoConfigDisableCollaboratorsOnlyAuditEntry + | RepoConfigDisableContributorsOnlyAuditEntry + | RepoConfigDisableSockpuppetDisallowedAuditEntry + | RepoConfigEnableAnonymousGitAccessAuditEntry + | RepoConfigEnableCollaboratorsOnlyAuditEntry + | RepoConfigEnableContributorsOnlyAuditEntry + | RepoConfigEnableSockpuppetDisallowedAuditEntry + | RepoConfigLockAnonymousGitAccessAuditEntry + | RepoConfigUnlockAnonymousGitAccessAuditEntry + | RepoCreateAuditEntry + | RepoDestroyAuditEntry + | RepoRemoveMemberAuditEntry + | RepoRemoveTopicAuditEntry + | RepositoryVisibilityChangeDisableAuditEntry + | RepositoryVisibilityChangeEnableAuditEntry + | TeamAddMemberAuditEntry + | TeamAddRepositoryAuditEntry + | TeamChangeParentTeamAuditEntry + | TeamRemoveMemberAuditEntry + | TeamRemoveRepositoryAuditEntry +""" +The connection type for OrganizationAuditEntry. +""" +type OrganizationAuditEntryConnection { """ - The HTTP path for this issue comment + A list of edges. """ - resourcePath: URI! + edges: [OrganizationAuditEntryEdge] """ - Identifies the date and time when the object was last updated. + A list of nodes. """ - updatedAt: DateTime! + nodes: [OrganizationAuditEntry] """ - The HTTP URL for this issue comment + Information to aid in pagination. """ - url: URI! + pageInfo: PageInfo! """ - A list of edits to this content. + Identifies the total count of items in the connection. """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserContentEditConnection + totalCount: Int! +} +""" +Metadata for an audit entry with action org.* +""" +interface OrganizationAuditEntryData { """ - Check if the current viewer can delete this object. + The Organization associated with the Audit Entry. """ - viewerCanDelete: Boolean! + organization: Organization """ - Check if the current viewer can minimize this object. + The name of the Organization. """ - viewerCanMinimize: Boolean! + organizationName: String """ - Can user react to this subject + The HTTP path for the organization """ - viewerCanReact: Boolean! + organizationResourcePath: URI """ - Check if the current viewer can update this object. + The HTTP URL for the organization """ - viewerCanUpdate: Boolean! + organizationUrl: URI +} +""" +An edge in a connection. +""" +type OrganizationAuditEntryEdge { """ - Reasons why the current viewer can not update this comment. + A cursor for use in pagination. """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + cursor: String! """ - Did the viewer author this comment. + The item at the end of the edge. """ - viewerDidAuthor: Boolean! + node: OrganizationAuditEntry } """ -The connection type for IssueComment. +A list of organizations managed by an enterprise. """ -type IssueCommentConnection { +type OrganizationConnection { """ A list of edges. """ - edges: [IssueCommentEdge] + edges: [OrganizationEdge] """ A list of nodes. """ - nodes: [IssueComment] + nodes: [Organization] """ Information to aid in pagination. @@ -11006,7 +27008,7 @@ type IssueCommentConnection { """ An edge in a connection. """ -type IssueCommentEdge { +type OrganizationEdge { """ A cursor for use in pagination. """ @@ -11015,22 +27017,22 @@ type IssueCommentEdge { """ The item at the end of the edge. """ - node: IssueComment + node: Organization } """ -The connection type for Issue. +The connection type for User. """ -type IssueConnection { +type OrganizationEnterpriseOwnerConnection { """ A list of edges. """ - edges: [IssueEdge] + edges: [OrganizationEnterpriseOwnerEdge] """ A list of nodes. """ - nodes: [Issue] + nodes: [User] """ Information to aid in pagination. @@ -11044,13 +27046,38 @@ type IssueConnection { } """ -This aggregates issues opened by a user within one repository. +An enterprise owner in the context of an organization that is part of the enterprise. """ -type IssueContributionsByRepository { +type OrganizationEnterpriseOwnerEdge { """ - The issue contributions. + A cursor for use in pagination. """ - contributions( + cursor: String! + + """ + The item at the end of the edge. + """ + node: User + + """ + The role of the owner with respect to the organization. + """ + organizationRole: RoleInOrganization! +} + +""" +An Identity Provider configured to provision SAML and SCIM identities for Organizations +""" +type OrganizationIdentityProvider implements Node { + """ + The digest algorithm used to sign SAML requests for the Identity Provider. + """ + digestMethod: URI + + """ + External Identities provisioned by this Identity Provider + """ + externalIdentities( """ Returns the elements in the list that come after the specified cursor. """ @@ -11072,223 +27099,207 @@ type IssueContributionsByRepository { last: Int """ - Ordering options for contributions returned from the connection. + Filter to external identities with the users login """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} - ): CreatedIssueContributionConnection! + login: String + + """ + Filter to external identities with valid org membership only + """ + membersOnly: Boolean + + """ + Filter to external identities with the users userName/NameID attribute + """ + userName: String + ): ExternalIdentityConnection! + id: ID! """ - The repository in which the issues were opened. + The x509 certificate used by the Identity Provider to sign assertions and responses. """ - repository: Repository! -} + idpCertificate: X509Certificate -""" -An edge in a connection. -""" -type IssueEdge { """ - A cursor for use in pagination. + The Issuer Entity ID for the SAML Identity Provider """ - cursor: String! + issuer: String """ - The item at the end of the edge. + Organization this Identity Provider belongs to """ - node: Issue -} + organization: Organization -""" -Ways in which to filter lists of issues. -""" -input IssueFilters { """ - List issues assigned to given name. Pass in `null` for issues with no assigned - user, and `*` for issues assigned to any user. + The signature algorithm used to sign SAML requests for the Identity Provider. """ - assignee: String + signatureMethod: URI """ - List issues created by given name. + The URL endpoint for the Identity Provider's SAML SSO. """ - createdBy: String + ssoUrl: URI +} +""" +An Invitation for a user to an organization. +""" +type OrganizationInvitation implements Node { """ - List issues where the list of label names exist on the issue. + Identifies the date and time when the object was created. """ - labels: [String!] + createdAt: DateTime! """ - List issues where the given name is mentioned in the issue. + The email address of the user invited to the organization. """ - mentioned: String + email: String + id: ID! """ - List issues by given milestone argument. If an string representation of an - integer is passed, it should refer to a milestone by its number field. Pass in - `null` for issues with no milestone, and `*` for issues that are assigned to any milestone. + The source of the invitation. """ - milestone: String + invitationSource: OrganizationInvitationSource! """ - List issues that have been updated at or after the given date. + The type of invitation that was sent (e.g. email, user). """ - since: DateTime + invitationType: OrganizationInvitationType! """ - List issues filtered by the list of states given. + The user who was invited to the organization. """ - states: [IssueState!] + invitee: User """ - List issues subscribed to by viewer. + The user who created the invitation. """ - viewerSubscribed: Boolean = false -} - -""" -Used for return value of Repository.issueOrPullRequest. -""" -union IssueOrPullRequest = Issue | PullRequest + inviter: User! -""" -An edge in a connection. -""" -type IssueOrPullRequestEdge { """ - A cursor for use in pagination. + The organization the invite is for """ - cursor: String! + organization: Organization! """ - The item at the end of the edge. + The user's pending role in the organization (e.g. member, owner). """ - node: IssueOrPullRequest + role: OrganizationInvitationRole! } """ -Ways in which lists of issues can be ordered upon return. +The connection type for OrganizationInvitation. """ -input IssueOrder { - """ - The direction in which to order issues by the specified field. - """ - direction: OrderDirection! - +type OrganizationInvitationConnection { """ - The field in which to order issues by. + A list of edges. """ - field: IssueOrderField! -} + edges: [OrganizationInvitationEdge] -""" -Properties by which issue connections can be ordered. -""" -enum IssueOrderField { """ - Order issues by comment count + A list of nodes. """ - COMMENTS + nodes: [OrganizationInvitation] """ - Order issues by creation time + Information to aid in pagination. """ - CREATED_AT + pageInfo: PageInfo! """ - Order issues by update time + Identifies the total count of items in the connection. """ - UPDATED_AT + totalCount: Int! } """ -The possible states of an issue. +An edge in a connection. """ -enum IssueState { +type OrganizationInvitationEdge { """ - An issue that has been closed + A cursor for use in pagination. """ - CLOSED + cursor: String! """ - An issue that is still open + The item at the end of the edge. """ - OPEN + node: OrganizationInvitation } """ -The connection type for IssueTimelineItem. +The possible organization invitation roles. """ -type IssueTimelineConnection { +enum OrganizationInvitationRole { """ - A list of edges. + The user is invited to be an admin of the organization. """ - edges: [IssueTimelineItemEdge] + ADMIN """ - A list of nodes. + The user is invited to be a billing manager of the organization. """ - nodes: [IssueTimelineItem] + BILLING_MANAGER """ - Information to aid in pagination. + The user is invited to be a direct member of the organization. """ - pageInfo: PageInfo! + DIRECT_MEMBER """ - Identifies the total count of items in the connection. + The user's previous role will be reinstated. """ - totalCount: Int! + REINSTATE } """ -An item in an issue timeline +The possible organization invitation sources. """ -union IssueTimelineItem = AssignedEvent | ClosedEvent | Commit | CrossReferencedEvent | DemilestonedEvent | IssueComment | LabeledEvent | LockedEvent | MilestonedEvent | ReferencedEvent | RenamedTitleEvent | ReopenedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent | UnlabeledEvent | UnlockedEvent | UnsubscribedEvent | UserBlockedEvent +enum OrganizationInvitationSource { + """ + The invitation was created from the web interface or from API + """ + MEMBER -""" -An edge in a connection. -""" -type IssueTimelineItemEdge { """ - A cursor for use in pagination. + The invitation was created from SCIM """ - cursor: String! + SCIM """ - The item at the end of the edge. + The invitation was sent before this feature was added """ - node: IssueTimelineItem + UNKNOWN } """ -An item in an issue timeline -""" -union IssueTimelineItems = AddedToProjectEvent | AssignedEvent | ClosedEvent | CommentDeletedEvent | ConvertedNoteToIssueEvent | CrossReferencedEvent | DemilestonedEvent | IssueComment | LabeledEvent | LockedEvent | MarkedAsDuplicateEvent | MentionedEvent | MilestonedEvent | MovedColumnsInProjectEvent | PinnedEvent | ReferencedEvent | RemovedFromProjectEvent | RenamedTitleEvent | ReopenedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent | UnlabeledEvent | UnlockedEvent | UnpinnedEvent | UnsubscribedEvent | UserBlockedEvent - -""" -The connection type for IssueTimelineItems. +The possible organization invitation types. """ -type IssueTimelineItemsConnection { +enum OrganizationInvitationType { """ - A list of edges. + The invitation was to an email address. """ - edges: [IssueTimelineItemsEdge] + EMAIL """ - Identifies the count of items after applying `before` and `after` filters. + The invitation was to an existing user. """ - filteredCount: Int! + USER +} +""" +The connection type for User. +""" +type OrganizationMemberConnection { """ - A list of nodes. + A list of edges. """ - nodes: [IssueTimelineItems] + edges: [OrganizationMemberEdge] """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + A list of nodes. """ - pageCount: Int! + nodes: [User] """ Information to aid in pagination. @@ -11299,229 +27310,277 @@ type IssueTimelineItemsConnection { Identifies the total count of items in the connection. """ totalCount: Int! - - """ - Identifies the date and time when the timeline was last updated. - """ - updatedAt: DateTime! } """ -An edge in a connection. +Represents a user within an organization. """ -type IssueTimelineItemsEdge { +type OrganizationMemberEdge { """ A cursor for use in pagination. """ cursor: String! + """ + Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. + """ + hasTwoFactorEnabled: Boolean + """ The item at the end of the edge. """ - node: IssueTimelineItems + node: User + + """ + The role this user has in the organization. + """ + role: OrganizationMemberRole } """ -The possible item types found in a timeline. +The possible roles within an organization for its members. """ -enum IssueTimelineItemsItemType { +enum OrganizationMemberRole { """ - Represents a 'added_to_project' event on a given issue or pull request. + The user is an administrator of the organization. """ - ADDED_TO_PROJECT_EVENT + ADMIN """ - Represents an 'assigned' event on any assignable object. + The user is a member of the organization. """ - ASSIGNED_EVENT + MEMBER +} +""" +The possible values for the members can create repositories setting on an organization. +""" +enum OrganizationMembersCanCreateRepositoriesSettingValue { """ - Represents a 'closed' event on any `Closable`. + Members will be able to create public and private repositories. """ - CLOSED_EVENT + ALL """ - Represents a 'comment_deleted' event on a given issue or pull request. + Members will not be able to create public or private repositories. """ - COMMENT_DELETED_EVENT + DISABLED """ - Represents a 'converted_note_to_issue' event on a given issue or pull request. + Members will be able to create only internal repositories. """ - CONVERTED_NOTE_TO_ISSUE_EVENT + INTERNAL """ - Represents a mention made by one issue or pull request to another. + Members will be able to create only private repositories. """ - CROSS_REFERENCED_EVENT + PRIVATE +} +""" +A GitHub Enterprise Importer (GEI) organization migration. +""" +type OrganizationMigration implements Node { """ - Represents a 'demilestoned' event on a given issue or pull request. + Identifies the date and time when the object was created. """ - DEMILESTONED_EVENT + createdAt: DateTime! """ - Represents a comment on an Issue. + Identifies the primary key from the database. """ - ISSUE_COMMENT + databaseId: String """ - Represents a 'labeled' event on a given issue or pull request. + The reason the organization migration failed. """ - LABELED_EVENT + failureReason: String + id: ID! """ - Represents a 'locked' event on a given issue or pull request. + The remaining amount of repos to be migrated. """ - LOCKED_EVENT + remainingRepositoriesCount: Int """ - Represents a 'marked_as_duplicate' event on a given issue or pull request. + The name of the source organization to be migrated. """ - MARKED_AS_DUPLICATE_EVENT + sourceOrgName: String! """ - Represents a 'mentioned' event on a given issue or pull request. + The URL of the source organization to migrate. """ - MENTIONED_EVENT + sourceOrgUrl: URI! """ - Represents a 'milestoned' event on a given issue or pull request. + The migration state. """ - MILESTONED_EVENT + state: OrganizationMigrationState! """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. + The name of the target organization. """ - MOVED_COLUMNS_IN_PROJECT_EVENT + targetOrgName: String! """ - Represents a 'pinned' event on a given issue or pull request. + The total amount of repositories to be migrated. """ - PINNED_EVENT + totalRepositoriesCount: Int +} +""" +The Octoshift Organization migration state. +""" +enum OrganizationMigrationState { """ - Represents a 'referenced' event on a given `ReferencedSubject`. + The Octoshift migration has failed. """ - REFERENCED_EVENT + FAILED """ - Represents a 'removed_from_project' event on a given issue or pull request. + The Octoshift migration is in progress. """ - REMOVED_FROM_PROJECT_EVENT + IN_PROGRESS """ - Represents a 'renamed' event on a given issue or pull request + The Octoshift migration has not started. """ - RENAMED_TITLE_EVENT + NOT_STARTED """ - Represents a 'reopened' event on any `Closable`. + The Octoshift migration is performing post repository migrations. """ - REOPENED_EVENT + POST_REPO_MIGRATION """ - Represents a 'subscribed' event on a given `Subscribable`. + The Octoshift migration is performing pre repository migrations. """ - SUBSCRIBED_EVENT + PRE_REPO_MIGRATION """ - Represents a 'transferred' event on a given issue or pull request. + The Octoshift migration has been queued. """ - TRANSFERRED_EVENT + QUEUED """ - Represents an 'unassigned' event on any assignable object. + The Octoshift org migration is performing repository migrations. """ - UNASSIGNED_EVENT + REPO_MIGRATION """ - Represents an 'unlabeled' event on a given issue or pull request. + The Octoshift migration has succeeded. """ - UNLABELED_EVENT + SUCCEEDED +} + +""" +Used for argument of CreateProjectV2 mutation. +""" +union OrganizationOrUser = Organization | User +""" +Ordering options for organization connections. +""" +input OrganizationOrder { """ - Represents an 'unlocked' event on a given issue or pull request. + The ordering direction. """ - UNLOCKED_EVENT + direction: OrderDirection! """ - Represents an 'unpinned' event on a given issue or pull request. + The field to order organizations by. """ - UNPINNED_EVENT + field: OrganizationOrderField! +} +""" +Properties by which organization connections can be ordered. +""" +enum OrganizationOrderField { """ - Represents an 'unsubscribed' event on a given `Subscribable`. + Order organizations by creation time """ - UNSUBSCRIBED_EVENT + CREATED_AT """ - Represents a 'user_blocked' event on a given user. + Order organizations by login """ - USER_BLOCKED_EVENT + LOGIN } """ -Represents a user signing up for a GitHub account. +An organization teams hovercard context """ -type JoinedGitHubContribution implements Contribution { +type OrganizationTeamsHovercardContext implements HovercardContext { """ - Whether this contribution is associated with a record you do not have access to. For - example, your own 'first issue' contribution may have been made on a repository you can no - longer access. + A string describing this context """ - isRestricted: Boolean! + message: String! """ - When this contribution was made. + An octicon to accompany this context """ - occurredAt: DateTime! + octicon: String! """ - The HTTP path for this contribution. + Teams in this organization the user is a member of that are relevant """ - resourcePath: URI! + relevantTeams( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for this contribution. - """ - url: URI! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): TeamConnection! """ - The user who made this contribution. + The path for the full team list for this user """ - user: User! -} + teamsResourcePath: URI! -""" -A label for categorizing Issues or Milestones with a given Repository. -""" -type Label implements Node { """ - Identifies the label color. + The URL for the full team list for this user """ - color: String! + teamsUrl: URI! """ - Identifies the date and time when the label was created. + The total number of teams the user is on in the organization """ - createdAt: DateTime + totalTeamCount: Int! +} +""" +An organization list hovercard context +""" +type OrganizationsHovercardContext implements HovercardContext { """ - A brief description of this label. + A string describing this context """ - description: String - id: ID! + message: String! """ - Indicates whether or not this is a default label. + An octicon to accompany this context """ - isDefault: Boolean! + octicon: String! """ - A list of issues associated with this label. + Organizations this user is a member of that are relevant """ - issues( + relevantOrganizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -11532,55 +27591,77 @@ type Label implements Node { """ before: String - """ - Filtering options for issues returned from the connection. - """ - filterBy: IssueFilters - """ Returns the first _n_ elements from the list. """ first: Int - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for issues returned from the connection. + Ordering options for the User's organizations. """ - orderBy: IssueOrder + orderBy: OrganizationOrder = null + ): OrganizationConnection! - """ - A list of states to filter the issues by. - """ - states: [IssueState!] - ): IssueConnection! + """ + The total number of organizations this user is in + """ + totalOrganizationCount: Int! +} + +""" +Information for an uploaded package. +""" +type Package implements Node { + id: ID! """ - Identifies the label name. + Find the latest version for the package. + """ + latestVersion: PackageVersion + + """ + Identifies the name of the package. """ name: String! """ - A list of pull requests associated with this label. + Identifies the type of the package. """ - pullRequests( + packageType: PackageType! + + """ + The repository this package belongs to. + """ + repository: Repository + + """ + Statistics about package activity. + """ + statistics: PackageStatistics + + """ + Find package version by version string. + """ + version( """ - Returns the elements in the list that come after the specified cursor. + The package version. """ - after: String + version: String! + ): PackageVersion + """ + list of versions for this package + """ + versions( """ - The base ref name to filter the pull requests by. + Returns the elements in the list that come after the specified cursor. """ - baseRefName: String + after: String """ Returns the elements in the list that come before the specified cursor. @@ -11592,66 +27673,118 @@ type Label implements Node { """ first: Int - """ - The head ref name to filter the pull requests by. - """ - headRefName: String - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for pull requests returned from the connection. + Ordering of the returned packages. """ - orderBy: IssueOrder + orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} + ): PackageVersionConnection! +} - """ - A list of states to filter the pull requests by. - """ - states: [PullRequestState!] - ): PullRequestConnection! +""" +The connection type for Package. +""" +type PackageConnection { + """ + A list of edges. + """ + edges: [PackageEdge] """ - The repository associated with this label. + A list of nodes. """ - repository: Repository! + nodes: [Package] """ - The HTTP path for this label. + Information to aid in pagination. """ - resourcePath: URI! + pageInfo: PageInfo! """ - Identifies the date and time when the label was last updated. + Identifies the total count of items in the connection. """ - updatedAt: DateTime + totalCount: Int! +} +""" +An edge in a connection. +""" +type PackageEdge { """ - The HTTP URL for this label. + A cursor for use in pagination. """ - url: URI! + cursor: String! + + """ + The item at the end of the edge. + """ + node: Package } """ -The connection type for Label. +A file in a package version. """ -type LabelConnection { +type PackageFile implements Node { + id: ID! + + """ + MD5 hash of the file. + """ + md5: String + + """ + Name of the file. + """ + name: String! + + """ + The package version this file belongs to. + """ + packageVersion: PackageVersion + + """ + SHA1 hash of the file. + """ + sha1: String + + """ + SHA256 hash of the file. + """ + sha256: String + + """ + Size of the file in bytes. + """ + size: Int + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + URL to download the asset. + """ + url: URI +} + +""" +The connection type for PackageFile. +""" +type PackageFileConnection { """ A list of edges. """ - edges: [LabelEdge] + edges: [PackageFileEdge] """ A list of nodes. """ - nodes: [Label] + nodes: [PackageFile] """ Information to aid in pagination. @@ -11667,7 +27800,7 @@ type LabelConnection { """ An edge in a connection. """ -type LabelEdge { +type PackageFileEdge { """ A cursor for use in pagination. """ @@ -11676,17 +27809,69 @@ type LabelEdge { """ The item at the end of the edge. """ - node: Label + node: PackageFile } """ -An object that can have labels assigned to it. +Ways in which lists of package files can be ordered upon return. """ -interface Labelable { +input PackageFileOrder { """ - A list of labels associated with the object. + The direction in which to order package files by the specified field. """ - labels( + direction: OrderDirection + + """ + The field in which to order package files by. + """ + field: PackageFileOrderField +} + +""" +Properties by which package file connections can be ordered. +""" +enum PackageFileOrderField { + """ + Order package files by creation time + """ + CREATED_AT +} + +""" +Ways in which lists of packages can be ordered upon return. +""" +input PackageOrder { + """ + The direction in which to order packages by the specified field. + """ + direction: OrderDirection + + """ + The field in which to order packages by. + """ + field: PackageOrderField +} + +""" +Properties by which package connections can be ordered. +""" +enum PackageOrderField { + """ + Order packages by creation time + """ + CREATED_AT +} + +""" +Represents an owner of a package. +""" +interface PackageOwner { + id: ID! + + """ + A list of packages under the owner. + """ + packages( """ Returns the elements in the list that come after the specified cursor. """ @@ -11706,370 +27891,471 @@ interface Labelable { Returns the last _n_ elements from the list. """ last: Int - ): LabelConnection + + """ + Find packages by their names. + """ + names: [String] + + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter registry package by type. + """ + packageType: PackageType + + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! } """ -Represents a 'labeled' event on a given issue or pull request. +Represents a object that contains package activity statistics such as downloads. """ -type LabeledEvent implements Node { +type PackageStatistics { """ - Identifies the actor who performed the event. + Number of times the package was downloaded since it was created. """ - actor: Actor + downloadsTotalCount: Int! +} - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! +""" +A version tag contains the mapping between a tag name and a version. +""" +type PackageTag implements Node { id: ID! """ - Identifies the label associated with the 'labeled' event. + Identifies the tag name of the version. """ - label: Label! + name: String! """ - Identifies the `Labelable` associated with the event. + Version that the tag is associated with. """ - labelable: Labelable! + version: PackageVersion } """ -Represents a given language found in repositories. +The possible types of a package. """ -type Language implements Node { +enum PackageType { """ - The color defined for the current language. + A debian package. """ - color: String - id: ID! + DEBIAN """ - The name of the current language. + A docker image. """ - name: String! -} + DOCKER + @deprecated( + reason: "DOCKER will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2021-06-21 UTC." + ) -""" -A list of languages associated with the parent. -""" -type LanguageConnection { """ - A list of edges. + A maven package. """ - edges: [LanguageEdge] + MAVEN + @deprecated( + reason: "MAVEN will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2023-02-10 UTC." + ) """ - A list of nodes. + An npm package. """ - nodes: [Language] + NPM + @deprecated( + reason: "NPM will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2022-11-21 UTC." + ) """ - Information to aid in pagination. + A nuget package. """ - pageInfo: PageInfo! + NUGET + @deprecated( + reason: "NUGET will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2022-11-21 UTC." + ) """ - Identifies the total count of items in the connection. + A python package. """ - totalCount: Int! + PYPI """ - The total size in bytes of files written in that language. + A rubygems package. """ - totalSize: Int! + RUBYGEMS + @deprecated( + reason: "RUBYGEMS will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2022-12-28 UTC." + ) } """ -Represents the language of a repository. +Information about a specific package version. """ -type LanguageEdge { - cursor: String! - node: Language! +type PackageVersion implements Node { + """ + List of files associated with this package version + """ + files( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering of the returned package files. + """ + orderBy: PackageFileOrder = {field: CREATED_AT, direction: ASC} + ): PackageFileConnection! + id: ID! """ - The number of bytes of code written in the language. + The package associated with this version. """ - size: Int! -} + package: Package -""" -Ordering options for language connections. -""" -input LanguageOrder { """ - The ordering direction. + The platform this version was built for. """ - direction: OrderDirection! + platform: String """ - The field to order languages by. + Whether or not this version is a pre-release. """ - field: LanguageOrderField! -} + preRelease: Boolean! -""" -Properties by which language connections can be ordered. -""" -enum LanguageOrderField { """ - Order languages by the size of all files containing the language + The README of this package version. """ - SIZE + readme: String + + """ + The release associated with this package version. + """ + release: Release + + """ + Statistics about package activity. + """ + statistics: PackageVersionStatistics + + """ + The package version summary. + """ + summary: String + + """ + The version string. + """ + version: String! } """ -A repository's open source license +The connection type for PackageVersion. """ -type License implements Node { +type PackageVersionConnection { """ - The full text of the license + A list of edges. """ - body: String! + edges: [PackageVersionEdge] """ - The conditions set by the license + A list of nodes. """ - conditions: [LicenseRule]! + nodes: [PackageVersion] """ - A human-readable description of the license + Information to aid in pagination. """ - description: String + pageInfo: PageInfo! """ - Whether the license should be featured + Identifies the total count of items in the connection. """ - featured: Boolean! + totalCount: Int! +} +""" +An edge in a connection. +""" +type PackageVersionEdge { """ - Whether the license should be displayed in license pickers + A cursor for use in pagination. """ - hidden: Boolean! - id: ID! + cursor: String! """ - Instructions on how to implement the license + The item at the end of the edge. """ - implementation: String + node: PackageVersion +} +""" +Ways in which lists of package versions can be ordered upon return. +""" +input PackageVersionOrder { """ - The lowercased SPDX ID of the license + The direction in which to order package versions by the specified field. """ - key: String! + direction: OrderDirection """ - The limitations set by the license + The field in which to order package versions by. """ - limitations: [LicenseRule]! + field: PackageVersionOrderField +} +""" +Properties by which package version connections can be ordered. +""" +enum PackageVersionOrderField { """ - The license full name specified by + Order package versions by creation time """ - name: String! + CREATED_AT +} +""" +Represents a object that contains package version activity statistics such as downloads. +""" +type PackageVersionStatistics { """ - Customary short name if applicable (e.g, GPLv3) + Number of times the package was downloaded since it was created. """ - nickname: String + downloadsTotalCount: Int! +} +""" +Information about pagination in a connection. +""" +type PageInfo { """ - The permissions set by the license + When paginating forwards, the cursor to continue. """ - permissions: [LicenseRule]! + endCursor: String """ - Whether the license is a pseudo-license placeholder (e.g., other, no-license) + When paginating forwards, are there more items? """ - pseudoLicense: Boolean! + hasNextPage: Boolean! """ - Short identifier specified by + When paginating backwards, are there more items? """ - spdxId: String + hasPreviousPage: Boolean! """ - URL to the license on + When paginating backwards, the cursor to continue. """ - url: URI + startCursor: String } """ -Describes a License's conditions, permissions, and limitations +The possible types of patch statuses. """ -type LicenseRule { +enum PatchStatus { """ - A description of the rule + The file was added. Git status 'A'. """ - description: String! + ADDED """ - The machine-readable rule key + The file's type was changed. Git status 'T'. """ - key: String! + CHANGED """ - The human-readable rule label + The file was copied. Git status 'C'. """ - label: String! -} + COPIED -""" -Autogenerated input type of LinkRepositoryToProject -""" -input LinkRepositoryToProjectInput { """ - A unique identifier for the client performing the mutation. + The file was deleted. Git status 'D'. """ - clientMutationId: String + DELETED """ - The ID of the Project to link to a Repository + The file's contents were changed. Git status 'M'. """ - projectId: ID! @possibleTypes(concreteTypes: ["Project"]) + MODIFIED """ - The ID of the Repository to link to a Project. + The file was renamed. Git status 'R'. """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + RENAMED } """ -Autogenerated return type of LinkRepositoryToProject +Types that can grant permissions on a repository to a user """ -type LinkRepositoryToProjectPayload { +union PermissionGranter = Organization | Repository | Team + +""" +A level of permission and source for a user's access to a repository. +""" +type PermissionSource { """ - A unique identifier for the client performing the mutation. + The organization the repository belongs to. """ - clientMutationId: String + organization: Organization! """ - The linked Project. + The level of access this source has granted to the user. """ - project: Project + permission: DefaultRepositoryPermissionField! """ - The linked Repository. + The source of this permission. """ - repository: Repository + source: PermissionGranter! } """ -Autogenerated input type of LockLockable +Autogenerated input type of PinIssue """ -input LockLockableInput { +input PinIssueInput { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - A reason for why the issue or pull request will be locked. - """ - lockReason: LockReason - - """ - ID of the issue or pull request to be locked. + The ID of the issue to be pinned """ - lockableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Lockable") + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) } """ -Autogenerated return type of LockLockable +Autogenerated return type of PinIssue """ -type LockLockablePayload { +type PinIssuePayload { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The item that was locked. + The issue that was pinned """ - lockedRecord: Lockable + issue: Issue } """ -The possible reasons that an issue or pull request was locked. +Types that can be pinned to a profile page. """ -enum LockReason { +union PinnableItem = Gist | Repository + +""" +The connection type for PinnableItem. +""" +type PinnableItemConnection { """ - The issue or pull request was locked because the conversation was off-topic. + A list of edges. """ - OFF_TOPIC + edges: [PinnableItemEdge] """ - The issue or pull request was locked because the conversation was resolved. + A list of nodes. """ - RESOLVED + nodes: [PinnableItem] """ - The issue or pull request was locked because the conversation was spam. + Information to aid in pagination. """ - SPAM + pageInfo: PageInfo! """ - The issue or pull request was locked because the conversation was too heated. + Identifies the total count of items in the connection. """ - TOO_HEATED + totalCount: Int! } """ -An object that can be locked. +An edge in a connection. """ -interface Lockable { +type PinnableItemEdge { """ - Reason that the conversation was locked. + A cursor for use in pagination. """ - activeLockReason: LockReason + cursor: String! """ - `true` if the object is locked + The item at the end of the edge. """ - locked: Boolean! + node: PinnableItem } """ -Represents a 'locked' event on a given issue or pull request. +Represents items that can be pinned to a profile page or dashboard. """ -type LockedEvent implements Node { +enum PinnableItemType { """ - Identifies the actor who performed the event. + A gist. """ - actor: Actor + GIST """ - Identifies the date and time when the object was created. + An issue. """ - createdAt: DateTime! - id: ID! + ISSUE """ - Reason that the conversation was locked (optional). + An organization. """ - lockReason: LockReason + ORGANIZATION """ - Object that was locked. + A project. """ - lockable: Lockable! -} + PROJECT -""" -A placeholder user for attribution of imported data on GitHub. -""" -type Mannequin implements Actor & Node & UniformResourceLocatable { """ - A URL pointing to the GitHub App's public avatar. + A pull request. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + PULL_REQUEST + + """ + A repository. + """ + REPOSITORY + + """ + A team. + """ + TEAM + + """ + A user. + """ + USER +} +""" +A Pinned Discussion is a discussion pinned to a repository's index page. +""" +type PinnedDiscussion implements Node & RepositoryNode { """ Identifies the date and time when the object was created. """ @@ -12079,472 +28365,576 @@ type Mannequin implements Actor & Node & UniformResourceLocatable { Identifies the primary key from the database. """ databaseId: Int + + """ + The discussion that was pinned. + """ + discussion: Discussion! + + """ + Color stops of the chosen gradient + """ + gradientStopColors: [String!]! id: ID! """ - The username of the actor. + Background texture pattern """ - login: String! + pattern: PinnedDiscussionPattern! """ - The HTML path to this resource. + The actor that pinned this discussion. """ - resourcePath: URI! + pinnedBy: Actor! """ - Identifies the date and time when the object was last updated. + Preconfigured background gradient option """ - updatedAt: DateTime! + preconfiguredGradient: PinnedDiscussionGradient """ - The URL to this resource. + The repository associated with this node. """ - url: URI! + repository: Repository! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! } """ -Autogenerated input type of MarkPullRequestReadyForReview +The connection type for PinnedDiscussion. """ -input MarkPullRequestReadyForReviewInput @preview(toggledBy: "shadow-cat-preview") { +type PinnedDiscussionConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [PinnedDiscussionEdge] """ - ID of the pull request to be marked as ready for review. + A list of nodes. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + nodes: [PinnedDiscussion] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -Autogenerated return type of MarkPullRequestReadyForReview +An edge in a connection. """ -type MarkPullRequestReadyForReviewPayload @preview(toggledBy: "shadow-cat-preview") { +type PinnedDiscussionEdge { """ - A unique identifier for the client performing the mutation. + A cursor for use in pagination. """ - clientMutationId: String + cursor: String! """ - The pull request that is ready for review. + The item at the end of the edge. """ - pullRequest: PullRequest + node: PinnedDiscussion } """ -Represents a 'marked_as_duplicate' event on a given issue or pull request. +Preconfigured gradients that may be used to style discussions pinned within a repository. """ -type MarkedAsDuplicateEvent implements Node { +enum PinnedDiscussionGradient { """ - Identifies the actor who performed the event. + A gradient of blue to mint """ - actor: Actor + BLUE_MINT """ - Identifies the date and time when the object was created. + A gradient of blue to purple """ - createdAt: DateTime! - id: ID! + BLUE_PURPLE + + """ + A gradient of pink to blue + """ + PINK_BLUE + + """ + A gradient of purple to coral + """ + PURPLE_CORAL + + """ + A gradient of red to orange + """ + RED_ORANGE } """ -A public description of a Marketplace category. +Preconfigured background patterns that may be used to style discussions pinned within a repository. """ -type MarketplaceCategory implements Node { +enum PinnedDiscussionPattern { """ - The category's description. + An upward-facing chevron pattern """ - description: String + CHEVRON_UP """ - The technical description of how apps listed in this category work with GitHub. + A hollow dot pattern """ - howItWorks: String - id: ID! + DOT """ - The category's name. + A solid dot pattern """ - name: String! + DOT_FILL """ - How many Marketplace listings have this as their primary category. + A heart pattern """ - primaryListingCount: Int! + HEART_FILL """ - The HTTP path for this Marketplace category. + A plus sign pattern """ - resourcePath: URI! + PLUS """ - How many Marketplace listings have this as their secondary category. + A lightning bolt pattern """ - secondaryListingCount: Int! + ZAP +} + +""" +Represents a 'pinned' event on a given issue or pull request. +""" +type PinnedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor """ - The short name of the category used in its URL. + Identifies the date and time when the object was created. """ - slug: String! + createdAt: DateTime! + id: ID! """ - The HTTP URL for this Marketplace category. + Identifies the issue associated with the event. """ - url: URI! + issue: Issue! } """ -A listing in the GitHub integration marketplace. +A Pinned Issue is a issue pinned to a repository's index page. """ -type MarketplaceListing implements Node { +type PinnedIssue implements Node { """ - The GitHub App this listing represents. + Identifies the primary key from the database. """ - app: App + databaseId: Int + id: ID! """ - URL to the listing owner's company site. + The issue that was pinned. """ - companyUrl: URI + issue: Issue! """ - The HTTP path for configuring access to the listing's integration or OAuth app + The actor that pinned this issue. """ - configurationResourcePath: URI! + pinnedBy: Actor! """ - The HTTP URL for configuring access to the listing's integration or OAuth app + The repository that this issue was pinned to. """ - configurationUrl: URI! + repository: Repository! +} +""" +The connection type for PinnedIssue. +""" +type PinnedIssueConnection { """ - URL to the listing's documentation. + A list of edges. """ - documentationUrl: URI + edges: [PinnedIssueEdge] """ - The listing's detailed description. + A list of nodes. """ - extendedDescription: String + nodes: [PinnedIssue] """ - The listing's detailed description rendered to HTML. + Information to aid in pagination. """ - extendedDescriptionHTML: HTML! + pageInfo: PageInfo! """ - The listing's introductory description. + Identifies the total count of items in the connection. """ - fullDescription: String! + totalCount: Int! +} +""" +An edge in a connection. +""" +type PinnedIssueEdge { """ - The listing's introductory description rendered to HTML. + A cursor for use in pagination. """ - fullDescriptionHTML: HTML! + cursor: String! """ - Whether this listing has been submitted for review from GitHub for approval to be displayed in the Marketplace. + The item at the end of the edge. """ - hasApprovalBeenRequested: Boolean! @deprecated(reason: "`hasApprovalBeenRequested` will be removed. Use `isVerificationPendingFromDraft` instead. Removal on 2019-10-01 UTC.") + node: PinnedIssue +} + +""" +An ISO-8601 encoded UTC date string with millisecond precision. +""" +scalar PreciseDateTime +""" +Audit log entry for a private_repository_forking.disable event. +""" +type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Does this listing have any plans with a free trial? + The action name """ - hasPublishedFreeTrialPlans: Boolean! + action: String! """ - Does this listing have a terms of service link? + The user who initiated the action """ - hasTermsOfService: Boolean! + actor: AuditEntryActor """ - A technical description of how this app works with GitHub. + The IP address of the actor """ - howItWorks: String + actorIp: String """ - The listing's technical description rendered to HTML. + A readable representation of the actor's location """ - howItWorksHTML: HTML! - id: ID! + actorLocation: ActorLocation """ - URL to install the product to the viewer's account or organization. + The username of the user who initiated the action """ - installationUrl: URI + actorLogin: String """ - Whether this listing's app has been installed for the current viewer + The HTTP path for the actor. """ - installedForViewer: Boolean! + actorResourcePath: URI """ - Whether this listing has been approved for display in the Marketplace. + The HTTP URL for the actor. """ - isApproved: Boolean! @deprecated(reason: "`isApproved` will be removed. Use `isPublic` instead. Removal on 2019-10-01 UTC.") + actorUrl: URI """ - Whether this listing has been removed from the Marketplace. + The time the action was initiated """ - isArchived: Boolean! + createdAt: PreciseDateTime! """ - Whether this listing has been removed from the Marketplace. + The HTTP path for this enterprise. """ - isDelisted: Boolean! @deprecated(reason: "`isDelisted` will be removed. Use `isArchived` instead. Removal on 2019-10-01 UTC.") + enterpriseResourcePath: URI """ - Whether this listing is still an editable draft that has not been submitted - for review and is not publicly visible in the Marketplace. + The slug of the enterprise. """ - isDraft: Boolean! + enterpriseSlug: String """ - Whether the product this listing represents is available as part of a paid plan. + The HTTP URL for this enterprise. """ - isPaid: Boolean! + enterpriseUrl: URI + id: ID! """ - Whether this listing has been approved for display in the Marketplace. + The corresponding operation type for the action """ - isPublic: Boolean! + operationType: OperationType """ - Whether this listing has been rejected by GitHub for display in the Marketplace. + The Organization associated with the Audit Entry. """ - isRejected: Boolean! + organization: Organization """ - Whether this listing has been approved for unverified display in the Marketplace. + The name of the Organization. """ - isUnverified: Boolean! + organizationName: String """ - Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace. + The HTTP path for the organization """ - isUnverifiedPending: Boolean! + organizationResourcePath: URI """ - Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + The HTTP URL for the organization """ - isVerificationPendingFromDraft: Boolean! + organizationUrl: URI """ - Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + The repository associated with the action """ - isVerificationPendingFromUnverified: Boolean! + repository: Repository """ - Whether this listing has been approved for verified display in the Marketplace. + The name of the repository """ - isVerified: Boolean! + repositoryName: String """ - The hex color code, without the leading '#', for the logo background. + The HTTP path for the repository """ - logoBackgroundColor: String! + repositoryResourcePath: URI """ - URL for the listing's logo image. + The HTTP URL for the repository """ - logoUrl( - """ - The size in pixels of the resulting square image. - """ - size: Int = 400 - ): URI + repositoryUrl: URI """ - The listing's full name. + The user affected by the action """ - name: String! + user: User """ - The listing's very short description without a trailing period or ampersands. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - normalizedShortDescription: String! + userLogin: String """ - URL to the listing's detailed pricing. + The HTTP path for the user. """ - pricingUrl: URI + userResourcePath: URI """ - The category that best describes the listing. + The HTTP URL for the user. """ - primaryCategory: MarketplaceCategory! + userUrl: URI +} +""" +Audit log entry for a private_repository_forking.enable event. +""" +type PrivateRepositoryForkingEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - URL to the listing's privacy policy, may return an empty string for listings that do not require a privacy policy URL. + The action name """ - privacyPolicyUrl: URI! + action: String! """ - The HTTP path for the Marketplace listing. + The user who initiated the action """ - resourcePath: URI! + actor: AuditEntryActor """ - The URLs for the listing's screenshots. + The IP address of the actor """ - screenshotUrls: [String]! + actorIp: String """ - An alternate category that describes the listing. + A readable representation of the actor's location """ - secondaryCategory: MarketplaceCategory + actorLocation: ActorLocation """ - The listing's very short description. + The username of the user who initiated the action """ - shortDescription: String! + actorLogin: String """ - The short name of the listing used in its URL. + The HTTP path for the actor. """ - slug: String! + actorResourcePath: URI """ - URL to the listing's status page. + The HTTP URL for the actor. """ - statusUrl: URI + actorUrl: URI """ - An email address for support for this listing's app. + The time the action was initiated """ - supportEmail: String + createdAt: PreciseDateTime! """ - Either a URL or an email address for support for this listing's app, may - return an empty string for listings that do not require a support URL. + The HTTP path for this enterprise. """ - supportUrl: URI! + enterpriseResourcePath: URI """ - URL to the listing's terms of service. + The slug of the enterprise. """ - termsOfServiceUrl: URI + enterpriseSlug: String """ - The HTTP URL for the Marketplace listing. + The HTTP URL for this enterprise. """ - url: URI! + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String """ - Can the current viewer add plans for this Marketplace listing. + The HTTP path for the organization """ - viewerCanAddPlans: Boolean! + organizationResourcePath: URI """ - Can the current viewer approve this Marketplace listing. + The HTTP URL for the organization """ - viewerCanApprove: Boolean! + organizationUrl: URI """ - Can the current viewer delist this Marketplace listing. + The repository associated with the action """ - viewerCanDelist: Boolean! + repository: Repository """ - Can the current viewer edit this Marketplace listing. + The name of the repository """ - viewerCanEdit: Boolean! + repositoryName: String """ - Can the current viewer edit the primary and secondary category of this - Marketplace listing. + The HTTP path for the repository """ - viewerCanEditCategories: Boolean! + repositoryResourcePath: URI """ - Can the current viewer edit the plans for this Marketplace listing. + The HTTP URL for the repository """ - viewerCanEditPlans: Boolean! + repositoryUrl: URI """ - Can the current viewer return this Marketplace listing to draft state - so it becomes editable again. + The user affected by the action """ - viewerCanRedraft: Boolean! + user: User """ - Can the current viewer reject this Marketplace listing by returning it to - an editable draft state or rejecting it entirely. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanReject: Boolean! + userLogin: String """ - Can the current viewer request this listing be reviewed for display in - the Marketplace as verified. + The HTTP path for the user. """ - viewerCanRequestApproval: Boolean! + userResourcePath: URI """ - Indicates whether the current user has an active subscription to this Marketplace listing. + The HTTP URL for the user. """ - viewerHasPurchased: Boolean! + userUrl: URI +} +""" +A curatable list of repositories relating to a repository owner, which defaults +to showing the most popular repositories they own. +""" +type ProfileItemShowcase { """ - Indicates if the current user has purchased a subscription to this Marketplace listing - for all of the organizations the user owns. + Whether or not the owner has pinned any repositories or gists. """ - viewerHasPurchasedForAllOrganizations: Boolean! + hasPinnedItems: Boolean! """ - Does the current viewer role allow them to administer this Marketplace listing. + The repositories and gists in the showcase. If the profile owner has any + pinned items, those will be returned. Otherwise, the profile owner's popular + repositories will be returned. """ - viewerIsListingAdmin: Boolean! + items( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PinnableItemConnection! } """ -Look up Marketplace Listings +Represents any entity on GitHub that has a profile page. """ -type MarketplaceListingConnection { +interface ProfileOwner { """ - A list of edges. + Determine if this repository owner has any items that can be pinned to their profile. """ - edges: [MarketplaceListingEdge] + anyPinnableItems( + """ + Filter to only a particular kind of pinnable item. + """ + type: PinnableItemType + ): Boolean! """ - A list of nodes. + The public profile email. """ - nodes: [MarketplaceListing] + email: String + id: ID! """ - Information to aid in pagination. + Showcases a selection of repositories and gists that the profile owner has + either curated or that have been selected automatically based on popularity. """ - pageInfo: PageInfo! + itemShowcase: ProfileItemShowcase! """ - Identifies the total count of items in the connection. + The public profile location. """ - totalCount: Int! -} + location: String -""" -An edge in a connection. -""" -type MarketplaceListingEdge { """ - A cursor for use in pagination. + The username used to login. """ - cursor: String! + login: String! """ - The item at the end of the edge. + The public profile name. """ - node: MarketplaceListing -} + name: String -""" -Entities that have members who can set status messages. -""" -interface MemberStatusable { """ - Get the status messages members of this entity have set that are either public or visible only to the organization. + A list of repositories and gists this profile owner can pin to their profile. """ - memberStatuses( + pinnableItems( """ Returns the elements in the list that come after the specified cursor. """ @@ -12566,563 +28956,751 @@ interface MemberStatusable { last: Int """ - Ordering options for user statuses returned from the connection. + Filter the types of pinnable items that are returned. """ - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! -} + types: [PinnableItemType!] + ): PinnableItemConnection! -""" -Audit log entry for a members_can_delete_repos.clear event. -""" -type MembersCanDeleteReposClearAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + A list of repositories and gists this profile owner has pinned to their profile """ - action: String! + pinnedItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The user who initiated the action - """ - actor: AuditEntryActor + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The IP address of the actor - """ - actorIp: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Filter the types of pinned items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - The HTTP path for the actor. + Returns how many more items this profile owner can pin to their profile. """ - actorResourcePath: URI + pinnedItemsRemaining: Int! """ - The HTTP URL for the actor. + Can the viewer pin repositories and gists to the profile? """ - actorUrl: URI + viewerCanChangePinnedItems: Boolean! """ - The time the action was initiated + The public profile website URL. """ - createdAt: PreciseDateTime! + websiteUrl: URI +} +""" +Projects manage issues, pull requests and notes within a project owner. +""" +type Project implements Closable & Node & Updatable { """ - The HTTP path for this enterprise. + The project's description body. """ - enterpriseResourcePath: URI + body: String """ - The slug of the enterprise. + The projects description body rendered to HTML. """ - enterpriseSlug: String + bodyHTML: HTML! """ - The HTTP URL for this enterprise. + Indicates if the object is closed (definition of closed may depend on type) """ - enterpriseUrl: URI - id: ID! + closed: Boolean! """ - The corresponding operation type for the action + Identifies the date and time when the object was closed. """ - operationType: OperationType + closedAt: DateTime """ - The Organization associated with the Audit Entry. + List of columns in the project """ - organization: Organization + columns( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectColumnConnection! """ - The name of the Organization. + Identifies the date and time when the object was created. """ - organizationName: String + createdAt: DateTime! """ - The HTTP path for the organization + The actor who originally created the project. """ - organizationResourcePath: URI + creator: Actor """ - The HTTP URL for the organization + Identifies the primary key from the database. """ - organizationUrl: URI + databaseId: Int + id: ID! """ - The user affected by the action + The project's name. """ - user: User + name: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The project's number. """ - userLogin: String + number: Int! """ - The HTTP path for the user. + The project's owner. Currently limited to repositories, organizations, and users. """ - userResourcePath: URI + owner: ProjectOwner! """ - The HTTP URL for the user. + List of pending cards in this project """ - userUrl: URI -} + pendingCards( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + A list of archived states to filter the cards by + """ + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! -""" -Audit log entry for a members_can_delete_repos.disable event. -""" -type MembersCanDeleteReposDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + Project progress details. """ - action: String! + progress: ProjectProgress! """ - The user who initiated the action + The HTTP path for this project """ - actor: AuditEntryActor + resourcePath: URI! """ - The IP address of the actor + Whether the project is open or closed. """ - actorIp: String + state: ProjectState! """ - A readable representation of the actor's location + Identifies the date and time when the object was last updated. """ - actorLocation: ActorLocation + updatedAt: DateTime! """ - The username of the user who initiated the action + The HTTP URL for this project """ - actorLogin: String + url: URI! """ - The HTTP path for the actor. + Check if the current viewer can update this object. """ - actorResourcePath: URI + viewerCanUpdate: Boolean! +} +""" +A card in a project. +""" +type ProjectCard implements Node { """ - The HTTP URL for the actor. + The project column this card is associated under. A card may only belong to one + project column at a time. The column field will be null if the card is created + in a pending state and has yet to be associated with a column. Once cards are + associated with a column, they will not become pending in the future. """ - actorUrl: URI + column: ProjectColumn """ - The time the action was initiated + The card content item """ - createdAt: PreciseDateTime! + content: ProjectCardItem """ - The HTTP path for this enterprise. + Identifies the date and time when the object was created. """ - enterpriseResourcePath: URI + createdAt: DateTime! """ - The slug of the enterprise. + The actor who created this card """ - enterpriseSlug: String + creator: Actor """ - The HTTP URL for this enterprise. + Identifies the primary key from the database. """ - enterpriseUrl: URI + databaseId: Int id: ID! """ - The corresponding operation type for the action + Whether the card is archived """ - operationType: OperationType + isArchived: Boolean! """ - The Organization associated with the Audit Entry. + The card note """ - organization: Organization + note: String """ - The name of the Organization. + The project that contains this card. """ - organizationName: String + project: Project! """ - The HTTP path for the organization + The HTTP path for this card """ - organizationResourcePath: URI + resourcePath: URI! """ - The HTTP URL for the organization + The state of ProjectCard """ - organizationUrl: URI + state: ProjectCardState """ - The user affected by the action + Identifies the date and time when the object was last updated. """ - user: User + updatedAt: DateTime! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The HTTP URL for this card """ - userLogin: String + url: URI! +} +""" +The possible archived states of a project card. +""" +enum ProjectCardArchivedState { """ - The HTTP path for the user. + A project card that is archived """ - userResourcePath: URI + ARCHIVED """ - The HTTP URL for the user. + A project card that is not archived """ - userUrl: URI + NOT_ARCHIVED } """ -Audit log entry for a members_can_delete_repos.enable event. +The connection type for ProjectCard. """ -type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +type ProjectCardConnection { """ - The action name + A list of edges. """ - action: String! + edges: [ProjectCardEdge] """ - The user who initiated the action + A list of nodes. """ - actor: AuditEntryActor + nodes: [ProjectCard] """ - The IP address of the actor + Information to aid in pagination. """ - actorIp: String + pageInfo: PageInfo! """ - A readable representation of the actor's location + Identifies the total count of items in the connection. """ - actorLocation: ActorLocation + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectCardEdge { """ - The username of the user who initiated the action + A cursor for use in pagination. """ - actorLogin: String + cursor: String! """ - The HTTP path for the actor. + The item at the end of the edge. """ - actorResourcePath: URI + node: ProjectCard +} +""" +An issue or PR and its owning repository to be used in a project card. +""" +input ProjectCardImport { """ - The HTTP URL for the actor. + The issue or pull request number. """ - actorUrl: URI + number: Int! """ - The time the action was initiated + Repository name with owner (owner/repository). """ - createdAt: PreciseDateTime! + repository: String! +} + +""" +Types that can be inside Project Cards. +""" +union ProjectCardItem = Issue | PullRequest +""" +Various content states of a ProjectCard +""" +enum ProjectCardState { """ - The HTTP path for this enterprise. + The card has content only. """ - enterpriseResourcePath: URI + CONTENT_ONLY """ - The slug of the enterprise. + The card has a note only. """ - enterpriseSlug: String + NOTE_ONLY """ - The HTTP URL for this enterprise. + The card is redacted. """ - enterpriseUrl: URI - id: ID! + REDACTED +} +""" +A column inside a project. +""" +type ProjectColumn implements Node { """ - The corresponding operation type for the action + List of cards in the column """ - operationType: OperationType + cards( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + A list of archived states to filter the cards by + """ + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! """ - The Organization associated with the Audit Entry. + Identifies the date and time when the object was created. """ - organization: Organization + createdAt: DateTime! """ - The name of the Organization. + Identifies the primary key from the database. """ - organizationName: String + databaseId: Int + id: ID! """ - The HTTP path for the organization + The project column's name. """ - organizationResourcePath: URI + name: String! """ - The HTTP URL for the organization + The project that contains this column. """ - organizationUrl: URI + project: Project! """ - The user affected by the action + The semantic purpose of the column """ - user: User + purpose: ProjectColumnPurpose """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The HTTP path for this project column """ - userLogin: String + resourcePath: URI! """ - The HTTP path for the user. + Identifies the date and time when the object was last updated. """ - userResourcePath: URI + updatedAt: DateTime! """ - The HTTP URL for the user. + The HTTP URL for this project column """ - userUrl: URI + url: URI! } """ -Represents a 'mentioned' event on a given issue or pull request. +The connection type for ProjectColumn. """ -type MentionedEvent implements Node { +type ProjectColumnConnection { """ - Identifies the actor who performed the event. + A list of edges. """ - actor: Actor + edges: [ProjectColumnEdge] """ - Identifies the date and time when the object was created. + A list of nodes. """ - createdAt: DateTime! + nodes: [ProjectColumn] """ - Identifies the primary key from the database. + Information to aid in pagination. """ - databaseId: Int - id: ID! + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -Autogenerated input type of MergeBranch +An edge in a connection. """ -input MergeBranchInput { +type ProjectColumnEdge { """ - The name of the base branch that the provided head will be merged into. + A cursor for use in pagination. """ - base: String! + cursor: String! """ - A unique identifier for the client performing the mutation. + The item at the end of the edge. """ - clientMutationId: String + node: ProjectColumn +} +""" +A project column and a list of its issues and PRs. +""" +input ProjectColumnImport { """ - Message to use for the merge commit. If omitted, a default will be used. + The name of the column. """ - commitMessage: String + columnName: String! """ - The head to merge into the base branch. This can be a branch name or a commit GitObjectID. + A list of issues and pull requests in the column. """ - head: String! + issues: [ProjectCardImport!] """ - The Node ID of the Repository containing the base branch that will be modified. + The position of the column, starting from 0. """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + position: Int! } """ -Autogenerated return type of MergeBranch +The semantic purpose of the column - todo, in progress, or done. """ -type MergeBranchPayload { +enum ProjectColumnPurpose { """ - A unique identifier for the client performing the mutation. + The column contains cards which are complete """ - clientMutationId: String + DONE """ - The resulting merge Commit. + The column contains cards which are currently being worked on """ - mergeCommit: Commit + IN_PROGRESS + + """ + The column contains cards still to be worked on + """ + TODO } """ -Autogenerated input type of MergePullRequest +A list of projects associated with the owner. """ -input MergePullRequestInput { +type ProjectConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [ProjectEdge] """ - Commit body to use for the merge commit; if omitted, a default message will be used + A list of nodes. """ - commitBody: String + nodes: [Project] """ - Commit headline to use for the merge commit; if omitted, a default message will be used. + Information to aid in pagination. """ - commitHeadline: String + pageInfo: PageInfo! """ - OID that the pull request head ref must match to allow merge; if omitted, no check is performed. + Identifies the total count of items in the connection. """ - expectedHeadOid: GitObjectID + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectEdge { """ - The merge method to use. If omitted, defaults to 'MERGE' + A cursor for use in pagination. """ - mergeMethod: PullRequestMergeMethod = MERGE + cursor: String! """ - ID of the pull request to be merged. + The item at the end of the edge. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + node: Project } """ -Autogenerated return type of MergePullRequest +Ways in which lists of projects can be ordered upon return. """ -type MergePullRequestPayload { +input ProjectOrder { """ - A unique identifier for the client performing the mutation. + The direction in which to order projects by the specified field. """ - clientMutationId: String + direction: OrderDirection! """ - The pull request that was merged. + The field in which to order projects by. """ - pullRequest: PullRequest + field: ProjectOrderField! } """ -Detailed status information about a pull request merge. +Properties by which project connections can be ordered. """ -enum MergeStateStatus { +enum ProjectOrderField { """ - The head ref is out of date. + Order projects by creation time """ - BEHIND + CREATED_AT """ - The merge is blocked. + Order projects by name """ - BLOCKED + NAME """ - Mergeable and passing commit status. + Order projects by update time """ - CLEAN + UPDATED_AT +} + +""" +Represents an owner of a Project. +""" +interface ProjectOwner { + id: ID! """ - The merge commit cannot be cleanly created. + Find project by number. """ - DIRTY + project( + """ + The project number to find. + """ + number: Int! + ): Project """ - The merge is blocked due to the pull request being a draft. + A list of projects under the owner. """ - DRAFT + projects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder + + """ + Query to search projects by, currently only searching by name. + """ + search: String + + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - Mergeable with passing commit status and pre-receive hooks. + The HTTP path listing owners projects """ - HAS_HOOKS + projectsResourcePath: URI! """ - The state cannot currently be determined. + The HTTP URL listing owners projects """ - UNKNOWN + projectsUrl: URI! """ - Mergeable with non-passing commit status. + Can the current viewer create new projects on this owner. """ - UNSTABLE + viewerCanCreateProjects: Boolean! } """ -Whether or not a PullRequest can be merged. +Project progress stats. """ -enum MergeableState { +type ProjectProgress { """ - The pull request cannot be merged due to merge conflicts. + The number of done cards. """ - CONFLICTING + doneCount: Int! """ - The pull request can be merged. + The percentage of done cards. """ - MERGEABLE + donePercentage: Float! """ - The mergeability of the pull request is still being calculated. + Whether progress tracking is enabled and cards with purpose exist for this project """ - UNKNOWN -} + enabled: Boolean! -""" -Represents a 'merged' event on a given pull request. -""" -type MergedEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + The number of in-progress cards. """ - actor: Actor + inProgressCount: Int! """ - Identifies the commit associated with the `merge` event. + The percentage of in-progress cards. """ - commit: Commit + inProgressPercentage: Float! """ - Identifies the date and time when the object was created. + The number of to do cards. """ - createdAt: DateTime! - id: ID! + todoCount: Int! """ - Identifies the Ref associated with the `merge` event. + The percentage of to do cards. """ - mergeRef: Ref + todoPercentage: Float! +} +""" +State of the project; either 'open' or 'closed' +""" +enum ProjectState { """ - Identifies the name of the Ref associated with the `merge` event. + The project is closed. """ - mergeRefName: String! + CLOSED """ - PullRequest referenced by event. + The project is open. """ - pullRequest: PullRequest! + OPEN +} +""" +GitHub-provided templates for Projects +""" +enum ProjectTemplate { """ - The HTTP path for this merged event. + Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. """ - resourcePath: URI! + AUTOMATED_KANBAN_V2 """ - The HTTP URL for this merged event. + Create a board with triggers to automatically move cards across columns with review automation. """ - url: URI! + AUTOMATED_REVIEWS_KANBAN + + """ + Create a board with columns for To do, In progress and Done. + """ + BASIC_KANBAN + + """ + Create a board to triage and prioritize bugs with To do, priority, and Done columns. + """ + BUG_TRIAGE } """ -Represents a Milestone object on a given repository. +New projects that manage issues, pull requests and drafts using tables and boards. """ -type Milestone implements Closable & Node & UniformResourceLocatable { +type ProjectV2 implements Closable & Node & Updatable { """ - `true` if the object is closed (definition of closed may depend on type) + Returns true if the project is closed. """ closed: Boolean! @@ -13137,30 +29715,29 @@ type Milestone implements Closable & Node & UniformResourceLocatable { createdAt: DateTime! """ - Identifies the actor who created the milestone. + The actor who originally created the project. """ creator: Actor """ - Identifies the description of the milestone. - """ - description: String - - """ - Identifies the due date of the milestone. + Identifies the primary key from the database. """ - dueOn: DateTime - id: ID! + databaseId: Int """ - Just for debugging on review-lab + A field of the project """ - issuePrioritiesDebug: String! + field( + """ + The name of the field + """ + name: String! + ): ProjectV2FieldConfiguration """ - A list of issues associated with the milestone. + List of fields and their constraints in the project """ - issues( + fields( """ Returns the elements in the list that come after the specified cursor. """ @@ -13172,55 +29749,81 @@ type Milestone implements Closable & Node & UniformResourceLocatable { before: String """ - Filtering options for issues returned from the connection. + Returns the first _n_ elements from the list. """ - filterBy: IssueFilters + first: Int """ - Returns the first _n_ elements from the list. + Returns the last _n_ elements from the list. """ - first: Int + last: Int """ - A list of label names to filter the pull requests by. + Ordering options for project v2 fields returned from the connection """ - labels: [String!] + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection! + id: ID! + """ + List of items in the project + """ + items( """ - Returns the last _n_ elements from the list. + Returns the elements in the list that come after the specified cursor. """ - last: Int + after: String """ - Ordering options for issues returned from the connection. + Returns the elements in the list that come before the specified cursor. """ - orderBy: IssueOrder + before: String """ - A list of states to filter the issues by. + Returns the first _n_ elements from the list. """ - states: [IssueState!] - ): IssueConnection! + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for project v2 items returned from the connection + """ + orderBy: ProjectV2ItemOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemConnection! """ - Identifies the number of the milestone. + The project's number. """ number: Int! """ - A list of pull requests associated with the milestone. + The project's owner. Currently limited to organizations and users. """ - pullRequests( + owner: ProjectV2Owner! + + """ + Returns true if the project is public. + """ + public: Boolean! + + """ + The project's readme. + """ + readme: String + + """ + The repositories the project is linked to. + """ + repositories( """ Returns the elements in the list that come after the specified cursor. """ after: String - """ - The base ref name to filter the pull requests by. - """ - baseRefName: String - """ Returns the elements in the list that come before the specified cursor. """ @@ -13232,75 +29835,170 @@ type Milestone implements Closable & Node & UniformResourceLocatable { first: Int """ - The head ref name to filter the pull requests by. + Returns the last _n_ elements from the list. """ - headRefName: String + last: Int """ - A list of label names to filter the pull requests by. + Ordering options for repositories returned from the connection """ - labels: [String!] + orderBy: RepositoryOrder = {field: CREATED_AT, direction: DESC} + ): RepositoryConnection! + + """ + The HTTP path for this project + """ + resourcePath: URI! + + """ + The project's short description. + """ + shortDescription: String + """ + The teams the project is linked to. + """ + teams( """ - Returns the last _n_ elements from the list. + Returns the elements in the list that come after the specified cursor. """ - last: Int + after: String """ - Ordering options for pull requests returned from the connection. + Returns the elements in the list that come before the specified cursor. """ - orderBy: IssueOrder + before: String """ - A list of states to filter the pull requests by. + Returns the first _n_ elements from the list. """ - states: [PullRequestState!] - ): PullRequestConnection! + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for teams returned from this connection. + """ + orderBy: TeamOrder = {field: NAME, direction: ASC} + ): TeamConnection! """ - The repository associated with this milestone. + The project's name. """ - repository: Repository! + title: String! """ - The HTTP path for this milestone + Identifies the date and time when the object was last updated. """ - resourcePath: URI! + updatedAt: DateTime! """ - Identifies the state of the milestone. + The HTTP URL for this project """ - state: MilestoneState! + url: URI! """ - Identifies the title of the milestone. + A view of the project """ - title: String! + view( + """ + The number of a view belonging to the project + """ + number: Int! + ): ProjectV2View """ - Identifies the date and time when the object was last updated. + Check if the current viewer can update this object. """ - updatedAt: DateTime! + viewerCanUpdate: Boolean! """ - The HTTP URL for this milestone + List of views in the project """ - url: URI! + views( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for project v2 views returned from the connection + """ + orderBy: ProjectV2ViewOrder = {field: POSITION, direction: ASC} + ): ProjectV2ViewConnection! + + """ + A workflow of the project + """ + workflow( + """ + The number of a workflow belonging to the project + """ + number: Int! + ): ProjectV2Workflow + + """ + List of the workflows in the project + """ + workflows( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for project v2 workflows returned from the connection + """ + orderBy: ProjectV2WorkflowOrder = {field: NAME, direction: ASC} + ): ProjectV2WorkflowConnection! } """ -The connection type for Milestone. +The connection type for ProjectV2. """ -type MilestoneConnection { +type ProjectV2Connection { """ A list of edges. """ - edges: [MilestoneEdge] + edges: [ProjectV2Edge] """ A list of nodes. """ - nodes: [Milestone] + nodes: [ProjectV2] """ Information to aid in pagination. @@ -13314,4231 +30012,5221 @@ type MilestoneConnection { } """ -An edge in a connection. +The type of a project field. """ -type MilestoneEdge { +enum ProjectV2CustomFieldType { """ - A cursor for use in pagination. + Date """ - cursor: String! + DATE """ - The item at the end of the edge. + Number """ - node: Milestone -} + NUMBER -""" -Types that can be inside a Milestone. -""" -union MilestoneItem = Issue | PullRequest + """ + Single Select + """ + SINGLE_SELECT + + """ + Text + """ + TEXT +} """ -Ordering options for milestone connections. +An edge in a connection. """ -input MilestoneOrder { +type ProjectV2Edge { """ - The ordering direction. + A cursor for use in pagination. """ - direction: OrderDirection! + cursor: String! """ - The field to order milestones by. + The item at the end of the edge. """ - field: MilestoneOrderField! + node: ProjectV2 } """ -Properties by which milestone connections can be ordered. +A field inside a project. """ -enum MilestoneOrderField { +type ProjectV2Field implements Node & ProjectV2FieldCommon { """ - Order milestones by when they were created. + Identifies the date and time when the object was created. """ - CREATED_AT + createdAt: DateTime! """ - Order milestones by when they are due. + The field's type. """ - DUE_DATE + dataType: ProjectV2FieldType! """ - Order milestones by their number. + Identifies the primary key from the database. """ - NUMBER + databaseId: Int + id: ID! """ - Order milestones by when they were last updated. + The project field's name. """ - UPDATED_AT -} + name: String! -""" -The possible states of a milestone. -""" -enum MilestoneState { """ - A milestone that has been closed. + The project that contains this field. """ - CLOSED + project: ProjectV2! """ - A milestone that is still open. + Identifies the date and time when the object was last updated. """ - OPEN + updatedAt: DateTime! } """ -Represents a 'milestoned' event on a given issue or pull request. +Common fields across different project field types """ -type MilestonedEvent implements Node { - """ - Identifies the actor who performed the event. - """ - actor: Actor - +interface ProjectV2FieldCommon { """ Identifies the date and time when the object was created. """ createdAt: DateTime! - id: ID! """ - Identifies the milestone title associated with the 'milestoned' event. + The field's type. """ - milestoneTitle: String! + dataType: ProjectV2FieldType! """ - Object referenced by event. + Identifies the primary key from the database. """ - subject: MilestoneItem! -} + databaseId: Int + id: ID! -""" -Entities that can be minimized. -""" -interface Minimizable @preview(toggledBy: "queen-beryl-preview") { """ - Returns whether or not a comment has been minimized. + The project field's name. """ - isMinimized: Boolean! + name: String! """ - Returns why the comment was minimized. + The project that contains this field. """ - minimizedReason: String + project: ProjectV2! """ - Check if the current viewer can minimize this object. + Identifies the date and time when the object was last updated. """ - viewerCanMinimize: Boolean! + updatedAt: DateTime! } """ -Autogenerated input type of MinimizeComment +Configurations for project fields. """ -input MinimizeCommentInput { +union ProjectV2FieldConfiguration = ProjectV2Field | ProjectV2IterationField | ProjectV2SingleSelectField + +""" +The connection type for ProjectV2FieldConfiguration. +""" +type ProjectV2FieldConfigurationConnection { """ - The classification of comment + A list of edges. """ - classifier: ReportedContentClassifiers! + edges: [ProjectV2FieldConfigurationEdge] """ - A unique identifier for the client performing the mutation. + A list of nodes. """ - clientMutationId: String + nodes: [ProjectV2FieldConfiguration] """ - The Node ID of the subject to modify. + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "GistComment", "IssueComment", "PullRequestReviewComment"], abstractType: "Minimizable") + totalCount: Int! } """ -Autogenerated return type of MinimizeComment +An edge in a connection. """ -type MinimizeCommentPayload { +type ProjectV2FieldConfigurationEdge { """ - A unique identifier for the client performing the mutation. + A cursor for use in pagination. """ - clientMutationId: String + cursor: String! """ - The comment that was minimized. + The item at the end of the edge. """ - minimizedComment: Minimizable + node: ProjectV2FieldConfiguration } """ -Autogenerated input type of MoveProjectCard +The connection type for ProjectV2Field. """ -input MoveProjectCardInput { +type ProjectV2FieldConnection { """ - Place the new card after the card with this id. Pass null to place it at the top. + A list of edges. """ - afterCardId: ID @possibleTypes(concreteTypes: ["ProjectCard"]) + edges: [ProjectV2FieldEdge] """ - The id of the card to move. + A list of nodes. """ - cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"]) + nodes: [ProjectV2Field] """ - A unique identifier for the client performing the mutation. + Information to aid in pagination. """ - clientMutationId: String + pageInfo: PageInfo! """ - The id of the column to move it into. + Identifies the total count of items in the connection. """ - columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) + totalCount: Int! } """ -Autogenerated return type of MoveProjectCard +An edge in a connection. """ -type MoveProjectCardPayload { +type ProjectV2FieldEdge { """ - The new edge of the moved card. + A cursor for use in pagination. """ - cardEdge: ProjectCardEdge + cursor: String! """ - A unique identifier for the client performing the mutation. + The item at the end of the edge. """ - clientMutationId: String + node: ProjectV2Field } """ -Autogenerated input type of MoveProjectColumn +Ordering options for project v2 field connections """ -input MoveProjectColumnInput { - """ - Place the new column after the column with this id. Pass null to place it at the front. +input ProjectV2FieldOrder { """ - afterColumnId: ID @possibleTypes(concreteTypes: ["ProjectColumn"]) - - """ - A unique identifier for the client performing the mutation. + The ordering direction. """ - clientMutationId: String + direction: OrderDirection! """ - The id of the column to move. + The field to order the project v2 fields by. """ - columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) + field: ProjectV2FieldOrderField! } """ -Autogenerated return type of MoveProjectColumn +Properties by which project v2 field connections can be ordered. """ -type MoveProjectColumnPayload { +enum ProjectV2FieldOrderField { """ - A unique identifier for the client performing the mutation. + Order project v2 fields by creation time """ - clientMutationId: String + CREATED_AT """ - The new edge of the moved column. + Order project v2 fields by name """ - columnEdge: ProjectColumnEdge + NAME + + """ + Order project v2 fields by position + """ + POSITION } """ -Represents a 'moved_columns_in_project' event on a given issue or pull request. +The type of a project field. """ -type MovedColumnsInProjectEvent implements Node { +enum ProjectV2FieldType { """ - Identifies the actor who performed the event. + Assignees """ - actor: Actor + ASSIGNEES """ - Identifies the date and time when the object was created. + Date """ - createdAt: DateTime! + DATE """ - Identifies the primary key from the database. + Iteration """ - databaseId: Int - id: ID! + ITERATION """ - Column name the issue or pull request was moved from. + Labels """ - previousProjectColumnName: String! @preview(toggledBy: "starfox-preview") + LABELS """ - Project referenced by event. + Linked Pull Requests """ - project: Project @preview(toggledBy: "starfox-preview") + LINKED_PULL_REQUESTS """ - Project card referenced by this project event. + Milestone """ - projectCard: ProjectCard @preview(toggledBy: "starfox-preview") + MILESTONE """ - Column name the issue or pull request was moved to. + Number """ - projectColumnName: String! @preview(toggledBy: "starfox-preview") -} + NUMBER -""" -The root query for implementing GraphQL mutations. -""" -type Mutation { """ - Accepts a pending invitation for a user to become an administrator of an enterprise. + Repository """ - acceptEnterpriseAdministratorInvitation(input: AcceptEnterpriseAdministratorInvitationInput!): AcceptEnterpriseAdministratorInvitationPayload @preview(toggledBy: "enterprise-accounts-preview") + REPOSITORY """ - Applies a suggested topic to the repository. + Reviewers """ - acceptTopicSuggestion(input: AcceptTopicSuggestionInput!): AcceptTopicSuggestionPayload + REVIEWERS """ - Adds assignees to an assignable object. + Single Select """ - addAssigneesToAssignable(input: AddAssigneesToAssignableInput!): AddAssigneesToAssignablePayload + SINGLE_SELECT """ - Adds a comment to an Issue or Pull Request. + Text """ - addComment(input: AddCommentInput!): AddCommentPayload + TEXT """ - Adds labels to a labelable object. + Title """ - addLabelsToLabelable(input: AddLabelsToLabelableInput!): AddLabelsToLabelablePayload + TITLE """ - Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. + Tracked by """ - addProjectCard(input: AddProjectCardInput!): AddProjectCardPayload + TRACKED_BY """ - Adds a column to a Project. + Tracks """ - addProjectColumn(input: AddProjectColumnInput!): AddProjectColumnPayload + TRACKS +} +""" +The values that can be used to update a field of an item inside a Project. Only 1 value can be updated at a time. +""" +input ProjectV2FieldValue { """ - Adds a review to a Pull Request. + The ISO 8601 date to set on the field. """ - addPullRequestReview(input: AddPullRequestReviewInput!): AddPullRequestReviewPayload + date: Date """ - Adds a comment to a review. + The id of the iteration to set on the field. """ - addPullRequestReviewComment(input: AddPullRequestReviewCommentInput!): AddPullRequestReviewCommentPayload + iterationId: String """ - Adds a reaction to a subject. + The number to set on the field. """ - addReaction(input: AddReactionInput!): AddReactionPayload + number: Float """ - Adds a star to a Starrable. + The id of the single select option to set on the field. """ - addStar(input: AddStarInput!): AddStarPayload + singleSelectOptionId: String """ - Cancels a pending invitation for an administrator to join an enterprise. + The text to set on the field. """ - cancelEnterpriseAdminInvitation(input: CancelEnterpriseAdminInvitationInput!): CancelEnterpriseAdminInvitationPayload @preview(toggledBy: "enterprise-accounts-preview") + text: String +} +""" +Ways in which to filter lists of projects. +""" +input ProjectV2Filters { """ - Update your status on GitHub. + List project v2 filtered by the state given. """ - changeUserStatus(input: ChangeUserStatusInput!): ChangeUserStatusPayload + state: ProjectV2State +} +""" +An item within a Project. +""" +type ProjectV2Item implements Node { """ - Clears all labels from a labelable object. + The content of the referenced draft issue, issue, or pull request """ - clearLabelsFromLabelable(input: ClearLabelsFromLabelableInput!): ClearLabelsFromLabelablePayload + content: ProjectV2ItemContent """ - Creates a new project by cloning configuration from an existing project. + Identifies the date and time when the object was created. """ - cloneProject(input: CloneProjectInput!): CloneProjectPayload + createdAt: DateTime! """ - Create a new repository with the same files and directory structure as a template repository. + The actor who created the item. """ - cloneTemplateRepository(input: CloneTemplateRepositoryInput!): CloneTemplateRepositoryPayload + creator: Actor """ - Close an issue. + Identifies the primary key from the database. """ - closeIssue(input: CloseIssueInput!): CloseIssuePayload + databaseId: Int """ - Close a pull request. + A specific field value given a field name """ - closePullRequest(input: ClosePullRequestInput!): ClosePullRequestPayload + fieldValueByName( + """ + The name of the field to return the field value of + """ + name: String! + ): ProjectV2ItemFieldValue """ - Convert a project note card to one associated with a newly created issue. + List of field values """ - convertProjectCardNoteToIssue(input: ConvertProjectCardNoteToIssueInput!): ConvertProjectCardNoteToIssuePayload + fieldValues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Create a new branch protection rule - """ - createBranchProtectionRule(input: CreateBranchProtectionRuleInput!): CreateBranchProtectionRulePayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Create a check run. - """ - createCheckRun(input: CreateCheckRunInput!): CreateCheckRunPayload @preview(toggledBy: "antiope-preview") + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Create a check suite - """ - createCheckSuite(input: CreateCheckSuiteInput!): CreateCheckSuitePayload @preview(toggledBy: "antiope-preview") + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Create a content attachment. - """ - createContentAttachment(input: CreateContentAttachmentInput!): CreateContentAttachmentPayload @preview(toggledBy: "corsair-preview") + """ + Ordering options for project v2 item field values returned from the connection + """ + orderBy: ProjectV2ItemFieldValueOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemFieldValueConnection! + id: ID! """ - Creates a new deployment event. + Whether the item is archived. """ - createDeployment(input: CreateDeploymentInput!): CreateDeploymentPayload @preview(toggledBy: "flash-preview") + isArchived: Boolean! """ - Create a deployment status. + The project that contains this item. """ - createDeploymentStatus(input: CreateDeploymentStatusInput!): CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") + project: ProjectV2! """ - Creates an organization as part of an enterprise account. + The type of the item. """ - createEnterpriseOrganization(input: CreateEnterpriseOrganizationInput!): CreateEnterpriseOrganizationPayload @preview(toggledBy: "enterprise-accounts-preview") + type: ProjectV2ItemType! """ - Creates a new issue. + Identifies the date and time when the object was last updated. """ - createIssue(input: CreateIssueInput!): CreateIssuePayload + updatedAt: DateTime! +} +""" +The connection type for ProjectV2Item. +""" +type ProjectV2ItemConnection { """ - Creates a new label. + A list of edges. """ - createLabel(input: CreateLabelInput!): CreateLabelPayload @preview(toggledBy: "bane-preview") + edges: [ProjectV2ItemEdge] """ - Creates a new project. + A list of nodes. """ - createProject(input: CreateProjectInput!): CreateProjectPayload + nodes: [ProjectV2Item] """ - Create a new pull request + Information to aid in pagination. """ - createPullRequest(input: CreatePullRequestInput!): CreatePullRequestPayload + pageInfo: PageInfo! """ - Create a new Git Ref. + Identifies the total count of items in the connection. """ - createRef(input: CreateRefInput!): CreateRefPayload + totalCount: Int! +} +""" +Types that can be inside Project Items. +""" +union ProjectV2ItemContent = DraftIssue | Issue | PullRequest + +""" +An edge in a connection. +""" +type ProjectV2ItemEdge { """ - Create a new repository. + A cursor for use in pagination. """ - createRepository(input: CreateRepositoryInput!): CreateRepositoryPayload + cursor: String! """ - Creates a new team discussion. + The item at the end of the edge. """ - createTeamDiscussion(input: CreateTeamDiscussionInput!): CreateTeamDiscussionPayload @preview(toggledBy: "echo-preview") + node: ProjectV2Item +} +""" +The value of a date field in a Project item. +""" +type ProjectV2ItemFieldDateValue implements Node & ProjectV2ItemFieldValueCommon { """ - Creates a new team discussion comment. + Identifies the date and time when the object was created. """ - createTeamDiscussionComment(input: CreateTeamDiscussionCommentInput!): CreateTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") + createdAt: DateTime! """ - Rejects a suggested topic for the repository. + The actor who created the item. """ - declineTopicSuggestion(input: DeclineTopicSuggestionInput!): DeclineTopicSuggestionPayload + creator: Actor """ - Delete a branch protection rule + Identifies the primary key from the database. """ - deleteBranchProtectionRule(input: DeleteBranchProtectionRuleInput!): DeleteBranchProtectionRulePayload + databaseId: Int """ - Deletes an Issue object. + Date value for the field """ - deleteIssue(input: DeleteIssueInput!): DeleteIssuePayload + date: Date """ - Deletes an IssueComment object. + The project field that contains this value. """ - deleteIssueComment(input: DeleteIssueCommentInput!): DeleteIssueCommentPayload + field: ProjectV2FieldConfiguration! + id: ID! """ - Deletes a label. + The project item that contains this value. """ - deleteLabel(input: DeleteLabelInput!): DeleteLabelPayload @preview(toggledBy: "bane-preview") + item: ProjectV2Item! """ - Deletes a project. + Identifies the date and time when the object was last updated. """ - deleteProject(input: DeleteProjectInput!): DeleteProjectPayload + updatedAt: DateTime! +} +""" +The value of an iteration field in a Project item. +""" +type ProjectV2ItemFieldIterationValue implements Node & ProjectV2ItemFieldValueCommon { """ - Deletes a project card. + Identifies the date and time when the object was created. """ - deleteProjectCard(input: DeleteProjectCardInput!): DeleteProjectCardPayload + createdAt: DateTime! """ - Deletes a project column. + The actor who created the item. """ - deleteProjectColumn(input: DeleteProjectColumnInput!): DeleteProjectColumnPayload + creator: Actor """ - Deletes a pull request review. + Identifies the primary key from the database. """ - deletePullRequestReview(input: DeletePullRequestReviewInput!): DeletePullRequestReviewPayload + databaseId: Int """ - Deletes a pull request review comment. + The duration of the iteration in days. """ - deletePullRequestReviewComment(input: DeletePullRequestReviewCommentInput!): DeletePullRequestReviewCommentPayload + duration: Int! """ - Delete a Git Ref. + The project field that contains this value. """ - deleteRef(input: DeleteRefInput!): DeleteRefPayload + field: ProjectV2FieldConfiguration! + id: ID! """ - Deletes a team discussion. + The project item that contains this value. """ - deleteTeamDiscussion(input: DeleteTeamDiscussionInput!): DeleteTeamDiscussionPayload @preview(toggledBy: "echo-preview") + item: ProjectV2Item! """ - Deletes a team discussion comment. + The ID of the iteration. """ - deleteTeamDiscussionComment(input: DeleteTeamDiscussionCommentInput!): DeleteTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") + iterationId: String! """ - Dismisses an approved or rejected pull request review. + The start date of the iteration. """ - dismissPullRequestReview(input: DismissPullRequestReviewInput!): DismissPullRequestReviewPayload + startDate: Date! """ - Creates a new project by importing columns and a list of issues/PRs. + The title of the iteration. """ - importProject(input: ImportProjectInput!): ImportProjectPayload @preview(toggledBy: "slothette-preview") + title: String! """ - Invite someone to become an administrator of the enterprise. + The title of the iteration, with HTML. """ - inviteEnterpriseAdmin(input: InviteEnterpriseAdminInput!): InviteEnterpriseAdminPayload @preview(toggledBy: "enterprise-accounts-preview") + titleHTML: String! """ - Creates a repository link for a project. + Identifies the date and time when the object was last updated. """ - linkRepositoryToProject(input: LinkRepositoryToProjectInput!): LinkRepositoryToProjectPayload + updatedAt: DateTime! +} +""" +The value of the labels field in a Project item. +""" +type ProjectV2ItemFieldLabelValue { """ - Lock a lockable object + The field that contains this value. """ - lockLockable(input: LockLockableInput!): LockLockablePayload + field: ProjectV2FieldConfiguration! """ - Marks a pull request ready for review. + Labels value of a field """ - markPullRequestReadyForReview(input: MarkPullRequestReadyForReviewInput!): MarkPullRequestReadyForReviewPayload @preview(toggledBy: "shadow-cat-preview") + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): LabelConnection +} + +""" +The value of a milestone field in a Project item. +""" +type ProjectV2ItemFieldMilestoneValue { """ - Merge a head into a branch. + The field that contains this value. """ - mergeBranch(input: MergeBranchInput!): MergeBranchPayload + field: ProjectV2FieldConfiguration! """ - Merge a pull request. + Milestone value of a field """ - mergePullRequest(input: MergePullRequestInput!): MergePullRequestPayload + milestone: Milestone +} +""" +The value of a number field in a Project item. +""" +type ProjectV2ItemFieldNumberValue implements Node & ProjectV2ItemFieldValueCommon { """ - Minimizes a comment on an Issue, Commit, Pull Request, or Gist + Identifies the date and time when the object was created. """ - minimizeComment(input: MinimizeCommentInput!): MinimizeCommentPayload @preview(toggledBy: "queen-beryl-preview") + createdAt: DateTime! """ - Moves a project card to another place. + The actor who created the item. """ - moveProjectCard(input: MoveProjectCardInput!): MoveProjectCardPayload + creator: Actor """ - Moves a project column to another place. + Identifies the primary key from the database. """ - moveProjectColumn(input: MoveProjectColumnInput!): MoveProjectColumnPayload + databaseId: Int """ - Pin an issue to a repository + The project field that contains this value. """ - pinIssue(input: PinIssueInput!): PinIssuePayload @preview(toggledBy: "elektra-preview") + field: ProjectV2FieldConfiguration! + id: ID! """ - Regenerates the identity provider recovery codes for an enterprise + The project item that contains this value. """ - regenerateEnterpriseIdentityProviderRecoveryCodes(input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput!): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload @preview(toggledBy: "enterprise-accounts-preview") + item: ProjectV2Item! """ - Removes assignees from an assignable object. + Number as a float(8) """ - removeAssigneesFromAssignable(input: RemoveAssigneesFromAssignableInput!): RemoveAssigneesFromAssignablePayload + number: Float """ - Removes an administrator from the enterprise. + Identifies the date and time when the object was last updated. """ - removeEnterpriseAdmin(input: RemoveEnterpriseAdminInput!): RemoveEnterpriseAdminPayload @preview(toggledBy: "enterprise-accounts-preview") + updatedAt: DateTime! +} +""" +The value of a pull request field in a Project item. +""" +type ProjectV2ItemFieldPullRequestValue { """ - Removes an organization from the enterprise + The field that contains this value. """ - removeEnterpriseOrganization(input: RemoveEnterpriseOrganizationInput!): RemoveEnterpriseOrganizationPayload @preview(toggledBy: "enterprise-accounts-preview") + field: ProjectV2FieldConfiguration! """ - Removes labels from a Labelable object. + The pull requests for this field """ - removeLabelsFromLabelable(input: RemoveLabelsFromLabelableInput!): RemoveLabelsFromLabelablePayload + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests. + """ + orderBy: PullRequestOrder = {field: CREATED_AT, direction: ASC} + ): PullRequestConnection +} +""" +The value of a repository field in a Project item. +""" +type ProjectV2ItemFieldRepositoryValue { """ - Removes outside collaborator from all repositories in an organization. + The field that contains this value. """ - removeOutsideCollaborator(input: RemoveOutsideCollaboratorInput!): RemoveOutsideCollaboratorPayload + field: ProjectV2FieldConfiguration! """ - Removes a reaction from a subject. + The repository for this field. """ - removeReaction(input: RemoveReactionInput!): RemoveReactionPayload + repository: Repository +} +""" +The value of a reviewers field in a Project item. +""" +type ProjectV2ItemFieldReviewerValue { """ - Removes a star from a Starrable. + The field that contains this value. """ - removeStar(input: RemoveStarInput!): RemoveStarPayload + field: ProjectV2FieldConfiguration! """ - Reopen a issue. + The reviewers for this field. """ - reopenIssue(input: ReopenIssueInput!): ReopenIssuePayload + reviewers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): RequestedReviewerConnection +} +""" +The value of a single select field in a Project item. +""" +type ProjectV2ItemFieldSingleSelectValue implements Node & ProjectV2ItemFieldValueCommon { """ - Reopen a pull request. + Identifies the date and time when the object was created. """ - reopenPullRequest(input: ReopenPullRequestInput!): ReopenPullRequestPayload + createdAt: DateTime! """ - Set review requests on a pull request. + The actor who created the item. """ - requestReviews(input: RequestReviewsInput!): RequestReviewsPayload + creator: Actor """ - Rerequests an existing check suite. + Identifies the primary key from the database. """ - rerequestCheckSuite(input: RerequestCheckSuiteInput!): RerequestCheckSuitePayload @preview(toggledBy: "antiope-preview") + databaseId: Int """ - Marks a review thread as resolved. + The project field that contains this value. """ - resolveReviewThread(input: ResolveReviewThreadInput!): ResolveReviewThreadPayload + field: ProjectV2FieldConfiguration! + id: ID! """ - Submits a pending pull request review. + The project item that contains this value. """ - submitPullRequestReview(input: SubmitPullRequestReviewInput!): SubmitPullRequestReviewPayload + item: ProjectV2Item! """ - Transfer an issue to a different repository + The name of the selected single select option. """ - transferIssue(input: TransferIssueInput!): TransferIssuePayload + name: String """ - Deletes a repository link from a project. + The html name of the selected single select option. """ - unlinkRepositoryFromProject(input: UnlinkRepositoryFromProjectInput!): UnlinkRepositoryFromProjectPayload + nameHTML: String """ - Unlock a lockable object + The id of the selected single select option. """ - unlockLockable(input: UnlockLockableInput!): UnlockLockablePayload + optionId: String """ - Unmark an issue as a duplicate of another issue. + Identifies the date and time when the object was last updated. """ - unmarkIssueAsDuplicate(input: UnmarkIssueAsDuplicateInput!): UnmarkIssueAsDuplicatePayload + updatedAt: DateTime! +} +""" +The value of a text field in a Project item. +""" +type ProjectV2ItemFieldTextValue implements Node & ProjectV2ItemFieldValueCommon { """ - Unminimizes a comment on an Issue, Commit, Pull Request, or Gist + Identifies the date and time when the object was created. """ - unminimizeComment(input: UnminimizeCommentInput!): UnminimizeCommentPayload @preview(toggledBy: "queen-beryl-preview") + createdAt: DateTime! """ - Unpin a pinned issue from a repository + The actor who created the item. """ - unpinIssue(input: UnpinIssueInput!): UnpinIssuePayload @preview(toggledBy: "elektra-preview") + creator: Actor """ - Marks a review thread as unresolved. + Identifies the primary key from the database. """ - unresolveReviewThread(input: UnresolveReviewThreadInput!): UnresolveReviewThreadPayload + databaseId: Int """ - Create a new branch protection rule + The project field that contains this value. """ - updateBranchProtectionRule(input: UpdateBranchProtectionRuleInput!): UpdateBranchProtectionRulePayload + field: ProjectV2FieldConfiguration! + id: ID! """ - Update a check run + The project item that contains this value. """ - updateCheckRun(input: UpdateCheckRunInput!): UpdateCheckRunPayload @preview(toggledBy: "antiope-preview") + item: ProjectV2Item! """ - Modifies the settings of an existing check suite + Text value of a field """ - updateCheckSuitePreferences(input: UpdateCheckSuitePreferencesInput!): UpdateCheckSuitePreferencesPayload @preview(toggledBy: "antiope-preview") + text: String """ - Sets the action execution capability setting for an enterprise. + Identifies the date and time when the object was last updated. """ - updateEnterpriseActionExecutionCapabilitySetting(input: UpdateEnterpriseActionExecutionCapabilitySettingInput!): UpdateEnterpriseActionExecutionCapabilitySettingPayload @preview(toggledBy: "enterprise-accounts-preview") + updatedAt: DateTime! +} +""" +The value of a user field in a Project item. +""" +type ProjectV2ItemFieldUserValue { """ - Updates the role of an enterprise administrator. + The field that contains this value. """ - updateEnterpriseAdministratorRole(input: UpdateEnterpriseAdministratorRoleInput!): UpdateEnterpriseAdministratorRolePayload @preview(toggledBy: "enterprise-accounts-preview") + field: ProjectV2FieldConfiguration! """ - Sets whether private repository forks are enabled for an enterprise. + The users for this field """ - updateEnterpriseAllowPrivateRepositoryForkingSetting(input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput!): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + users( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection +} +""" +Project field values +""" +union ProjectV2ItemFieldValue = + ProjectV2ItemFieldDateValue + | ProjectV2ItemFieldIterationValue + | ProjectV2ItemFieldLabelValue + | ProjectV2ItemFieldMilestoneValue + | ProjectV2ItemFieldNumberValue + | ProjectV2ItemFieldPullRequestValue + | ProjectV2ItemFieldRepositoryValue + | ProjectV2ItemFieldReviewerValue + | ProjectV2ItemFieldSingleSelectValue + | ProjectV2ItemFieldTextValue + | ProjectV2ItemFieldUserValue + +""" +Common fields across different project field value types +""" +interface ProjectV2ItemFieldValueCommon { """ - Sets the default repository permission for organizations in an enterprise. + Identifies the date and time when the object was created. """ - updateEnterpriseDefaultRepositoryPermissionSetting(input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput!): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + createdAt: DateTime! """ - Sets whether organization members with admin permissions on a repository can change repository visibility. + The actor who created the item. """ - updateEnterpriseMembersCanChangeRepositoryVisibilitySetting(input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput!): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload @preview(toggledBy: "enterprise-accounts-preview") + creator: Actor """ - Sets the members can create repositories setting for an enterprise. + Identifies the primary key from the database. """ - updateEnterpriseMembersCanCreateRepositoriesSetting(input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput!): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + databaseId: Int """ - Sets the members can delete issues setting for an enterprise. + The project field that contains this value. """ - updateEnterpriseMembersCanDeleteIssuesSetting(input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput!): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + field: ProjectV2FieldConfiguration! + id: ID! """ - Sets the members can delete repositories setting for an enterprise. + The project item that contains this value. """ - updateEnterpriseMembersCanDeleteRepositoriesSetting(input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput!): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + item: ProjectV2Item! """ - Sets whether members can invite collaborators are enabled for an enterprise. + Identifies the date and time when the object was last updated. """ - updateEnterpriseMembersCanInviteCollaboratorsSetting(input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput!): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + updatedAt: DateTime! +} +""" +The connection type for ProjectV2ItemFieldValue. +""" +type ProjectV2ItemFieldValueConnection { """ - Sets whether or not an organization admin can make purchases. + A list of edges. """ - updateEnterpriseMembersCanMakePurchasesSetting(input: UpdateEnterpriseMembersCanMakePurchasesSettingInput!): UpdateEnterpriseMembersCanMakePurchasesSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + edges: [ProjectV2ItemFieldValueEdge] """ - Sets the members can update protected branches setting for an enterprise. + A list of nodes. """ - updateEnterpriseMembersCanUpdateProtectedBranchesSetting(input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput!): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + nodes: [ProjectV2ItemFieldValue] """ - Sets the members can view dependency insights for an enterprise. + Information to aid in pagination. """ - updateEnterpriseMembersCanViewDependencyInsightsSetting(input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput!): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + pageInfo: PageInfo! """ - Sets whether organization projects are enabled for an enterprise. + Identifies the total count of items in the connection. """ - updateEnterpriseOrganizationProjectsSetting(input: UpdateEnterpriseOrganizationProjectsSettingInput!): UpdateEnterpriseOrganizationProjectsSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2ItemFieldValueEdge { """ - Updates an enterprise's profile. + A cursor for use in pagination. """ - updateEnterpriseProfile(input: UpdateEnterpriseProfileInput!): UpdateEnterpriseProfilePayload @preview(toggledBy: "enterprise-accounts-preview") + cursor: String! """ - Sets whether repository projects are enabled for a enterprise. + The item at the end of the edge. """ - updateEnterpriseRepositoryProjectsSetting(input: UpdateEnterpriseRepositoryProjectsSettingInput!): UpdateEnterpriseRepositoryProjectsSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + node: ProjectV2ItemFieldValue +} +""" +Ordering options for project v2 item field value connections +""" +input ProjectV2ItemFieldValueOrder { """ - Sets whether team discussions are enabled for an enterprise. + The ordering direction. """ - updateEnterpriseTeamDiscussionsSetting(input: UpdateEnterpriseTeamDiscussionsSettingInput!): UpdateEnterpriseTeamDiscussionsSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + direction: OrderDirection! """ - Sets whether two factor authentication is required for all users in an enterprise. + The field to order the project v2 item field values by. """ - updateEnterpriseTwoFactorAuthenticationRequiredSetting(input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput!): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload @preview(toggledBy: "enterprise-accounts-preview") + field: ProjectV2ItemFieldValueOrderField! +} +""" +Properties by which project v2 item field value connections can be ordered. +""" +enum ProjectV2ItemFieldValueOrderField { """ - Updates an Issue. + Order project v2 item field values by the their position in the project """ - updateIssue(input: UpdateIssueInput!): UpdateIssuePayload + POSITION +} +""" +Ordering options for project v2 item connections +""" +input ProjectV2ItemOrder { """ - Updates an IssueComment object. + The ordering direction. """ - updateIssueComment(input: UpdateIssueCommentInput!): UpdateIssueCommentPayload + direction: OrderDirection! """ - Updates an existing label. + The field to order the project v2 items by. """ - updateLabel(input: UpdateLabelInput!): UpdateLabelPayload @preview(toggledBy: "bane-preview") + field: ProjectV2ItemOrderField! +} +""" +Properties by which project v2 item connections can be ordered. +""" +enum ProjectV2ItemOrderField { """ - Updates an existing project. + Order project v2 items by the their position in the project """ - updateProject(input: UpdateProjectInput!): UpdateProjectPayload + POSITION +} +""" +The type of a project item. +""" +enum ProjectV2ItemType { """ - Updates an existing project card. + Draft Issue """ - updateProjectCard(input: UpdateProjectCardInput!): UpdateProjectCardPayload + DRAFT_ISSUE """ - Updates an existing project column. + Issue """ - updateProjectColumn(input: UpdateProjectColumnInput!): UpdateProjectColumnPayload + ISSUE """ - Update a pull request + Pull Request """ - updatePullRequest(input: UpdatePullRequestInput!): UpdatePullRequestPayload + PULL_REQUEST """ - Updates the body of a pull request review. + Redacted Item """ - updatePullRequestReview(input: UpdatePullRequestReviewInput!): UpdatePullRequestReviewPayload + REDACTED +} +""" +An iteration field inside a project. +""" +type ProjectV2IterationField implements Node & ProjectV2FieldCommon { """ - Updates a pull request review comment. + Iteration configuration settings """ - updatePullRequestReviewComment(input: UpdatePullRequestReviewCommentInput!): UpdatePullRequestReviewCommentPayload + configuration: ProjectV2IterationFieldConfiguration! """ - Update a Git Ref. + Identifies the date and time when the object was created. """ - updateRef(input: UpdateRefInput!): UpdateRefPayload + createdAt: DateTime! """ - Update information about a repository. + The field's type. """ - updateRepository(input: UpdateRepositoryInput!): UpdateRepositoryPayload + dataType: ProjectV2FieldType! """ - Updates the state for subscribable subjects. + Identifies the primary key from the database. """ - updateSubscription(input: UpdateSubscriptionInput!): UpdateSubscriptionPayload + databaseId: Int + id: ID! """ - Updates a team discussion. + The project field's name. """ - updateTeamDiscussion(input: UpdateTeamDiscussionInput!): UpdateTeamDiscussionPayload @preview(toggledBy: "echo-preview") + name: String! """ - Updates a discussion comment. + The project that contains this field. """ - updateTeamDiscussionComment(input: UpdateTeamDiscussionCommentInput!): UpdateTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") + project: ProjectV2! """ - Replaces the repository's topics with the given topics. + Identifies the date and time when the object was last updated. """ - updateTopics(input: UpdateTopicsInput!): UpdateTopicsPayload + updatedAt: DateTime! } """ -An object with an ID. +Iteration field configuration for a project. """ -interface Node { +type ProjectV2IterationFieldConfiguration { """ - ID of the object. + The iteration's completed iterations """ - id: ID! -} + completedIterations: [ProjectV2IterationFieldIteration!]! -""" -Metadata for an audit entry with action oauth_application.* -""" -interface OauthApplicationAuditEntryData { """ - The name of the OAuth Application. + The iteration's duration in days """ - oauthApplicationName: String + duration: Int! """ - The HTTP path for the OAuth Application + The iteration's iterations """ - oauthApplicationResourcePath: URI + iterations: [ProjectV2IterationFieldIteration!]! """ - The HTTP URL for the OAuth Application + The iteration's start day of the week """ - oauthApplicationUrl: URI + startDay: Int! } """ -Audit log entry for a oauth_application.create event. +Iteration field iteration settings for a project. """ -type OauthApplicationCreateAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { +type ProjectV2IterationFieldIteration { """ - The action name + The iteration's duration in days """ - action: String! + duration: Int! """ - The user who initiated the action + The iteration's ID. """ - actor: AuditEntryActor + id: String! """ - The IP address of the actor + The iteration's start date """ - actorIp: String + startDate: Date! """ - A readable representation of the actor's location + The iteration's title. """ - actorLocation: ActorLocation + title: String! """ - The username of the user who initiated the action + The iteration's html title. """ - actorLogin: String + titleHTML: String! +} +""" +Ways in which lists of projects can be ordered upon return. +""" +input ProjectV2Order { """ - The HTTP path for the actor. + The direction in which to order projects by the specified field. """ - actorResourcePath: URI + direction: OrderDirection! """ - The HTTP URL for the actor. + The field in which to order projects by. """ - actorUrl: URI + field: ProjectV2OrderField! +} +""" +Properties by which projects can be ordered. +""" +enum ProjectV2OrderField { """ - The application URL of the OAuth Application. + The project's date and time of creation """ - applicationUrl: URI + CREATED_AT """ - The callback URL of the OAuth Application. + The project's number """ - callbackUrl: URI + NUMBER """ - The time the action was initiated + The project's title """ - createdAt: PreciseDateTime! - id: ID! + TITLE """ - The name of the OAuth Application. + The project's date and time of update """ - oauthApplicationName: String + UPDATED_AT +} - """ - The HTTP path for the OAuth Application - """ - oauthApplicationResourcePath: URI +""" +Represents an owner of a project (beta). +""" +interface ProjectV2Owner { + id: ID! """ - The HTTP URL for the OAuth Application + Find a project by number. """ - oauthApplicationUrl: URI + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - The corresponding operation type for the action + A list of projects under the owner. """ - operationType: OperationType + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! +} + +""" +Recent projects for the owner. +""" +interface ProjectV2Recent { """ - The HTTP path for the organization + Recent projects that this user has modified in the context of the owner. """ - organizationResourcePath: URI + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! +} +""" +A single select field inside a project. +""" +type ProjectV2SingleSelectField implements Node & ProjectV2FieldCommon { """ - The HTTP URL for the organization + Identifies the date and time when the object was created. """ - organizationUrl: URI + createdAt: DateTime! """ - The rate limit of the OAuth Application. + The field's type. """ - rateLimit: Int + dataType: ProjectV2FieldType! """ - The state of the OAuth Application. + Identifies the primary key from the database. """ - state: OauthApplicationCreateAuditEntryState + databaseId: Int + id: ID! """ - The user affected by the action + The project field's name. """ - user: User + name: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Options for the single select field """ - userLogin: String + options: [ProjectV2SingleSelectFieldOption!]! """ - The HTTP path for the user. + The project that contains this field. """ - userResourcePath: URI + project: ProjectV2! """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -The state of an OAuth Application when it was created. +Single select field option for a configuration for a project. """ -enum OauthApplicationCreateAuditEntryState { +type ProjectV2SingleSelectFieldOption { """ - The OAuth Application was active and allowed to have OAuth Accesses. + The option's ID. """ - ACTIVE + id: String! """ - The OAuth Application was in the process of being deleted. + The option's name. """ - PENDING_DELETION + name: String! """ - The OAuth Application was suspended from generating OAuth Accesses due to abuse or security concerns. + The option's html name. """ - SUSPENDED + nameHTML: String! } """ -The corresponding operation type for the action +The display color of a single-select field option. """ -enum OperationType { +enum ProjectV2SingleSelectFieldOptionColor { """ - An existing resource was accessed + BLUE """ - ACCESS + BLUE """ - A resource performed an authentication event + GRAY """ - AUTHENTICATION + GRAY """ - A new resource was created + GREEN """ - CREATE + GREEN """ - An existing resource was modified + ORANGE """ - MODIFY + ORANGE """ - An existing resource was removed + PINK """ - REMOVE + PINK """ - An existing resource was restored + PURPLE """ - RESTORE + PURPLE """ - An existing resource was transferred between multiple resources + RED """ - TRANSFER + RED + + """ + YELLOW + """ + YELLOW } """ -Possible directions in which to order a list of items when provided an `orderBy` argument. +Represents a single select field option """ -enum OrderDirection { +input ProjectV2SingleSelectFieldOptionInput { """ - Specifies an ascending order for a given `orderBy` argument. + The display color of the option """ - ASC + color: ProjectV2SingleSelectFieldOptionColor! """ - Specifies a descending order for a given `orderBy` argument. + The description text of the option """ - DESC + description: String! + + """ + The name of the option + """ + name: String! } """ -Audit log entry for a org.add_billing_manager +Represents a sort by field and direction. """ -type OrgAddBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2SortBy { """ - The action name + The direction of the sorting. Possible values are ASC and DESC. """ - action: String! + direction: OrderDirection! """ - The user who initiated the action + The field by which items are sorted. """ - actor: AuditEntryActor + field: ProjectV2Field! +} +""" +The connection type for ProjectV2SortBy. +""" +type ProjectV2SortByConnection { """ - The IP address of the actor + A list of edges. """ - actorIp: String + edges: [ProjectV2SortByEdge] """ - A readable representation of the actor's location + A list of nodes. """ - actorLocation: ActorLocation + nodes: [ProjectV2SortBy] """ - The username of the user who initiated the action + Information to aid in pagination. """ - actorLogin: String + pageInfo: PageInfo! """ - The HTTP path for the actor. + Identifies the total count of items in the connection. """ - actorResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2SortByEdge { """ - The HTTP URL for the actor. + A cursor for use in pagination. """ - actorUrl: URI + cursor: String! """ - The time the action was initiated + The item at the end of the edge. """ - createdAt: PreciseDateTime! - id: ID! + node: ProjectV2SortBy +} +""" +Represents a sort by field and direction. +""" +type ProjectV2SortByField { """ - The email address used to invite a billing manager for the organization. + The direction of the sorting. Possible values are ASC and DESC. """ - invitationEmail: String + direction: OrderDirection! """ - The corresponding operation type for the action + The field by which items are sorted. """ - operationType: OperationType + field: ProjectV2FieldConfiguration! +} +""" +The connection type for ProjectV2SortByField. +""" +type ProjectV2SortByFieldConnection { """ - The Organization associated with the Audit Entry. + A list of edges. """ - organization: Organization + edges: [ProjectV2SortByFieldEdge] """ - The name of the Organization. + A list of nodes. """ - organizationName: String + nodes: [ProjectV2SortByField] """ - The HTTP path for the organization + Information to aid in pagination. """ - organizationResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the organization + Identifies the total count of items in the connection. """ - organizationUrl: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2SortByFieldEdge { """ - The user affected by the action + A cursor for use in pagination. """ - user: User + cursor: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The item at the end of the edge. """ - userLogin: String + node: ProjectV2SortByField +} +""" +The possible states of a project v2. +""" +enum ProjectV2State { """ - The HTTP path for the user. + A project v2 that has been closed """ - userResourcePath: URI + CLOSED """ - The HTTP URL for the user. + A project v2 that is still open """ - userUrl: URI + OPEN } """ -Audit log entry for a org.add_member +A view within a ProjectV2. """ -type OrgAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2View implements Node { """ - The action name + Identifies the date and time when the object was created. """ - action: String! + createdAt: DateTime! """ - The user who initiated the action + Identifies the primary key from the database. """ - actor: AuditEntryActor + databaseId: Int """ - The IP address of the actor + The view's visible fields. """ - actorIp: String + fields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection """ - The HTTP path for the actor. + The project view's filter. """ - actorResourcePath: URI + filter: String """ - The HTTP URL for the actor. + The view's group-by field. """ - actorUrl: URI + groupBy( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConnection + @deprecated( + reason: "The `ProjectV2View#order_by` API is deprecated in favour of the more capable `ProjectV2View#group_by_field` API. Check out the `ProjectV2View#group_by_fields` API as an example for the more capable alternative. Removal on 2023-04-01 UTC." + ) """ - The time the action was initiated + The view's group-by field. """ - createdAt: PreciseDateTime! + groupByFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection id: ID! """ - The corresponding operation type for the action + The project view's layout. """ - operationType: OperationType + layout: ProjectV2ViewLayout! """ - The Organization associated with the Audit Entry. + The project view's name. """ - organization: Organization + name: String! """ - The name of the Organization. + The project view's number. """ - organizationName: String + number: Int! """ - The HTTP path for the organization + The project that contains this view. """ - organizationResourcePath: URI + project: ProjectV2! """ - The HTTP URL for the organization + The view's sort-by config. """ - organizationUrl: URI + sortBy( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The permission level of the member added to the organization. - """ - permission: OrgAddMemberAuditEntryPermission + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The user affected by the action - """ - user: User + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2SortByConnection + @deprecated( + reason: "The `ProjectV2View#sort_by` API is deprecated in favour of the more capable `ProjectV2View#sort_by_fields` API. Check out the `ProjectV2View#sort_by_fields` API as an example for the more capable alternative. Removal on 2023-04-01 UTC." + ) """ - The HTTP path for the user. + The view's sort-by config. """ - userResourcePath: URI + sortByFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for the user. - """ - userUrl: URI -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2SortByFieldConnection -""" -The permissions available to members on an Organization. -""" -enum OrgAddMemberAuditEntryPermission { """ - Can read, clone, push, and add collaborators to repositories. + Identifies the date and time when the object was last updated. """ - ADMIN + updatedAt: DateTime! """ - Can read and clone repositories. + The view's vertical-group-by field. """ - READ -} + verticalGroupBy( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConnection + @deprecated( + reason: "The `ProjectV2View#vertical_group_by` API is deprecated in favour of the more capable `ProjectV2View#vertical_group_by_fields` API. Check out the `ProjectV2View#vertical_group_by_fields` API as an example for the more capable alternative. Removal on 2023-04-01 UTC." + ) -""" -Audit log entry for a org.block_user -""" -type OrgBlockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The view's vertical-group-by field. """ - action: String! + verticalGroupByFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The user who initiated the action - """ - actor: AuditEntryActor + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection """ - The IP address of the actor + The view's visible fields. """ - actorIp: String + visibleFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the actor. - """ - actorResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the actor. - """ - actorUrl: URI + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConnection + @deprecated( + reason: "The `ProjectV2View#visibleFields` API is deprecated in favour of the more capable `ProjectV2View#fields` API. Check out the `ProjectV2View#fields` API as an example for the more capable alternative. Removal on 2023-01-01 UTC." + ) +} +""" +The connection type for ProjectV2View. +""" +type ProjectV2ViewConnection { """ - The blocked user. + A list of edges. """ - blockedUser: User + edges: [ProjectV2ViewEdge] """ - The username of the blocked user. + A list of nodes. """ - blockedUserName: String + nodes: [ProjectV2View] """ - The HTTP path for the blocked user. + Information to aid in pagination. """ - blockedUserResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the blocked user. + Identifies the total count of items in the connection. """ - blockedUserUrl: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2ViewEdge { """ - The time the action was initiated + A cursor for use in pagination. """ - createdAt: PreciseDateTime! - id: ID! + cursor: String! """ - The corresponding operation type for the action + The item at the end of the edge. """ - operationType: OperationType + node: ProjectV2View +} +""" +The layout of a project v2 view. +""" +enum ProjectV2ViewLayout { """ - The Organization associated with the Audit Entry. + Board layout """ - organization: Organization + BOARD_LAYOUT """ - The name of the Organization. + Roadmap layout """ - organizationName: String + ROADMAP_LAYOUT """ - The HTTP path for the organization + Table layout """ - organizationResourcePath: URI + TABLE_LAYOUT +} +""" +Ordering options for project v2 view connections +""" +input ProjectV2ViewOrder { """ - The HTTP URL for the organization + The ordering direction. """ - organizationUrl: URI + direction: OrderDirection! """ - The user affected by the action + The field to order the project v2 views by. """ - user: User + field: ProjectV2ViewOrderField! +} +""" +Properties by which project v2 view connections can be ordered. +""" +enum ProjectV2ViewOrderField { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Order project v2 views by creation time """ - userLogin: String + CREATED_AT """ - The HTTP path for the user. + Order project v2 views by name """ - userResourcePath: URI + NAME """ - The HTTP URL for the user. + Order project v2 views by position """ - userUrl: URI + POSITION } """ -Audit log entry for a org.config.disable_collaborators_only event. +A workflow inside a project. """ -type OrgConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - - """ - The user who initiated the action - """ - actor: AuditEntryActor - +type ProjectV2Workflow implements Node { """ - The IP address of the actor + Identifies the date and time when the object was created. """ - actorIp: String + createdAt: DateTime! """ - A readable representation of the actor's location + Identifies the primary key from the database. """ - actorLocation: ActorLocation + databaseId: Int """ - The username of the user who initiated the action + The workflows' enabled state. """ - actorLogin: String + enabled: Boolean! + id: ID! """ - The HTTP path for the actor. + The workflows' name. """ - actorResourcePath: URI + name: String! """ - The HTTP URL for the actor. + The workflows' number. """ - actorUrl: URI + number: Int! """ - The time the action was initiated + The project that contains this workflow. """ - createdAt: PreciseDateTime! - id: ID! + project: ProjectV2! """ - The corresponding operation type for the action + Identifies the date and time when the object was last updated. """ - operationType: OperationType + updatedAt: DateTime! +} +""" +The connection type for ProjectV2Workflow. +""" +type ProjectV2WorkflowConnection { """ - The Organization associated with the Audit Entry. + A list of edges. """ - organization: Organization + edges: [ProjectV2WorkflowEdge] """ - The name of the Organization. + A list of nodes. """ - organizationName: String + nodes: [ProjectV2Workflow] """ - The HTTP path for the organization + Information to aid in pagination. """ - organizationResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the organization + Identifies the total count of items in the connection. """ - organizationUrl: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2WorkflowEdge { """ - The user affected by the action + A cursor for use in pagination. """ - user: User + cursor: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The item at the end of the edge. """ - userLogin: String + node: ProjectV2Workflow +} +""" +Ordering options for project v2 workflows connections +""" +input ProjectV2WorkflowOrder { """ - The HTTP path for the user. + The ordering direction. """ - userResourcePath: URI + direction: OrderDirection! """ - The HTTP URL for the user. + The field to order the project v2 workflows by. """ - userUrl: URI + field: ProjectV2WorkflowsOrderField! } """ -Audit log entry for a org.config.enable_collaborators_only event. +Properties by which project workflows can be ordered. """ -type OrgConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - +enum ProjectV2WorkflowsOrderField { """ - The user who initiated the action + The workflows' date and time of creation """ - actor: AuditEntryActor + CREATED_AT """ - The IP address of the actor + The workflows' name """ - actorIp: String + NAME """ - A readable representation of the actor's location + The workflows' number """ - actorLocation: ActorLocation + NUMBER """ - The username of the user who initiated the action + The workflows' date and time of update """ - actorLogin: String + UPDATED_AT +} +""" +A user's public key. +""" +type PublicKey implements Node { """ - The HTTP path for the actor. + The last time this authorization was used to perform an action. Values will be null for keys not owned by the user. """ - actorResourcePath: URI + accessedAt: DateTime """ - The HTTP URL for the actor. + Identifies the date and time when the key was created. Keys created before + March 5th, 2014 have inaccurate values. Values will be null for keys not owned by the user. """ - actorUrl: URI + createdAt: DateTime """ - The time the action was initiated + The fingerprint for this PublicKey. """ - createdAt: PreciseDateTime! + fingerprint: String! id: ID! """ - The corresponding operation type for the action + Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. """ - operationType: OperationType + isReadOnly: Boolean """ - The Organization associated with the Audit Entry. + The public key string. """ - organization: Organization + key: String! """ - The name of the Organization. + Identifies the date and time when the key was updated. Keys created before + March 5th, 2014 may have inaccurate values. Values will be null for keys not + owned by the user. """ - organizationName: String + updatedAt: DateTime +} +""" +The connection type for PublicKey. +""" +type PublicKeyConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [PublicKeyEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [PublicKey] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type PublicKeyEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: PublicKey } """ -Audit log entry for a org.disable_oauth_app_restrictions event. +Autogenerated input type of PublishSponsorsTier """ -type OrgDisableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name +input PublishSponsorsTierInput { """ - action: String! - - """ - The user who initiated the action + A unique identifier for the client performing the mutation. """ - actor: AuditEntryActor + clientMutationId: String """ - The IP address of the actor + The ID of the draft tier to publish. """ - actorIp: String + tierId: ID! @possibleTypes(concreteTypes: ["SponsorsTier"]) +} +""" +Autogenerated return type of PublishSponsorsTier +""" +type PublishSponsorsTierPayload { """ - A readable representation of the actor's location + A unique identifier for the client performing the mutation. """ - actorLocation: ActorLocation + clientMutationId: String """ - The username of the user who initiated the action + The tier that was published. """ - actorLogin: String + sponsorsTier: SponsorsTier +} +""" +A repository pull request. +""" +type PullRequest implements Assignable & Closable & Comment & Labelable & Lockable & Node & ProjectV2Owner & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ - The HTTP path for the actor. + Reason that the conversation was locked. """ - actorResourcePath: URI + activeLockReason: LockReason """ - The HTTP URL for the actor. + The number of additions in this pull request. """ - actorUrl: URI + additions: Int! """ - The time the action was initiated + A list of Users assigned to this object. """ - createdAt: PreciseDateTime! - id: ID! + assignees( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The HTTP path for the organization + The actor who authored the comment. """ - organizationResourcePath: URI + author: Actor """ - The HTTP URL for the organization + Author's association with the subject of the comment. """ - organizationUrl: URI + authorAssociation: CommentAuthorAssociation! """ - The user affected by the action + Returns the auto-merge request object if one exists for this pull request. """ - user: User + autoMergeRequest: AutoMergeRequest """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the base Ref associated with the pull request. """ - userLogin: String + baseRef: Ref """ - The HTTP path for the user. + Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. """ - userResourcePath: URI + baseRefName: String! """ - The HTTP URL for the user. + Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. """ - userUrl: URI -} + baseRefOid: GitObjectID! -""" -Audit log entry for a org.disable_saml event. -""" -type OrgDisableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The repository associated with this pull request's base Ref. """ - action: String! + baseRepository: Repository """ - The user who initiated the action + The body as Markdown. """ - actor: AuditEntryActor + body: String! """ - The IP address of the actor + The body rendered to HTML. """ - actorIp: String + bodyHTML: HTML! """ - A readable representation of the actor's location + The body rendered to text. """ - actorLocation: ActorLocation + bodyText: String! """ - The username of the user who initiated the action + Whether or not the pull request is rebaseable. """ - actorLogin: String + canBeRebased: Boolean! @preview(toggledBy: "merge-info-preview") """ - The HTTP path for the actor. + The number of changed files in this pull request. """ - actorResourcePath: URI + changedFiles: Int! """ - The HTTP URL for the actor. + The HTTP path for the checks of this pull request. """ - actorUrl: URI + checksResourcePath: URI! """ - The time the action was initiated + The HTTP URL for the checks of this pull request. """ - createdAt: PreciseDateTime! + checksUrl: URI! """ - The SAML provider's digest algorithm URL. + `true` if the pull request is closed """ - digestMethodUrl: URI - id: ID! + closed: Boolean! """ - The SAML provider's issuer URL. + Identifies the date and time when the object was closed. """ - issuerUrl: URI + closedAt: DateTime """ - The corresponding operation type for the action + List of issues that were may be closed by this pull request """ - operationType: OperationType + closingIssuesReferences( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the organization - """ - organizationUrl: URI + """ + Ordering options for issues returned from the connection + """ + orderBy: IssueOrder - """ - The SAML provider's signature algorithm URL. - """ - signatureMethodUrl: URI + """ + Return only manually linked Issues + """ + userLinkedOnly: Boolean = false + ): IssueConnection """ - The SAML provider's single sign-on URL. + A list of comments associated with the pull request. """ - singleSignOnUrl: URI + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The user affected by the action - """ - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the user. - """ - userUrl: URI -} + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder + ): IssueCommentConnection! -""" -Audit log entry for a org.disable_two_factor_requirement event. -""" -type OrgDisableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + A list of commits present in this pull request's head branch not present in the base branch. """ - action: String! + commits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The user who initiated the action - """ - actor: AuditEntryActor + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The IP address of the actor - """ - actorIp: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestCommitConnection! """ - The username of the user who initiated the action + Identifies the date and time when the object was created. """ - actorLogin: String + createdAt: DateTime! """ - The HTTP path for the actor. + Check if this comment was created via an email reply. """ - actorResourcePath: URI + createdViaEmail: Boolean! """ - The HTTP URL for the actor. + Identifies the primary key from the database. """ - actorUrl: URI + databaseId: Int """ - The time the action was initiated + The number of deletions in this pull request. """ - createdAt: PreciseDateTime! - id: ID! + deletions: Int! """ - The corresponding operation type for the action + The actor who edited this pull request's body. """ - operationType: OperationType + editor: Actor """ - The Organization associated with the Audit Entry. + Lists the files changed within this pull request. """ - organization: Organization + files( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP URL for the organization - """ - organizationUrl: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestChangedFileConnection """ - The user affected by the action + Identifies the head Ref associated with the pull request. """ - user: User + headRef: Ref """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. """ - userLogin: String + headRefName: String! """ - The HTTP path for the user. + Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. """ - userResourcePath: URI + headRefOid: GitObjectID! """ - The HTTP URL for the user. + The repository associated with this pull request's head Ref. """ - userUrl: URI -} + headRepository: Repository -""" -Audit log entry for a org.enable_oauth_app_restrictions event. -""" -type OrgEnableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The owner of the repository associated with this pull request's head Ref. """ - action: String! + headRepositoryOwner: RepositoryOwner """ - The user who initiated the action + The hovercard information for this issue """ - actor: AuditEntryActor + hovercard( + """ + Whether or not to include notification contexts + """ + includeNotificationContexts: Boolean = true + ): Hovercard! + id: ID! """ - The IP address of the actor + Check if this comment was edited and includes an edit with the creation data """ - actorIp: String + includesCreatedEdit: Boolean! """ - A readable representation of the actor's location + The head and base repositories are different. """ - actorLocation: ActorLocation + isCrossRepository: Boolean! """ - The username of the user who initiated the action + Identifies if the pull request is a draft. """ - actorLogin: String + isDraft: Boolean! """ - The HTTP path for the actor. + Is this pull request read by the viewer """ - actorResourcePath: URI + isReadByViewer: Boolean """ - The HTTP URL for the actor. + A list of labels associated with the object. """ - actorUrl: URI + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The time the action was initiated - """ - createdAt: PreciseDateTime! - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The name of the Organization. - """ - organizationName: String + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection """ - The HTTP path for the organization + The moment the editor made the last edit """ - organizationResourcePath: URI + lastEditedAt: DateTime """ - The HTTP URL for the organization + A list of latest reviews per user associated with the pull request. """ - organizationUrl: URI + latestOpinionatedReviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The user affected by the action - """ - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the user. - """ - userUrl: URI -} + """ + Only return reviews from user who have write access to the repository + """ + writersOnly: Boolean = false + ): PullRequestReviewConnection -""" -Audit log entry for a org.enable_saml event. -""" -type OrgEnableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + A list of latest reviews per user associated with the pull request that are not also pending review. """ - action: String! + latestReviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The user who initiated the action - """ - actor: AuditEntryActor + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The IP address of the actor - """ - actorIp: String + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewConnection """ - A readable representation of the actor's location + `true` if the pull request is locked """ - actorLocation: ActorLocation + locked: Boolean! """ - The username of the user who initiated the action + Indicates whether maintainers can modify the pull request. """ - actorLogin: String + maintainerCanModify: Boolean! """ - The HTTP path for the actor. + The commit that was created when this pull request was merged. """ - actorResourcePath: URI + mergeCommit: Commit """ - The HTTP URL for the actor. + Detailed information about the current pull request merge state status. """ - actorUrl: URI + mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview") """ - The time the action was initiated + Whether or not the pull request can be merged based on the existence of merge conflicts. """ - createdAt: PreciseDateTime! + mergeable: MergeableState! """ - The SAML provider's digest algorithm URL. + Whether or not the pull request was merged. """ - digestMethodUrl: URI - id: ID! + merged: Boolean! """ - The SAML provider's issuer URL. + The date and time that the pull request was merged. """ - issuerUrl: URI + mergedAt: DateTime """ - The corresponding operation type for the action + The actor who merged the pull request. """ - operationType: OperationType + mergedBy: Actor """ - The Organization associated with the Audit Entry. + Identifies the milestone associated with the pull request. """ - organization: Organization + milestone: Milestone """ - The name of the Organization. + Identifies the pull request number. """ - organizationName: String + number: Int! """ - The HTTP path for the organization + A list of Users that are participating in the Pull Request conversation. """ - organizationResourcePath: URI + participants( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The HTTP URL for the organization + The permalink to the pull request. """ - organizationUrl: URI + permalink: URI! """ - The SAML provider's signature algorithm URL. + The commit that GitHub automatically generated to test if this pull request + could be merged. This field will not return a value if the pull request is + merged, or if the test merge commit is still being generated. See the + `mergeable` field for more details on the mergeability of the pull request. """ - signatureMethodUrl: URI + potentialMergeCommit: Commit """ - The SAML provider's single sign-on URL. + List of project cards associated with this pull request. """ - singleSignOnUrl: URI + projectCards( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + A list of archived states to filter the cards by + """ + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! """ - The user affected by the action + List of project items associated with this pull request. """ - user: User + projectItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Include archived items. + """ + includeArchived: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ItemConnection! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Find a project by number. """ - userLogin: String + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - The HTTP path for the user. + A list of projects under the owner. """ - userResourcePath: URI + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! """ - The HTTP URL for the user. + Identifies when the comment was published at. """ - userUrl: URI -} + publishedAt: DateTime -""" -Audit log entry for a org.enable_two_factor_requirement event. -""" -type OrgEnableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + A list of reactions grouped by content left on the subject. """ - action: String! + reactionGroups: [ReactionGroup!] """ - The user who initiated the action + A list of Reactions left on the Issue. """ - actor: AuditEntryActor + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The IP address of the actor + The repository associated with this node. """ - actorIp: String + repository: Repository! """ - A readable representation of the actor's location + The HTTP path for this pull request. """ - actorLocation: ActorLocation + resourcePath: URI! """ - The username of the user who initiated the action + The HTTP path for reverting this pull request. """ - actorLogin: String + revertResourcePath: URI! """ - The HTTP path for the actor. + The HTTP URL for reverting this pull request. """ - actorResourcePath: URI + revertUrl: URI! """ - The HTTP URL for the actor. + The current status of this pull request with respect to code review. """ - actorUrl: URI + reviewDecision: PullRequestReviewDecision """ - The time the action was initiated + A list of review requests associated with the pull request. """ - createdAt: PreciseDateTime! - id: ID! + reviewRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ReviewRequestConnection """ - The corresponding operation type for the action + The list of all review threads for this pull request. """ - operationType: OperationType + reviewThreads( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewThreadConnection! """ - The Organization associated with the Audit Entry. + A list of reviews associated with the pull request. """ - organization: Organization + reviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Filter by author of the review. + """ + author: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the organization - """ - organizationUrl: URI + """ + A list of states to filter the reviews. + """ + states: [PullRequestReviewState!] + ): PullRequestReviewConnection """ - The user affected by the action + Identifies the state of the pull request. """ - user: User + state: PullRequestState! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of reviewer suggestions based on commit history and past review comments. """ - userLogin: String + suggestedReviewers: [SuggestedReviewer]! """ - The HTTP path for the user. + A list of events, comments, commits, etc. associated with the pull request. """ - userResourcePath: URI + timeline( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for the user. - """ - userUrl: URI -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Audit log entry for a org.invite_member event. -""" -type OrgInviteMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The user who initiated the action - """ - actor: AuditEntryActor + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The IP address of the actor - """ - actorIp: String + """ + Allows filtering timeline events by a `since` timestamp. + """ + since: DateTime + ): PullRequestTimelineConnection! + @deprecated(reason: "`timeline` will be removed Use PullRequest.timelineItems instead. Removal on 2020-10-01 UTC.") """ - A readable representation of the actor's location + A list of events, comments, commits, etc. associated with the pull request. """ - actorLocation: ActorLocation + timelineItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP path for the actor. - """ - actorResourcePath: URI + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP URL for the actor. - """ - actorUrl: URI + """ + Filter timeline items by type. + """ + itemTypes: [PullRequestTimelineItemsItemType!] - """ - The time the action was initiated - """ - createdAt: PreciseDateTime! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The email address of the organization invitation. - """ - email: String - id: ID! + """ + Filter timeline items by a `since` timestamp. + """ + since: DateTime - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): PullRequestTimelineItemsConnection! """ - The Organization associated with the Audit Entry. + Identifies the pull request title. """ - organization: Organization + title: String! """ - The organization invitation. + Identifies the pull request title rendered to HTML. """ - organizationInvitation: OrganizationInvitation + titleHTML: HTML! """ - The name of the Organization. + Returns a count of how many comments this pull request has received. """ - organizationName: String + totalCommentsCount: Int """ - The HTTP path for the organization + Identifies the date and time when the object was last updated. """ - organizationResourcePath: URI + updatedAt: DateTime! """ - The HTTP URL for the organization + The HTTP URL for this pull request. """ - organizationUrl: URI + url: URI! """ - The user affected by the action + A list of edits to this content. """ - user: User + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The HTTP URL for the user. + Whether or not the viewer can apply suggestion. """ - userUrl: URI -} + viewerCanApplySuggestion: Boolean! -""" -Audit log entry for a org.invite_to_business event. -""" -type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + Check if the viewer can restore the deleted head ref. """ - action: String! + viewerCanDeleteHeadRef: Boolean! """ - The user who initiated the action + Whether or not the viewer can disable auto-merge """ - actor: AuditEntryActor + viewerCanDisableAutoMerge: Boolean! """ - The IP address of the actor + Can the viewer edit files within this pull request. """ - actorIp: String + viewerCanEditFiles: Boolean! """ - A readable representation of the actor's location + Whether or not the viewer can enable auto-merge """ - actorLocation: ActorLocation + viewerCanEnableAutoMerge: Boolean! """ - The username of the user who initiated the action + Indicates whether the viewer can bypass branch protections and merge the pull request immediately """ - actorLogin: String + viewerCanMergeAsAdmin: Boolean! """ - The HTTP path for the actor. + Can user react to this subject """ - actorResourcePath: URI + viewerCanReact: Boolean! """ - The HTTP URL for the actor. + Check if the viewer is able to change their subscription status for the repository. """ - actorUrl: URI + viewerCanSubscribe: Boolean! """ - The time the action was initiated + Check if the current viewer can update this object. """ - createdAt: PreciseDateTime! + viewerCanUpdate: Boolean! """ - The HTTP path for this enterprise. + Reasons why the current viewer can not update this comment. """ - enterpriseResourcePath: URI + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The slug of the enterprise. + Did the viewer author this comment. """ - enterpriseSlug: String + viewerDidAuthor: Boolean! """ - The HTTP URL for this enterprise. + The latest review given from the viewer. """ - enterpriseUrl: URI - id: ID! + viewerLatestReview: PullRequestReview """ - The corresponding operation type for the action + The person who has requested the viewer for review on this pull request. """ - operationType: OperationType + viewerLatestReviewRequest: ReviewRequest """ - The Organization associated with the Audit Entry. + The merge body text for the viewer and method. """ - organization: Organization + viewerMergeBodyText( + """ + The merge method for the message. + """ + mergeType: PullRequestMergeMethod + ): String! """ - The name of the Organization. + The merge headline text for the viewer and method. """ - organizationName: String + viewerMergeHeadlineText( + """ + The merge method for the message. + """ + mergeType: PullRequestMergeMethod + ): String! """ - The HTTP path for the organization + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - organizationResourcePath: URI + viewerSubscription: SubscriptionState +} +""" +A file changed in a pull request. +""" +type PullRequestChangedFile { """ - The HTTP URL for the organization + The number of additions to the file. """ - organizationUrl: URI + additions: Int! """ - The user affected by the action + How the file was changed in this PullRequest """ - user: User + changeType: PatchStatus! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The number of deletions to the file. """ - userLogin: String + deletions: Int! """ - The HTTP path for the user. + The path of the file. """ - userResourcePath: URI + path: String! """ - The HTTP URL for the user. + The state of the file for the viewer. """ - userUrl: URI + viewerViewedState: FileViewedState! } """ -Audit log entry for a org.oauth_app_access_approved event. +The connection type for PullRequestChangedFile. """ -type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - +type PullRequestChangedFileConnection { """ - The user who initiated the action + A list of edges. """ - actor: AuditEntryActor + edges: [PullRequestChangedFileEdge] """ - The IP address of the actor + A list of nodes. """ - actorIp: String + nodes: [PullRequestChangedFile] """ - A readable representation of the actor's location + Information to aid in pagination. """ - actorLocation: ActorLocation + pageInfo: PageInfo! """ - The username of the user who initiated the action + Identifies the total count of items in the connection. """ - actorLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type PullRequestChangedFileEdge { """ - The HTTP path for the actor. + A cursor for use in pagination. """ - actorResourcePath: URI + cursor: String! """ - The HTTP URL for the actor. + The item at the end of the edge. """ - actorUrl: URI + node: PullRequestChangedFile +} +""" +Represents a Git commit part of a pull request. +""" +type PullRequestCommit implements Node & UniformResourceLocatable { """ - The time the action was initiated + The Git commit object """ - createdAt: PreciseDateTime! + commit: Commit! id: ID! """ - The name of the OAuth Application. + The pull request this commit belongs to """ - oauthApplicationName: String + pullRequest: PullRequest! """ - The HTTP path for the OAuth Application + The HTTP path for this pull request commit """ - oauthApplicationResourcePath: URI + resourcePath: URI! """ - The HTTP URL for the OAuth Application + The HTTP URL for this pull request commit """ - oauthApplicationUrl: URI + url: URI! +} +""" +Represents a commit comment thread part of a pull request. +""" +type PullRequestCommitCommentThread implements Node & RepositoryNode { """ - The corresponding operation type for the action + The comments that exist in this thread. """ - operationType: OperationType + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): CommitCommentConnection! """ - The HTTP URL for the organization + The commit the comments were made on. """ - organizationUrl: URI + commit: Commit! + id: ID! """ - The user affected by the action + The file the comments were made on. """ - user: User + path: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The position in the diff for the commit that the comment was made on. """ - userLogin: String + position: Int """ - The HTTP path for the user. + The pull request this commit comment thread belongs to """ - userResourcePath: URI + pullRequest: PullRequest! """ - The HTTP URL for the user. + The repository associated with this node. """ - userUrl: URI + repository: Repository! } """ -Audit log entry for a org.oauth_app_access_denied event. +The connection type for PullRequestCommit. """ -type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - - """ - The user who initiated the action - """ - actor: AuditEntryActor - +type PullRequestCommitConnection { """ - The IP address of the actor + A list of edges. """ - actorIp: String + edges: [PullRequestCommitEdge] """ - A readable representation of the actor's location + A list of nodes. """ - actorLocation: ActorLocation + nodes: [PullRequestCommit] """ - The username of the user who initiated the action + Information to aid in pagination. """ - actorLogin: String + pageInfo: PageInfo! """ - The HTTP path for the actor. + Identifies the total count of items in the connection. """ - actorResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type PullRequestCommitEdge { """ - The HTTP URL for the actor. + A cursor for use in pagination. """ - actorUrl: URI + cursor: String! """ - The time the action was initiated + The item at the end of the edge. """ - createdAt: PreciseDateTime! - id: ID! + node: PullRequestCommit +} +""" +The connection type for PullRequest. +""" +type PullRequestConnection { """ - The name of the OAuth Application. + A list of edges. """ - oauthApplicationName: String + edges: [PullRequestEdge] """ - The HTTP path for the OAuth Application + A list of nodes. """ - oauthApplicationResourcePath: URI + nodes: [PullRequest] """ - The HTTP URL for the OAuth Application + Information to aid in pagination. """ - oauthApplicationUrl: URI + pageInfo: PageInfo! """ - The corresponding operation type for the action + Identifies the total count of items in the connection. """ - operationType: OperationType + totalCount: Int! +} +""" +This aggregates pull requests opened by a user within one repository. +""" +type PullRequestContributionsByRepository { """ - The Organization associated with the Audit Entry. + The pull request contributions. """ - organization: Organization + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP URL for the organization - """ - organizationUrl: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The user affected by the action - """ - user: User + """ + Ordering options for contributions returned from the connection. + """ + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestContributionConnection! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The repository in which the pull requests were opened. """ - userLogin: String + repository: Repository! +} +""" +An edge in a connection. +""" +type PullRequestEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: PullRequest } """ -Audit log entry for a org.oauth_app_access_requested event. +Represents available types of methods to use when merging a pull request. """ -type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { +enum PullRequestMergeMethod { """ - The action name + Add all commits from the head branch to the base branch with a merge commit. """ - action: String! + MERGE """ - The user who initiated the action + Add all commits from the head branch onto the base branch individually. """ - actor: AuditEntryActor + REBASE """ - The IP address of the actor + Combine all commits from the head branch into a single commit in the base branch. """ - actorIp: String + SQUASH +} +""" +Ways in which lists of issues can be ordered upon return. +""" +input PullRequestOrder { """ - A readable representation of the actor's location + The direction in which to order pull requests by the specified field. """ - actorLocation: ActorLocation + direction: OrderDirection! """ - The username of the user who initiated the action + The field in which to order pull requests by. """ - actorLogin: String + field: PullRequestOrderField! +} +""" +Properties by which pull_requests connections can be ordered. +""" +enum PullRequestOrderField { """ - The HTTP path for the actor. + Order pull_requests by creation time """ - actorResourcePath: URI + CREATED_AT """ - The HTTP URL for the actor. + Order pull_requests by update time """ - actorUrl: URI + UPDATED_AT +} +""" +A review object for a given pull request. +""" +type PullRequestReview implements Comment & Deletable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The time the action was initiated + The actor who authored the comment. """ - createdAt: PreciseDateTime! - id: ID! + author: Actor """ - The name of the OAuth Application. + Author's association with the subject of the comment. """ - oauthApplicationName: String + authorAssociation: CommentAuthorAssociation! """ - The HTTP path for the OAuth Application + Indicates whether the author of this review has push access to the repository. """ - oauthApplicationResourcePath: URI + authorCanPushToRepository: Boolean! """ - The HTTP URL for the OAuth Application + Identifies the pull request review body. """ - oauthApplicationUrl: URI + body: String! """ - The corresponding operation type for the action + The body rendered to HTML. """ - operationType: OperationType + bodyHTML: HTML! """ - The Organization associated with the Audit Entry. + The body of this review rendered as plain text. """ - organization: Organization + bodyText: String! """ - The name of the Organization. + A list of review comments for the current pull request review. """ - organizationName: String + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewCommentConnection! """ - The HTTP path for the organization + Identifies the commit associated with this pull request review. """ - organizationResourcePath: URI + commit: Commit """ - The HTTP URL for the organization + Identifies the date and time when the object was created. """ - organizationUrl: URI + createdAt: DateTime! """ - The user affected by the action + Check if this comment was created via an email reply. """ - user: User + createdViaEmail: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the primary key from the database. """ - userLogin: String + databaseId: Int """ - The HTTP path for the user. + The actor who edited the comment. """ - userResourcePath: URI + editor: Actor + id: ID! """ - The HTTP URL for the user. + Check if this comment was edited and includes an edit with the creation data """ - userUrl: URI -} + includesCreatedEdit: Boolean! -""" -Audit log entry for a org.remove_billing_manager event. -""" -type OrgRemoveBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The moment the editor made the last edit """ - action: String! + lastEditedAt: DateTime """ - The user who initiated the action + A list of teams that this review was made on behalf of. """ - actor: AuditEntryActor + onBehalfOf( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): TeamConnection! """ - The IP address of the actor + Identifies when the comment was published at. """ - actorIp: String + publishedAt: DateTime """ - A readable representation of the actor's location + Identifies the pull request associated with this pull request review. """ - actorLocation: ActorLocation + pullRequest: PullRequest! """ - The username of the user who initiated the action + A list of reactions grouped by content left on the subject. """ - actorLogin: String + reactionGroups: [ReactionGroup!] """ - The HTTP path for the actor. + A list of Reactions left on the Issue. """ - actorResourcePath: URI + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The HTTP URL for the actor. + The repository associated with this node. """ - actorUrl: URI + repository: Repository! """ - The time the action was initiated + The HTTP path permalink for this PullRequestReview. """ - createdAt: PreciseDateTime! - id: ID! + resourcePath: URI! """ - The corresponding operation type for the action + Identifies the current state of the pull request review. """ - operationType: OperationType + state: PullRequestReviewState! """ - The Organization associated with the Audit Entry. + Identifies when the Pull Request Review was submitted """ - organization: Organization + submittedAt: DateTime """ - The name of the Organization. + Identifies the date and time when the object was last updated. """ - organizationName: String + updatedAt: DateTime! """ - The HTTP path for the organization + The HTTP URL permalink for this PullRequestReview. """ - organizationResourcePath: URI + url: URI! """ - The HTTP URL for the organization + A list of edits to this content. """ - organizationUrl: URI + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The reason for the billing manager being removed. + Check if the current viewer can delete this object. """ - reason: OrgRemoveBillingManagerAuditEntryReason + viewerCanDelete: Boolean! """ - The user affected by the action + Can user react to this subject """ - user: User + viewerCanReact: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Check if the current viewer can update this object. """ - userLogin: String + viewerCanUpdate: Boolean! """ - The HTTP path for the user. + Reasons why the current viewer can not update this comment. """ - userResourcePath: URI + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The HTTP URL for the user. + Did the viewer author this comment. """ - userUrl: URI + viewerDidAuthor: Boolean! } """ -The reason a billing manager was removed from an Organization. +A review comment associated with a given repository pull request. """ -enum OrgRemoveBillingManagerAuditEntryReason { +type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - SAML external identity missing + The actor who authored the comment. """ - SAML_EXTERNAL_IDENTITY_MISSING + author: Actor """ - SAML SSO enforcement requires an external identity + Author's association with the subject of the comment. """ - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + authorAssociation: CommentAuthorAssociation! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The comment body of this review comment. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE -} + body: String! -""" -Audit log entry for a org.remove_member event. -""" -type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The body rendered to HTML. """ - action: String! + bodyHTML: HTML! """ - The user who initiated the action + The comment body of this review comment rendered as plain text. """ - actor: AuditEntryActor + bodyText: String! """ - The IP address of the actor + Identifies the commit associated with the comment. """ - actorIp: String + commit: Commit """ - A readable representation of the actor's location + Identifies when the comment was created. """ - actorLocation: ActorLocation + createdAt: DateTime! """ - The username of the user who initiated the action + Check if this comment was created via an email reply. """ - actorLogin: String + createdViaEmail: Boolean! """ - The HTTP path for the actor. + Identifies the primary key from the database. """ - actorResourcePath: URI + databaseId: Int """ - The HTTP URL for the actor. + The diff hunk to which the comment applies. """ - actorUrl: URI + diffHunk: String! """ - The time the action was initiated + Identifies when the comment was created in a draft state. """ - createdAt: PreciseDateTime! - id: ID! + draftedAt: DateTime! """ - The types of membership the member has with the organization. + The actor who edited the comment. """ - membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] + editor: Actor + id: ID! """ - The corresponding operation type for the action + Check if this comment was edited and includes an edit with the creation data """ - operationType: OperationType + includesCreatedEdit: Boolean! """ - The Organization associated with the Audit Entry. + Returns whether or not a comment has been minimized. """ - organization: Organization + isMinimized: Boolean! """ - The name of the Organization. + The moment the editor made the last edit """ - organizationName: String + lastEditedAt: DateTime """ - The HTTP path for the organization + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. """ - organizationResourcePath: URI + minimizedReason: String """ - The HTTP URL for the organization + Identifies the original commit associated with the comment. """ - organizationUrl: URI + originalCommit: Commit """ - The reason for the member being removed. + The original line index in the diff to which the comment applies. """ - reason: OrgRemoveMemberAuditEntryReason + originalPosition: Int! """ - The user affected by the action + Identifies when the comment body is outdated """ - user: User + outdated: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The path to which the comment applies. """ - userLogin: String + path: String! """ - The HTTP path for the user. + The line index in the diff to which the comment applies. """ - userResourcePath: URI + position: Int """ - The HTTP URL for the user. + Identifies when the comment was published at. """ - userUrl: URI -} + publishedAt: DateTime -""" -The type of membership a user has with an Organization. -""" -enum OrgRemoveMemberAuditEntryMembershipType { """ - Organization administrators have full access and can change several settings, - including the names of repositories that belong to the Organization and Owners - team membership. In addition, organization admins can delete the organization - and all of its repositories. + The pull request associated with this review comment. """ - ADMIN + pullRequest: PullRequest! """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + The pull request review associated with this review comment. """ - BILLING_MANAGER + pullRequestReview: PullRequestReview """ - A direct member is a user that is a member of the Organization. + A list of reactions grouped by content left on the subject. """ - DIRECT_MEMBER + reactionGroups: [ReactionGroup!] """ - An outside collaborator is a person who isn't explicitly a member of the - Organization, but who has Read, Write, or Admin permissions to one or more - repositories in the organization. + A list of Reactions left on the Issue. """ - OUTSIDE_COLLABORATOR + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - An unaffiliated collaborator is a person who is not a member of the - Organization and does not have access to any repositories in the Organization. - """ - UNAFFILIATED -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -The reason a member was removed from an Organization. -""" -enum OrgRemoveMemberAuditEntryReason { - """ - SAML external identity missing - """ - SAML_EXTERNAL_IDENTITY_MISSING + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - SAML SSO enforcement requires an external identity + The comment this is a reply to. """ - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + replyTo: PullRequestReviewComment """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The repository associated with this node. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE -} + repository: Repository! -""" -Audit log entry for a org.remove_outside_collaborator event. -""" -type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The HTTP path permalink for this review comment. """ - action: String! + resourcePath: URI! """ - The user who initiated the action + Identifies the state of the comment. """ - actor: AuditEntryActor + state: PullRequestReviewCommentState! """ - The IP address of the actor + Identifies when the comment was last updated. """ - actorIp: String + updatedAt: DateTime! """ - A readable representation of the actor's location + The HTTP URL permalink for this review comment. """ - actorLocation: ActorLocation + url: URI! """ - The username of the user who initiated the action + A list of edits to this content. """ - actorLogin: String + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The HTTP path for the actor. + Check if the current viewer can delete this object. """ - actorResourcePath: URI + viewerCanDelete: Boolean! """ - The HTTP URL for the actor. + Check if the current viewer can minimize this object. """ - actorUrl: URI + viewerCanMinimize: Boolean! """ - The time the action was initiated + Can user react to this subject """ - createdAt: PreciseDateTime! - id: ID! + viewerCanReact: Boolean! """ - The types of membership the outside collaborator has with the organization. + Check if the current viewer can update this object. """ - membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] + viewerCanUpdate: Boolean! """ - The corresponding operation type for the action + Reasons why the current viewer can not update this comment. """ - operationType: OperationType + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The Organization associated with the Audit Entry. + Did the viewer author this comment. """ - organization: Organization + viewerDidAuthor: Boolean! +} +""" +The connection type for PullRequestReviewComment. +""" +type PullRequestReviewCommentConnection { """ - The name of the Organization. + A list of edges. """ - organizationName: String + edges: [PullRequestReviewCommentEdge] """ - The HTTP path for the organization + A list of nodes. """ - organizationResourcePath: URI + nodes: [PullRequestReviewComment] """ - The HTTP URL for the organization + Information to aid in pagination. """ - organizationUrl: URI + pageInfo: PageInfo! """ - The reason for the outside collaborator being removed from the Organization. + Identifies the total count of items in the connection. """ - reason: OrgRemoveOutsideCollaboratorAuditEntryReason + totalCount: Int! +} +""" +An edge in a connection. +""" +type PullRequestReviewCommentEdge { """ - The user affected by the action + A cursor for use in pagination. """ - user: User + cursor: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The item at the end of the edge. """ - userLogin: String + node: PullRequestReviewComment +} +""" +The possible states of a pull request review comment. +""" +enum PullRequestReviewCommentState { """ - The HTTP path for the user. + A comment that is part of a pending review """ - userResourcePath: URI + PENDING """ - The HTTP URL for the user. + A comment that is part of a submitted review """ - userUrl: URI + SUBMITTED } """ -The type of membership a user has with an Organization. +The connection type for PullRequestReview. """ -enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { +type PullRequestReviewConnection { """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + A list of edges. """ - BILLING_MANAGER + edges: [PullRequestReviewEdge] """ - An outside collaborator is a person who isn't explicitly a member of the - Organization, but who has Read, Write, or Admin permissions to one or more - repositories in the organization. + A list of nodes. """ - OUTSIDE_COLLABORATOR + nodes: [PullRequestReview] """ - An unaffiliated collaborator is a person who is not a member of the - Organization and does not have access to any repositories in the organization. + Information to aid in pagination. """ - UNAFFILIATED + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -The reason an outside collaborator was removed from an Organization. +This aggregates pull request reviews made by a user within one repository. """ -enum OrgRemoveOutsideCollaboratorAuditEntryReason { +type PullRequestReviewContributionsByRepository { """ - SAML external identity missing + The pull request review contributions. """ - SAML_EXTERNAL_IDENTITY_MISSING + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for contributions returned from the connection. + """ + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestReviewContributionConnection! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The repository in which the pull request reviews were made. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + repository: Repository! } """ -Audit log entry for a org.restore_member event. +The review status of a pull request. """ -type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +enum PullRequestReviewDecision { """ - The action name + The pull request has received an approving review. """ - action: String! + APPROVED """ - The user who initiated the action + Changes have been requested on the pull request. """ - actor: AuditEntryActor + CHANGES_REQUESTED """ - The IP address of the actor + A review is required before the pull request can be merged. """ - actorIp: String + REVIEW_REQUIRED +} +""" +An edge in a connection. +""" +type PullRequestReviewEdge { """ - A readable representation of the actor's location + A cursor for use in pagination. """ - actorLocation: ActorLocation + cursor: String! """ - The username of the user who initiated the action + The item at the end of the edge. """ - actorLogin: String + node: PullRequestReview +} +""" +The possible events to perform on a pull request review. +""" +enum PullRequestReviewEvent { """ - The HTTP path for the actor. + Submit feedback and approve merging these changes. """ - actorResourcePath: URI + APPROVE """ - The HTTP URL for the actor. + Submit general feedback without explicit approval. """ - actorUrl: URI + COMMENT """ - The time the action was initiated + Dismiss review so it now longer effects merging. """ - createdAt: PreciseDateTime! - id: ID! + DISMISS """ - The corresponding operation type for the action + Submit feedback that must be addressed before merging. """ - operationType: OperationType + REQUEST_CHANGES +} +""" +The possible states of a pull request review. +""" +enum PullRequestReviewState { """ - The Organization associated with the Audit Entry. + A review allowing the pull request to merge. """ - organization: Organization + APPROVED """ - The name of the Organization. + A review blocking the pull request from merging. """ - organizationName: String + CHANGES_REQUESTED """ - The HTTP path for the organization + An informational review. """ - organizationResourcePath: URI + COMMENTED """ - The HTTP URL for the organization + A review that has been dismissed. """ - organizationUrl: URI + DISMISSED """ - The number of custom email routings for the restored member. + A review that has not yet been submitted. """ - restoredCustomEmailRoutingsCount: Int + PENDING +} +""" +A threaded list of comments for a given pull request. +""" +type PullRequestReviewThread implements Node { """ - The number of issue assignemnts for the restored member. + A list of pull request comments associated with the thread. """ - restoredIssueAssignmentsCount: Int + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Restored organization membership objects. - """ - restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): PullRequestReviewCommentConnection! """ - The number of restored memberships. + The side of the diff on which this thread was placed. """ - restoredMembershipsCount: Int + diffSide: DiffSide! + id: ID! """ - The number of repositories of the restored member. + Whether or not the thread has been collapsed (resolved) """ - restoredRepositoriesCount: Int + isCollapsed: Boolean! """ - The number of starred repositories for the restored member. + Indicates whether this thread was outdated by newer changes. """ - restoredRepositoryStarsCount: Int + isOutdated: Boolean! """ - The number of watched repositories for the restored member. + Whether this thread has been resolved """ - restoredRepositoryWatchesCount: Int + isResolved: Boolean! """ - The user affected by the action + The line in the file to which this thread refers """ - user: User + line: Int """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The original line in the file to which this thread refers. """ - userLogin: String + originalLine: Int """ - The HTTP path for the user. + The original start line in the file to which this thread refers (multi-line only). """ - userResourcePath: URI + originalStartLine: Int """ - The HTTP URL for the user. + Identifies the file path of this thread. """ - userUrl: URI -} - -""" -Types of memberships that can be restored for an Organization member. -""" -union OrgRestoreMemberAuditEntryMembership = OrgRestoreMemberMembershipOrganizationAuditEntryData | OrgRestoreMemberMembershipRepositoryAuditEntryData | OrgRestoreMemberMembershipTeamAuditEntryData + path: String! -""" -Metadata for an organization membership for org.restore_member actions -""" -type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { """ - The Organization associated with the Audit Entry. + Identifies the pull request associated with this thread. """ - organization: Organization + pullRequest: PullRequest! """ - The name of the Organization. + Identifies the repository associated with this thread. """ - organizationName: String + repository: Repository! """ - The HTTP path for the organization + The user who resolved this thread """ - organizationResourcePath: URI + resolvedBy: User """ - The HTTP URL for the organization + The side of the diff that the first line of the thread starts on (multi-line only) """ - organizationUrl: URI -} + startDiffSide: DiffSide -""" -Metadata for a repository membership for org.restore_member actions -""" -type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { """ - The repository associated with the action + The start line in the file to which this thread refers (multi-line only) """ - repository: Repository + startLine: Int """ - The name of the repository + Indicates whether the current viewer can reply to this thread. """ - repositoryName: String + viewerCanReply: Boolean! """ - The HTTP path for the repository + Whether or not the viewer can resolve this thread """ - repositoryResourcePath: URI + viewerCanResolve: Boolean! """ - The HTTP URL for the repository + Whether or not the viewer can unresolve this thread """ - repositoryUrl: URI + viewerCanUnresolve: Boolean! } """ -Metadata for a team membership for org.restore_member actions +Review comment threads for a pull request review. """ -type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { +type PullRequestReviewThreadConnection { """ - The team associated with the action + A list of edges. """ - team: Team + edges: [PullRequestReviewThreadEdge] """ - The name of the team + A list of nodes. """ - teamName: String + nodes: [PullRequestReviewThread] """ - The HTTP path for this team + Information to aid in pagination. """ - teamResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for this team + Identifies the total count of items in the connection. """ - teamUrl: URI + totalCount: Int! } """ -Audit log entry for a org.unblock_user +An edge in a connection. """ -type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type PullRequestReviewThreadEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: PullRequestReviewThread +} +""" +Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. +""" +type PullRequestRevisionMarker { """ - The IP address of the actor + Identifies the date and time when the object was created. """ - actorIp: String + createdAt: DateTime! """ - A readable representation of the actor's location + The last commit the viewer has seen. """ - actorLocation: ActorLocation + lastSeenCommit: Commit! """ - The username of the user who initiated the action + The pull request to which the marker belongs. """ - actorLogin: String + pullRequest: PullRequest! +} +""" +The possible states of a pull request. +""" +enum PullRequestState { """ - The HTTP path for the actor. + A pull request that has been closed without being merged. """ - actorResourcePath: URI + CLOSED """ - The HTTP URL for the actor. + A pull request that has been closed by being merged. """ - actorUrl: URI + MERGED """ - The user being unblocked by the organization. + A pull request that is still open. """ - blockedUser: User + OPEN +} +""" +A repository pull request template. +""" +type PullRequestTemplate { """ - The username of the blocked user. + The body of the template """ - blockedUserName: String + body: String """ - The HTTP path for the blocked user. + The filename of the template """ - blockedUserResourcePath: URI + filename: String """ - The HTTP URL for the blocked user. + The repository the template belongs to """ - blockedUserUrl: URI + repository: Repository! +} +""" +A threaded list of comments for a given pull request. +""" +type PullRequestThread implements Node { """ - The time the action was initiated + A list of pull request comments associated with the thread. """ - createdAt: PreciseDateTime! - id: ID! + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): PullRequestReviewCommentConnection! """ - The HTTP URL for the organization + The side of the diff on which this thread was placed. """ - organizationUrl: URI + diffSide: DiffSide! + id: ID! """ - The user affected by the action + Whether or not the thread has been collapsed (resolved) """ - user: User + isCollapsed: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Indicates whether this thread was outdated by newer changes. """ - userLogin: String + isOutdated: Boolean! """ - The HTTP path for the user. + Whether this thread has been resolved """ - userResourcePath: URI + isResolved: Boolean! """ - The HTTP URL for the user. + The line in the file to which this thread refers """ - userUrl: URI -} + line: Int -""" -Audit log entry for a org.update_default_repository_permission -""" -type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Identifies the pull request associated with this thread. """ - action: String! + pullRequest: PullRequest! """ - The user who initiated the action + Identifies the repository associated with this thread. """ - actor: AuditEntryActor + repository: Repository! """ - The IP address of the actor + The user who resolved this thread """ - actorIp: String + resolvedBy: User """ - A readable representation of the actor's location + The side of the diff that the first line of the thread starts on (multi-line only) """ - actorLocation: ActorLocation + startDiffSide: DiffSide """ - The username of the user who initiated the action + The line of the first file diff in the thread. """ - actorLogin: String + startLine: Int """ - The HTTP path for the actor. + Indicates whether the current viewer can reply to this thread. """ - actorResourcePath: URI + viewerCanReply: Boolean! """ - The HTTP URL for the actor. + Whether or not the viewer can resolve this thread """ - actorUrl: URI + viewerCanResolve: Boolean! """ - The time the action was initiated + Whether or not the viewer can unresolve this thread """ - createdAt: PreciseDateTime! - id: ID! + viewerCanUnresolve: Boolean! +} +""" +The connection type for PullRequestTimelineItem. +""" +type PullRequestTimelineConnection { """ - The corresponding operation type for the action + A list of edges. """ - operationType: OperationType + edges: [PullRequestTimelineItemEdge] """ - The Organization associated with the Audit Entry. + A list of nodes. """ - organization: Organization + nodes: [PullRequestTimelineItem] """ - The name of the Organization. + Information to aid in pagination. """ - organizationName: String + pageInfo: PageInfo! """ - The HTTP path for the organization + Identifies the total count of items in the connection. """ - organizationResourcePath: URI + totalCount: Int! +} - """ - The HTTP URL for the organization - """ - organizationUrl: URI +""" +An item in a pull request timeline +""" +union PullRequestTimelineItem = + AssignedEvent + | BaseRefDeletedEvent + | BaseRefForcePushedEvent + | ClosedEvent + | Commit + | CommitCommentThread + | CrossReferencedEvent + | DemilestonedEvent + | DeployedEvent + | DeploymentEnvironmentChangedEvent + | HeadRefDeletedEvent + | HeadRefForcePushedEvent + | HeadRefRestoredEvent + | IssueComment + | LabeledEvent + | LockedEvent + | MergedEvent + | MilestonedEvent + | PullRequestReview + | PullRequestReviewComment + | PullRequestReviewThread + | ReferencedEvent + | RenamedTitleEvent + | ReopenedEvent + | ReviewDismissedEvent + | ReviewRequestRemovedEvent + | ReviewRequestedEvent + | SubscribedEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnsubscribedEvent + | UserBlockedEvent +""" +An edge in a connection. +""" +type PullRequestTimelineItemEdge { """ - The new default repository permission level for the organization. + A cursor for use in pagination. """ - permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + cursor: String! """ - The former default repository permission level for the organization. + The item at the end of the edge. """ - permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + node: PullRequestTimelineItem +} - """ - The user affected by the action - """ - user: User +""" +An item in a pull request timeline +""" +union PullRequestTimelineItems = + AddedToProjectEvent + | AssignedEvent + | AutoMergeDisabledEvent + | AutoMergeEnabledEvent + | AutoRebaseEnabledEvent + | AutoSquashEnabledEvent + | AutomaticBaseChangeFailedEvent + | AutomaticBaseChangeSucceededEvent + | BaseRefChangedEvent + | BaseRefDeletedEvent + | BaseRefForcePushedEvent + | ClosedEvent + | CommentDeletedEvent + | ConnectedEvent + | ConvertToDraftEvent + | ConvertedNoteToIssueEvent + | ConvertedToDiscussionEvent + | CrossReferencedEvent + | DemilestonedEvent + | DeployedEvent + | DeploymentEnvironmentChangedEvent + | DisconnectedEvent + | HeadRefDeletedEvent + | HeadRefForcePushedEvent + | HeadRefRestoredEvent + | IssueComment + | LabeledEvent + | LockedEvent + | MarkedAsDuplicateEvent + | MentionedEvent + | MergedEvent + | MilestonedEvent + | MovedColumnsInProjectEvent + | PinnedEvent + | PullRequestCommit + | PullRequestCommitCommentThread + | PullRequestReview + | PullRequestReviewThread + | PullRequestRevisionMarker + | ReadyForReviewEvent + | ReferencedEvent + | RemovedFromProjectEvent + | RenamedTitleEvent + | ReopenedEvent + | ReviewDismissedEvent + | ReviewRequestRemovedEvent + | ReviewRequestedEvent + | SubscribedEvent + | TransferredEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnmarkedAsDuplicateEvent + | UnpinnedEvent + | UnsubscribedEvent + | UserBlockedEvent +""" +The connection type for PullRequestTimelineItems. +""" +type PullRequestTimelineItemsConnection { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of edges. """ - userLogin: String + edges: [PullRequestTimelineItemsEdge] """ - The HTTP path for the user. + Identifies the count of items after applying `before` and `after` filters. """ - userResourcePath: URI + filteredCount: Int! """ - The HTTP URL for the user. + A list of nodes. """ - userUrl: URI -} + nodes: [PullRequestTimelineItems] -""" -The default permission a repository can have in an Organization. -""" -enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { """ - Can read, clone, push, and add collaborators to repositories. + Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. """ - ADMIN + pageCount: Int! """ - No default permission value. + Information to aid in pagination. """ - NONE + pageInfo: PageInfo! """ - Can read and clone repositories. + Identifies the total count of items in the connection. """ - READ + totalCount: Int! """ - Can read, clone and push to repositories. + Identifies the date and time when the timeline was last updated. """ - WRITE + updatedAt: DateTime! } """ -Audit log entry for a org.update_member event. +An edge in a connection. """ -type OrgUpdateMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type PullRequestTimelineItemsEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: PullRequestTimelineItems +} +""" +The possible item types found in a timeline. +""" +enum PullRequestTimelineItemsItemType { """ - The IP address of the actor + Represents an 'added_to_merge_queue' event on a given pull request. """ - actorIp: String + ADDED_TO_MERGE_QUEUE_EVENT """ - A readable representation of the actor's location + Represents a 'added_to_project' event on a given issue or pull request. """ - actorLocation: ActorLocation + ADDED_TO_PROJECT_EVENT """ - The username of the user who initiated the action + Represents an 'assigned' event on any assignable object. """ - actorLogin: String + ASSIGNED_EVENT """ - The HTTP path for the actor. + Represents a 'automatic_base_change_failed' event on a given pull request. """ - actorResourcePath: URI + AUTOMATIC_BASE_CHANGE_FAILED_EVENT """ - The HTTP URL for the actor. + Represents a 'automatic_base_change_succeeded' event on a given pull request. """ - actorUrl: URI + AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT """ - The time the action was initiated + Represents a 'auto_merge_disabled' event on a given pull request. """ - createdAt: PreciseDateTime! - id: ID! + AUTO_MERGE_DISABLED_EVENT """ - The corresponding operation type for the action + Represents a 'auto_merge_enabled' event on a given pull request. """ - operationType: OperationType + AUTO_MERGE_ENABLED_EVENT """ - The Organization associated with the Audit Entry. + Represents a 'auto_rebase_enabled' event on a given pull request. """ - organization: Organization + AUTO_REBASE_ENABLED_EVENT """ - The name of the Organization. + Represents a 'auto_squash_enabled' event on a given pull request. """ - organizationName: String + AUTO_SQUASH_ENABLED_EVENT """ - The HTTP path for the organization + Represents a 'base_ref_changed' event on a given issue or pull request. """ - organizationResourcePath: URI + BASE_REF_CHANGED_EVENT """ - The HTTP URL for the organization + Represents a 'base_ref_deleted' event on a given pull request. """ - organizationUrl: URI + BASE_REF_DELETED_EVENT """ - The new member permission level for the organization. + Represents a 'base_ref_force_pushed' event on a given pull request. """ - permission: OrgUpdateMemberAuditEntryPermission + BASE_REF_FORCE_PUSHED_EVENT """ - The former member permission level for the organization. + Represents a 'closed' event on any `Closable`. """ - permissionWas: OrgUpdateMemberAuditEntryPermission + CLOSED_EVENT """ - The user affected by the action + Represents a 'comment_deleted' event on a given issue or pull request. """ - user: User + COMMENT_DELETED_EVENT """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Represents a 'connected' event on a given issue or pull request. """ - userLogin: String + CONNECTED_EVENT """ - The HTTP path for the user. + Represents a 'converted_note_to_issue' event on a given issue or pull request. """ - userResourcePath: URI + CONVERTED_NOTE_TO_ISSUE_EVENT """ - The HTTP URL for the user. + Represents a 'converted_to_discussion' event on a given issue. """ - userUrl: URI -} + CONVERTED_TO_DISCUSSION_EVENT -""" -The permissions available to members on an Organization. -""" -enum OrgUpdateMemberAuditEntryPermission { """ - Can read, clone, push, and add collaborators to repositories. + Represents a 'convert_to_draft' event on a given pull request. """ - ADMIN + CONVERT_TO_DRAFT_EVENT """ - Can read and clone repositories. + Represents a mention made by one issue or pull request to another. """ - READ -} + CROSS_REFERENCED_EVENT -""" -Audit log entry for a org.update_member_repository_creation_permission event. -""" -type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Represents a 'demilestoned' event on a given issue or pull request. """ - action: String! + DEMILESTONED_EVENT """ - The user who initiated the action + Represents a 'deployed' event on a given pull request. """ - actor: AuditEntryActor + DEPLOYED_EVENT """ - The IP address of the actor + Represents a 'deployment_environment_changed' event on a given pull request. """ - actorIp: String + DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT """ - A readable representation of the actor's location + Represents a 'disconnected' event on a given issue or pull request. """ - actorLocation: ActorLocation + DISCONNECTED_EVENT """ - The username of the user who initiated the action + Represents a 'head_ref_deleted' event on a given pull request. """ - actorLogin: String + HEAD_REF_DELETED_EVENT """ - The HTTP path for the actor. + Represents a 'head_ref_force_pushed' event on a given pull request. """ - actorResourcePath: URI + HEAD_REF_FORCE_PUSHED_EVENT """ - The HTTP URL for the actor. + Represents a 'head_ref_restored' event on a given pull request. """ - actorUrl: URI + HEAD_REF_RESTORED_EVENT """ - Can members create repositories in the organization. + Represents a comment on an Issue. """ - canCreateRepositories: Boolean + ISSUE_COMMENT """ - The time the action was initiated + Represents a 'labeled' event on a given issue or pull request. """ - createdAt: PreciseDateTime! - id: ID! + LABELED_EVENT """ - The corresponding operation type for the action + Represents a 'locked' event on a given issue or pull request. """ - operationType: OperationType + LOCKED_EVENT """ - The Organization associated with the Audit Entry. + Represents a 'marked_as_duplicate' event on a given issue or pull request. """ - organization: Organization + MARKED_AS_DUPLICATE_EVENT """ - The name of the Organization. + Represents a 'mentioned' event on a given issue or pull request. """ - organizationName: String + MENTIONED_EVENT """ - The HTTP path for the organization + Represents a 'merged' event on a given pull request. """ - organizationResourcePath: URI + MERGED_EVENT """ - The HTTP URL for the organization + Represents a 'milestoned' event on a given issue or pull request. """ - organizationUrl: URI + MILESTONED_EVENT """ - The user affected by the action + Represents a 'moved_columns_in_project' event on a given issue or pull request. """ - user: User + MOVED_COLUMNS_IN_PROJECT_EVENT """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Represents a 'pinned' event on a given issue or pull request. """ - userLogin: String + PINNED_EVENT """ - The HTTP path for the user. + Represents a Git commit part of a pull request. """ - userResourcePath: URI + PULL_REQUEST_COMMIT """ - The HTTP URL for the user. + Represents a commit comment thread part of a pull request. """ - userUrl: URI + PULL_REQUEST_COMMIT_COMMENT_THREAD """ - The permission for visibility level of repositories for this organization. + A review object for a given pull request. """ - visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility -} + PULL_REQUEST_REVIEW -""" -The permissions available for repository creation on an Organization. -""" -enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - All organization members are restricted from creating any repositories. + A threaded list of comments for a given pull request. """ - ALL + PULL_REQUEST_REVIEW_THREAD """ - All organization members are restricted from creating public repositories. + Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. """ - PUBLIC -} + PULL_REQUEST_REVISION_MARKER -""" -Audit log entry for a org.update_member_repository_invitation_permission event. -""" -type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Represents a 'ready_for_review' event on a given pull request. """ - action: String! + READY_FOR_REVIEW_EVENT """ - The user who initiated the action + Represents a 'referenced' event on a given `ReferencedSubject`. """ - actor: AuditEntryActor + REFERENCED_EVENT """ - The IP address of the actor + Represents a 'removed_from_merge_queue' event on a given pull request. """ - actorIp: String + REMOVED_FROM_MERGE_QUEUE_EVENT """ - A readable representation of the actor's location + Represents a 'removed_from_project' event on a given issue or pull request. """ - actorLocation: ActorLocation + REMOVED_FROM_PROJECT_EVENT """ - The username of the user who initiated the action + Represents a 'renamed' event on a given issue or pull request """ - actorLogin: String + RENAMED_TITLE_EVENT """ - The HTTP path for the actor. + Represents a 'reopened' event on any `Closable`. """ - actorResourcePath: URI + REOPENED_EVENT """ - The HTTP URL for the actor. + Represents a 'review_dismissed' event on a given issue or pull request. """ - actorUrl: URI + REVIEW_DISMISSED_EVENT """ - Can outside collaborators be invited to repositories in the organization. + Represents an 'review_requested' event on a given pull request. """ - canInviteOutsideCollaboratorsToRepositories: Boolean + REVIEW_REQUESTED_EVENT """ - The time the action was initiated + Represents an 'review_request_removed' event on a given pull request. """ - createdAt: PreciseDateTime! - id: ID! + REVIEW_REQUEST_REMOVED_EVENT """ - The corresponding operation type for the action + Represents a 'subscribed' event on a given `Subscribable`. """ - operationType: OperationType + SUBSCRIBED_EVENT """ - The Organization associated with the Audit Entry. + Represents a 'transferred' event on a given issue or pull request. """ - organization: Organization + TRANSFERRED_EVENT """ - The name of the Organization. + Represents an 'unassigned' event on any assignable object. """ - organizationName: String + UNASSIGNED_EVENT """ - The HTTP path for the organization + Represents an 'unlabeled' event on a given issue or pull request. """ - organizationResourcePath: URI + UNLABELED_EVENT """ - The HTTP URL for the organization + Represents an 'unlocked' event on a given issue or pull request. """ - organizationUrl: URI + UNLOCKED_EVENT """ - The user affected by the action + Represents an 'unmarked_as_duplicate' event on a given issue or pull request. """ - user: User + UNMARKED_AS_DUPLICATE_EVENT """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Represents an 'unpinned' event on a given issue or pull request. """ - userLogin: String + UNPINNED_EVENT """ - The HTTP path for the user. + Represents an 'unsubscribed' event on a given `Subscribable`. """ - userResourcePath: URI + UNSUBSCRIBED_EVENT """ - The HTTP URL for the user. + Represents a 'user_blocked' event on a given user. """ - userUrl: URI + USER_BLOCKED_EVENT } """ -An account on GitHub, with one or more owners, that has repositories, members and teams. +The possible target states when updating a pull request. """ -type Organization implements Actor & MemberStatusable & Node & ProfileOwner & ProjectOwner & RegistryPackageOwner & RegistryPackageSearch & RepositoryOwner & UniformResourceLocatable { - """ - Determine if this repository owner has any items that can be pinned to their profile. - """ - anyPinnableItems( - """ - Filter to only a particular kind of pinnable item. - """ - type: PinnableItemType - ): Boolean! - +enum PullRequestUpdateState { """ - Audit log entries of the organization + A pull request that has been closed without being merged. """ - auditLog( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for the returned audit log entries. - """ - orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} - - """ - The query string to filter audit entries - """ - query: String - ): OrganizationAuditEntryConnection! + CLOSED """ - A URL pointing to the organization's public avatar. + A pull request that is still open. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + OPEN +} - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! +""" +A Git push. +""" +type Push implements Node { + id: ID! """ - Identifies the primary key from the database. + The SHA after the push """ - databaseId: Int + nextSha: GitObjectID """ - The organization's public profile description. + The permalink for this push. """ - description: String + permalink: URI! """ - The organization's public profile description rendered to HTML. + The SHA before the push """ - descriptionHTML: String + previousSha: GitObjectID """ - The organization's public email. + The actor who pushed """ - email: String - id: ID! + pusher: Actor! """ - Whether the organization has verified its profile email and website. + The repository that was pushed to """ - isVerified: Boolean! + repository: Repository! +} +""" +A team, user, or app who has the ability to push to a protected branch. +""" +type PushAllowance implements Node { """ - Showcases a selection of repositories and gists that the profile owner has - either curated or that have been selected automatically based on popularity. + The actor that can push. """ - itemShowcase: ProfileItemShowcase! + actor: PushAllowanceActor """ - The organization's public profile location. + Identifies the branch protection rule associated with the allowed user, team, or app. """ - location: String + branchProtectionRule: BranchProtectionRule + id: ID! +} - """ - The organization's login name. - """ - login: String! +""" +Types that can be an actor. +""" +union PushAllowanceActor = App | Team | User +""" +The connection type for PushAllowance. +""" +type PushAllowanceConnection { """ - Get the status messages members of this entity have set that are either public or visible only to the organization. + A list of edges. """ - memberStatuses( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for user statuses returned from the connection. - """ - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! + edges: [PushAllowanceEdge] """ - A list of users who are members of this organization. + A list of nodes. """ - membersWithRole( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): OrganizationMemberConnection! + nodes: [PushAllowance] """ - The organization's public profile name. + Information to aid in pagination. """ - name: String + pageInfo: PageInfo! """ - The HTTP path creating a new team + Identifies the total count of items in the connection. """ - newTeamResourcePath: URI! + totalCount: Int! +} +""" +An edge in a connection. +""" +type PushAllowanceEdge { """ - The HTTP URL creating a new team + A cursor for use in pagination. """ - newTeamUrl: URI! + cursor: String! """ - The billing email for the organization. + The item at the end of the edge. """ - organizationBillingEmail: String + node: PushAllowance +} +""" +The query root of GitHub's GraphQL interface. +""" +type Query { """ - A list of users who have been invited to join this organization. + Look up a code of conduct by its key """ - pendingMembers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - + codeOfConduct( """ - Returns the last _n_ elements from the list. + The code of conduct's key """ - last: Int - ): UserConnection! + key: String! + ): CodeOfConduct """ - A list of repositories and gists this profile owner can pin to their profile. + Look up a code of conduct by its key """ - pinnableItems( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Filter the types of pinnable items that are returned. - """ - types: [PinnableItemType!] - ): PinnableItemConnection! + codesOfConduct: [CodeOfConduct] """ - A list of repositories and gists this profile owner has pinned to their profile + Look up an enterprise by URL slug. """ - pinnedItems( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - + enterprise( """ - Returns the last _n_ elements from the list. + The enterprise invitation token. """ - last: Int + invitationToken: String """ - Filter the types of pinned items that are returned. + The enterprise URL slug. """ - types: [PinnableItemType!] - ): PinnableItemConnection! + slug: String! + ): Enterprise """ - Returns how many more items this profile owner can pin to their profile. + Look up a pending enterprise administrator invitation by invitee, enterprise and role. """ - pinnedItemsRemaining: Int! + enterpriseAdministratorInvitation( + """ + The slug of the enterprise the user was invited to join. + """ + enterpriseSlug: String! - """ - A list of repositories this user has pinned to their profile - """ - pinnedRepositories( """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. + The role for the business member invitation. """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + role: EnterpriseAdministratorRole! """ - Returns the elements in the list that come after the specified cursor. + The login of the user invited to join the business. """ - after: String + userLogin: String! + ): EnterpriseAdministratorInvitation + """ + Look up a pending enterprise administrator invitation by invitation token. + """ + enterpriseAdministratorInvitationByToken( """ - Returns the elements in the list that come before the specified cursor. + The invitation token sent with the invitation email. """ - before: String + invitationToken: String! + ): EnterpriseAdministratorInvitation + """ + Look up an open source license by its key + """ + license( """ - Returns the first _n_ elements from the list. + The license's downcased SPDX ID """ - first: Int + key: String! + ): License + + """ + Return a list of known open source licenses + """ + licenses: [License]! + """ + Get alphabetically sorted list of Marketplace categories + """ + marketplaceCategories( """ - If non-null, filters repositories according to whether they have been locked + Exclude categories with no listings. """ - isLocked: Boolean + excludeEmpty: Boolean """ - Returns the last _n_ elements from the list. + Returns top level categories only, excluding any subcategories. """ - last: Int + excludeSubcategories: Boolean """ - Ordering options for repositories returned from the connection + Return only the specified categories. """ - orderBy: RepositoryOrder + includeCategories: [String!] + ): [MarketplaceCategory!]! + """ + Look up a Marketplace category by its slug. + """ + marketplaceCategory( """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. + The URL slug of the category. """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + slug: String! """ - If non-null, filters repositories according to privacy + Also check topic aliases for the category slug """ - privacy: RepositoryPrivacy - ): RepositoryConnection! @deprecated(reason: "pinnedRepositories will be removed Use ProfileOwner.pinnedItems instead. Removal on 2019-10-01 UTC.") + useTopicAliases: Boolean + ): MarketplaceCategory """ - Find project by number. + Look up a single Marketplace listing """ - project( + marketplaceListing( """ - The project number to find. + Select the listing that matches this slug. It's the short name of the listing used in its URL. """ - number: Int! - ): Project + slug: String! + ): MarketplaceListing """ - A list of projects under the owner. + Look up Marketplace listings """ - projects( + marketplaceListings( + """ + Select listings that can be administered by the specified user. + """ + adminId: ID + """ Returns the elements in the list that come after the specified cursor. """ after: String + """ + Select listings visible to the viewer even if they are not approved. If omitted or + false, only approved listings will be returned. + """ + allStates: Boolean + """ Returns the elements in the list that come before the specified cursor. """ before: String + """ + Select only listings with the given category. + """ + categorySlug: String + """ Returns the first _n_ elements from the list. """ @@ -17550,90 +35238,131 @@ type Organization implements Actor & MemberStatusable & Node & ProfileOwner & Pr last: Int """ - Ordering options for projects returned from the connection + Select listings for products owned by the specified organization. """ - orderBy: ProjectOrder + organizationId: ID """ - Query to search projects by, currently only searching by name. + Select only listings where the primary category matches the given category slug. """ - search: String + primaryCategoryOnly: Boolean = false """ - A list of states to filter the projects by. + Select the listings with these slugs, if they are visible to the viewer. """ - states: [ProjectState!] - ): ProjectConnection! + slugs: [String] - """ - The HTTP path listing organization's projects - """ - projectsResourcePath: URI! + """ + Also check topic aliases for the category slug + """ + useTopicAliases: Boolean + + """ + Select listings to which user has admin access. If omitted, listings visible to the + viewer are returned. + """ + viewerCanAdmin: Boolean + + """ + Select only listings that offer a free trial. + """ + withFreeTrialsOnly: Boolean = false + ): MarketplaceListingConnection! """ - The HTTP URL listing organization's projects + Return information about the GitHub instance """ - projectsUrl: URI! + meta: GitHubMetadata! """ - A list of registry packages under the owner. + Fetches an object given its ID. """ - registryPackages( + node( """ - Returns the elements in the list that come after the specified cursor. + ID of the object. """ - after: String + id: ID! + ): Node + """ + Lookup nodes by a list of IDs. + """ + nodes( """ - Returns the elements in the list that come before the specified cursor. + The list of node IDs. """ - before: String + ids: [ID!]! + ): [Node]! + """ + Lookup a organization by login. + """ + organization( """ - Returns the first _n_ elements from the list. + The organization's login. """ - first: Int + login: String! + ): Organization + """ + The client's rate limit information. + """ + rateLimit( """ - Returns the last _n_ elements from the list. + If true, calculate the cost for the query without evaluating it """ - last: Int + dryRun: Boolean = false + ): RateLimit - """ - Find registry package by name. - """ - name: String + """ + Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object + """ + relay: Query! + """ + Lookup a given repository by the owner and repository name. + """ + repository( """ - Find registry packages by their names. + Follow repository renames. If disabled, a repository referenced by its old name will return an error. """ - names: [String] + followRenames: Boolean = true """ - Filter registry package by type. + The name of the repository """ - packageType: RegistryPackageType + name: String! """ - Filter registry package by whether it is publicly visible + The login field of a user or organization """ - publicOnly: Boolean = false + owner: String! + ): Repository + """ + Lookup a repository owner (ie. either a User or an Organization) by login. + """ + repositoryOwner( """ - Filter registry package by type (string). + The username to lookup the owner by. """ - registryPackageType: String + login: String! + ): RepositoryOwner + """ + Lookup resource by a URL. + """ + resource( """ - Find registry packages in a repository. + The URL. """ - repositoryId: ID - ): RegistryPackageConnection! + url: URI! + ): UniformResourceLocatable """ - A list of registry packages for a particular search query. + Perform a search across resources, returning a maximum of 1,000 results. """ - registryPackagesForQuery( + search( """ Returns the elements in the list that come after the specified cursor. """ @@ -17655,27 +35384,20 @@ type Organization implements Actor & MemberStatusable & Node & ProfileOwner & Pr last: Int """ - Filter registry package by type. + The search string to look for. """ - packageType: RegistryPackageType + query: String! """ - Find registry package by search query. + The types of search items to search within. """ - query: String - ): RegistryPackageConnection! + type: SearchType! + ): SearchResultItemConnection! """ - A list of repositories that the user owns. + GitHub Security Advisories """ - repositories( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] - + securityAdvisories( """ Returns the elements in the list that come after the specified cursor. """ @@ -17687,19 +35409,19 @@ type Organization implements Actor & MemberStatusable & Node & ProfileOwner & Pr before: String """ - Returns the first _n_ elements from the list. + A list of classifications to filter advisories by. """ - first: Int + classifications: [SecurityAdvisoryClassification!] """ - If non-null, filters repositories according to whether they are forks of another repository + Returns the first _n_ elements from the list. """ - isFork: Boolean + first: Int """ - If non-null, filters repositories according to whether they have been locked + Filter advisories by identifier, e.g. GHSA or CVE. """ - isLocked: Boolean + identifier: SecurityAdvisoryIdentifierFilter """ Returns the last _n_ elements from the list. @@ -17707,63 +35429,35 @@ type Organization implements Actor & MemberStatusable & Node & ProfileOwner & Pr last: Int """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder - - """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. + Ordering options for the returned topics. """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} """ - If non-null, filters repositories according to privacy + Filter advisories to those published since a time in the past. """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + publishedSince: DateTime - """ - Find Repository. - """ - repository( """ - Name of Repository to find. + Filter advisories to those updated since a time in the past. """ - name: String! - ): Repository - - """ - When true the organization requires all members, billing managers, and outside - collaborators to enable two-factor authentication. - """ - requiresTwoFactorAuthentication: Boolean - - """ - The HTTP path for this organization. - """ - resourcePath: URI! - - """ - The Organization's SAML identity providers - """ - samlIdentityProvider: OrganizationIdentityProvider + updatedSince: DateTime + ): SecurityAdvisoryConnection! """ - Find an organization's team by its slug. + Fetch a Security Advisory by its GHSA ID """ - team( + securityAdvisory( """ - The name or slug of the team to find. + GitHub Security Advisory ID. """ - slug: String! - ): Team + ghsaId: String! + ): SecurityAdvisory """ - A list of teams in this organization. + Software Vulnerabilities documented by GitHub Security Advisories """ - teams( + securityVulnerabilities( """ Returns the elements in the list that come after the specified cursor. """ @@ -17774,6 +35468,16 @@ type Organization implements Actor & MemberStatusable & Node & ProfileOwner & Pr """ before: String + """ + A list of advisory classifications to filter vulnerabilities by. + """ + classifications: [SecurityAdvisoryClassification!] + + """ + An ecosystem to filter vulnerabilities by. + """ + ecosystem: SecurityAdvisoryEcosystem + """ Returns the first _n_ elements from the list. """ @@ -17785,322 +35489,215 @@ type Organization implements Actor & MemberStatusable & Node & ProfileOwner & Pr last: Int """ - If true, filters teams that are mapped to an LDAP Group (Enterprise only) + Ordering options for the returned topics. """ - ldapMapped: Boolean + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} """ - Ordering options for teams returned from the connection + A package name to filter vulnerabilities by. """ - orderBy: TeamOrder + package: String """ - If non-null, filters teams according to privacy + A list of severities to filter vulnerabilities by. """ - privacy: TeamPrivacy + severities: [SecurityAdvisorySeverity!] + ): SecurityVulnerabilityConnection! + """ + Users and organizations who can be sponsored via GitHub Sponsors. + """ + sponsorables( """ - If non-null, filters teams with query on team name and team slug + Returns the elements in the list that come after the specified cursor. """ - query: String + after: String """ - If non-null, filters teams according to whether the viewer is an admin or member on team + Returns the elements in the list that come before the specified cursor. """ - role: TeamRole + before: String """ - If true, restrict to only root teams + Optional filter for which dependencies should be checked for sponsorable + owners. Only sponsorable owners of dependencies in this ecosystem will be + included. Used when onlyDependencies = true. + + **Upcoming Change on 2022-07-01 UTC** + **Description:** `dependencyEcosystem` will be removed. Use the ecosystem argument instead. + **Reason:** The type is switching from SecurityAdvisoryEcosystem to DependencyGraphEcosystem. """ - rootTeamsOnly: Boolean = false + dependencyEcosystem: SecurityAdvisoryEcosystem """ - User logins to filter by + Optional filter for which dependencies should be checked for sponsorable + owners. Only sponsorable owners of dependencies in this ecosystem will be + included. Used when onlyDependencies = true. """ - userLogins: [String!] - ): TeamConnection! - - """ - The HTTP path listing organization's teams - """ - teamsResourcePath: URI! - - """ - The HTTP URL listing organization's teams - """ - teamsUrl: URI! - - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! - - """ - The HTTP URL for this organization. - """ - url: URI! - - """ - Organization is adminable by the viewer. - """ - viewerCanAdminister: Boolean! - - """ - Can the viewer pin repositories and gists to the profile? - """ - viewerCanChangePinnedItems: Boolean! - - """ - Can the current viewer create new projects on this owner. - """ - viewerCanCreateProjects: Boolean! - - """ - Viewer can create repositories on this organization - """ - viewerCanCreateRepositories: Boolean! - - """ - Viewer can create teams on this organization. - """ - viewerCanCreateTeams: Boolean! - - """ - Viewer is an active member of this organization. - """ - viewerIsAMember: Boolean! - - """ - The organization's public profile URL. - """ - websiteUrl: URI -} - -""" -An audit entry in an organization audit log. -""" -union OrganizationAuditEntry = MembersCanDeleteReposClearAuditEntry | MembersCanDeleteReposDisableAuditEntry | MembersCanDeleteReposEnableAuditEntry | OauthApplicationCreateAuditEntry | OrgAddBillingManagerAuditEntry | OrgAddMemberAuditEntry | OrgBlockUserAuditEntry | OrgConfigDisableCollaboratorsOnlyAuditEntry | OrgConfigEnableCollaboratorsOnlyAuditEntry | OrgDisableOauthAppRestrictionsAuditEntry | OrgDisableSamlAuditEntry | OrgDisableTwoFactorRequirementAuditEntry | OrgEnableOauthAppRestrictionsAuditEntry | OrgEnableSamlAuditEntry | OrgEnableTwoFactorRequirementAuditEntry | OrgInviteMemberAuditEntry | OrgInviteToBusinessAuditEntry | OrgOauthAppAccessApprovedAuditEntry | OrgOauthAppAccessDeniedAuditEntry | OrgOauthAppAccessRequestedAuditEntry | OrgRemoveBillingManagerAuditEntry | OrgRemoveMemberAuditEntry | OrgRemoveOutsideCollaboratorAuditEntry | OrgRestoreMemberAuditEntry | OrgUnblockUserAuditEntry | OrgUpdateDefaultRepositoryPermissionAuditEntry | OrgUpdateMemberAuditEntry | OrgUpdateMemberRepositoryCreationPermissionAuditEntry | OrgUpdateMemberRepositoryInvitationPermissionAuditEntry | PrivateRepositoryForkingDisableAuditEntry | PrivateRepositoryForkingEnableAuditEntry | RepoAccessAuditEntry | RepoAddMemberAuditEntry | RepoAddTopicAuditEntry | RepoArchivedAuditEntry | RepoChangeMergeSettingAuditEntry | RepoConfigDisableAnonymousGitAccessAuditEntry | RepoConfigDisableCollaboratorsOnlyAuditEntry | RepoConfigDisableContributorsOnlyAuditEntry | RepoConfigDisableSockpuppetDisallowedAuditEntry | RepoConfigEnableAnonymousGitAccessAuditEntry | RepoConfigEnableCollaboratorsOnlyAuditEntry | RepoConfigEnableContributorsOnlyAuditEntry | RepoConfigEnableSockpuppetDisallowedAuditEntry | RepoConfigLockAnonymousGitAccessAuditEntry | RepoConfigUnlockAnonymousGitAccessAuditEntry | RepoCreateAuditEntry | RepoDestroyAuditEntry | RepoRemoveMemberAuditEntry | RepoRemoveTopicAuditEntry | RepositoryVisibilityChangeDisableAuditEntry | RepositoryVisibilityChangeEnableAuditEntry | TeamAddMemberAuditEntry | TeamAddRepositoryAuditEntry | TeamChangeParentTeamAuditEntry | TeamRemoveMemberAuditEntry | TeamRemoveRepositoryAuditEntry - -""" -The connection type for OrganizationAuditEntry. -""" -type OrganizationAuditEntryConnection { - """ - A list of edges. - """ - edges: [OrganizationAuditEntryEdge] - - """ - A list of nodes. - """ - nodes: [OrganizationAuditEntry] - - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! - - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} - -""" -Metadata for an audit entry with action org.* -""" -interface OrganizationAuditEntryData { - """ - The Organization associated with the Audit Entry. - """ - organization: Organization - - """ - The name of the Organization. - """ - organizationName: String - - """ - The HTTP path for the organization - """ - organizationResourcePath: URI - - """ - The HTTP URL for the organization - """ - organizationUrl: URI -} - -""" -An edge in a connection. -""" -type OrganizationAuditEntryEdge { - """ - A cursor for use in pagination. - """ - cursor: String! - - """ - The item at the end of the edge. - """ - node: OrganizationAuditEntry -} - -""" -The connection type for Organization. -""" -type OrganizationConnection { - """ - A list of edges. - """ - edges: [OrganizationEdge] - - """ - A list of nodes. - """ - nodes: [Organization] - - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! - - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} - -""" -An edge in a connection. -""" -type OrganizationEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + ecosystem: DependencyGraphEcosystem - """ - The item at the end of the edge. - """ - node: Organization -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -An Identity Provider configured to provision SAML and SCIM identities for Organizations -""" -type OrganizationIdentityProvider implements Node { - """ - The digest algorithm used to sign SAML requests for the Identity Provider. - """ - digestMethod: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - External Identities provisioned by this Identity Provider - """ - externalIdentities( """ - Returns the elements in the list that come after the specified cursor. + Whether only sponsorables who own the viewer's dependencies will be + returned. Must be authenticated to use. Can check an organization instead + for their dependencies owned by sponsorables by passing + orgLoginForDependencies. """ - after: String + onlyDependencies: Boolean = false """ - Returns the elements in the list that come before the specified cursor. + Ordering options for users and organizations returned from the connection. """ - before: String + orderBy: SponsorableOrder = {field: LOGIN, direction: ASC} """ - Returns the first _n_ elements from the list. + Optional organization username for whose dependencies should be checked. + Used when onlyDependencies = true. Omit to check your own dependencies. If + you are not an administrator of the organization, only dependencies from its + public repositories will be considered. """ - first: Int + orgLoginForDependencies: String + ): SponsorableItemConnection! + """ + Look up a topic by name. + """ + topic( """ - Returns the last _n_ elements from the list. + The topic's name. """ - last: Int - ): ExternalIdentityConnection! - id: ID! + name: String! + ): Topic """ - The x509 certificate used by the Identity Provder to sign assertions and responses. + Lookup a user by login. """ - idpCertificate: X509Certificate + user( + """ + The user's login. + """ + login: String! + ): User """ - The Issuer Entity ID for the SAML Identity Provider + The currently authenticated user. """ - issuer: String + viewer: User! +} +""" +Represents the client's rate limit. +""" +type RateLimit { """ - Organization this Identity Provider belongs to + The point cost for the current query counting against the rate limit. """ - organization: Organization + cost: Int! """ - The signature algorithm used to sign SAML requests for the Identity Provider. + The maximum number of points the client is permitted to consume in a 60 minute window. """ - signatureMethod: URI + limit: Int! """ - The URL endpoint for the Identity Provider's SAML SSO. + The maximum number of nodes this query may return """ - ssoUrl: URI -} + nodeCount: Int! -""" -An Invitation for a user to an organization. -""" -type OrganizationInvitation implements Node { """ - Identifies the date and time when the object was created. + The number of points remaining in the current rate limit window. """ - createdAt: DateTime! + remaining: Int! """ - The email address of the user invited to the organization. + The time at which the current rate limit window resets in UTC epoch seconds. """ - email: String - id: ID! + resetAt: DateTime! """ - The type of invitation that was sent (e.g. email, user). + The number of points used in the current rate limit window. """ - invitationType: OrganizationInvitationType! + used: Int! +} +""" +Represents a subject that can be reacted on. +""" +interface Reactable { """ - The user who was invited to the organization. + Identifies the primary key from the database. """ - invitee: User + databaseId: Int + id: ID! """ - The user who created the invitation. + A list of reactions grouped by content left on the subject. """ - inviter: User! + reactionGroups: [ReactionGroup!] """ - The organization the invite is for + A list of Reactions left on the Issue. """ - organization: Organization! + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The user's pending role in the organization (e.g. member, owner). + Can user react to this subject """ - role: OrganizationInvitationRole! + viewerCanReact: Boolean! } """ -The connection type for OrganizationInvitation. +The connection type for User. """ -type OrganizationInvitationConnection { +type ReactingUserConnection { """ A list of edges. """ - edges: [OrganizationInvitationEdge] + edges: [ReactingUserEdge] """ A list of nodes. """ - nodes: [OrganizationInvitation] + nodes: [User] """ Information to aid in pagination. @@ -18114,73 +35711,65 @@ type OrganizationInvitationConnection { } """ -An edge in a connection. +Represents a user that's made a reaction. """ -type OrganizationInvitationEdge { +type ReactingUserEdge { """ A cursor for use in pagination. """ cursor: String! + node: User! """ - The item at the end of the edge. + The moment when the user made the reaction. """ - node: OrganizationInvitation + reactedAt: DateTime! } """ -The possible organization invitation roles. +An emoji reaction to a particular piece of content. """ -enum OrganizationInvitationRole { - """ - The user is invited to be an admin of the organization. - """ - ADMIN - +type Reaction implements Node { """ - The user is invited to be a billing manager of the organization. + Identifies the emoji reaction. """ - BILLING_MANAGER + content: ReactionContent! """ - The user is invited to be a direct member of the organization. + Identifies the date and time when the object was created. """ - DIRECT_MEMBER + createdAt: DateTime! """ - The user's previous role will be reinstated. + Identifies the primary key from the database. """ - REINSTATE -} + databaseId: Int + id: ID! -""" -The possible organization invitation types. -""" -enum OrganizationInvitationType { """ - The invitation was to an email address. + The reactable piece of content """ - EMAIL + reactable: Reactable! """ - The invitation was to an existing user. + Identifies the user who created this reaction. """ - USER + user: User } """ -The connection type for User. +A list of reactions that have been left on the subject. """ -type OrganizationMemberConnection { +type ReactionConnection { """ A list of edges. """ - edges: [OrganizationMemberEdge] + edges: [ReactionEdge] """ A list of nodes. """ - nodes: [User] + nodes: [Reaction] """ Information to aid in pagination. @@ -18191,116 +35780,91 @@ type OrganizationMemberConnection { Identifies the total count of items in the connection. """ totalCount: Int! -} - -""" -Represents a user within an organization. -""" -type OrganizationMemberEdge { - """ - A cursor for use in pagination. - """ - cursor: String! - - """ - Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. - """ - hasTwoFactorEnabled: Boolean - - """ - The item at the end of the edge. - """ - node: User """ - The role this user has in the organization. + Whether or not the authenticated user has left a reaction on the subject. """ - role: OrganizationMemberRole + viewerHasReacted: Boolean! } """ -The possible roles within an organization for its members. +Emojis that can be attached to Issues, Pull Requests and Comments. """ -enum OrganizationMemberRole { +enum ReactionContent { """ - The user is an administrator of the organization. + Represents the `:confused:` emoji. """ - ADMIN + CONFUSED """ - The user is a member of the organization. + Represents the `:eyes:` emoji. """ - MEMBER -} + EYES -""" -The possible values for the members can create repositories setting on an organization. -""" -enum OrganizationMembersCanCreateRepositoriesSettingValue @preview(toggledBy: "enterprise-accounts-preview") { """ - Members will be able to create public and private repositories. + Represents the `:heart:` emoji. """ - ALL + HEART """ - Members will not be able to create public or private repositories. + Represents the `:hooray:` emoji. """ - DISABLED + HOORAY """ - Members will be able to create only private repositories. + Represents the `:laugh:` emoji. """ - PRIVATE -} + LAUGH -""" -Ordering options for organization connections. -""" -input OrganizationOrder @preview(toggledBy: "enterprise-accounts-preview") { """ - The ordering direction. + Represents the `:rocket:` emoji. """ - direction: OrderDirection! + ROCKET """ - The field to order organizations by. + Represents the `:-1:` emoji. """ - field: OrganizationOrderField! + THUMBS_DOWN + + """ + Represents the `:+1:` emoji. + """ + THUMBS_UP } """ -Properties by which organization connections can be ordered. +An edge in a connection. """ -enum OrganizationOrderField @preview(toggledBy: "enterprise-accounts-preview") { +type ReactionEdge { """ - Order organizations by creation time + A cursor for use in pagination. """ - CREATED_AT + cursor: String! """ - Order organizations by login + The item at the end of the edge. """ - LOGIN + node: Reaction } """ -An organization teams hovercard context +A group of emoji reactions to a particular piece of content. """ -type OrganizationTeamsHovercardContext implements HovercardContext { +type ReactionGroup { """ - A string describing this context + Identifies the emoji reaction. """ - message: String! + content: ReactionContent! """ - An octicon to accompany this context + Identifies when the reaction was created. """ - octicon: String! + createdAt: DateTime """ - Teams in this organization the user is a member of that are relevant + Reactors to the reaction subject with the emotion represented by this reaction group. """ - relevantTeams( + reactors( """ Returns the elements in the list that come after the specified cursor. """ @@ -18320,42 +35884,17 @@ type OrganizationTeamsHovercardContext implements HovercardContext { Returns the last _n_ elements from the list. """ last: Int - ): TeamConnection! - - """ - The path for the full team list for this user - """ - teamsResourcePath: URI! - - """ - The URL for the full team list for this user - """ - teamsUrl: URI! - - """ - The total number of teams the user is on in the organization - """ - totalTeamCount: Int! -} - -""" -An organization list hovercard context -""" -type OrganizationsHovercardContext implements HovercardContext { - """ - A string describing this context - """ - message: String! + ): ReactorConnection! """ - An octicon to accompany this context + The subject that was reacted to. """ - octicon: String! + subject: Reactable! """ - Organizations this user is a member of that are relevant + Users who have reacted to the reaction subject with the emotion represented by this reaction group """ - relevantOrganizations( + users( """ Returns the elements in the list that come after the specified cursor. """ @@ -18375,112 +35914,60 @@ type OrganizationsHovercardContext implements HovercardContext { Returns the last _n_ elements from the list. """ last: Int - ): OrganizationConnection! - - """ - The total number of organizations this user is in - """ - totalOrganizationCount: Int! -} - -""" -Information about pagination in a connection. -""" -type PageInfo { - """ - When paginating forwards, the cursor to continue. - """ - endCursor: String - - """ - When paginating forwards, are there more items? - """ - hasNextPage: Boolean! - - """ - When paginating backwards, are there more items? - """ - hasPreviousPage: Boolean! - - """ - When paginating backwards, the cursor to continue. - """ - startCursor: String -} - -""" -Types that can grant permissions on a repository to a user -""" -union PermissionGranter = Organization | Repository | Team - -""" -A level of permission and source for a user's access to a repository. -""" -type PermissionSource { - """ - The organization the repository belongs to. - """ - organization: Organization! - - """ - The level of access this source has granted to the user. - """ - permission: DefaultRepositoryPermissionField! + ): ReactingUserConnection! + @deprecated( + reason: "Reactors can now be mannequins, bots, and organizations. Use the `reactors` field instead. Removal on 2021-10-01 UTC." + ) """ - The source of this permission. + Whether or not the authenticated user has left a reaction on the subject. """ - source: PermissionGranter! + viewerHasReacted: Boolean! } """ -Autogenerated input type of PinIssue +Ways in which lists of reactions can be ordered upon return. """ -input PinIssueInput { +input ReactionOrder { """ - A unique identifier for the client performing the mutation. + The direction in which to order reactions by the specified field. """ - clientMutationId: String + direction: OrderDirection! """ - The ID of the issue to be pinned + The field in which to order reactions by. """ - issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + field: ReactionOrderField! } """ -Autogenerated return type of PinIssue +A list of fields that reactions can be ordered by. """ -type PinIssuePayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - +enum ReactionOrderField { """ - The issue that was pinned + Allows ordering a list of reactions by when they were created. """ - issue: Issue + CREATED_AT } """ -Types that can be pinned to a profile page. +Types that can be assigned to reactions. """ -union PinnableItem = Gist | Repository +union Reactor = Bot | Mannequin | Organization | User """ -The connection type for PinnableItem. +The connection type for Reactor. """ -type PinnableItemConnection { +type ReactorConnection { """ A list of edges. """ - edges: [PinnableItemEdge] + edges: [ReactorEdge] """ A list of nodes. """ - nodes: [PinnableItem] + nodes: [Reactor] """ Information to aid in pagination. @@ -18494,125 +35981,165 @@ type PinnableItemConnection { } """ -An edge in a connection. +Represents an author of a reaction. """ -type PinnableItemEdge { +type ReactorEdge { """ A cursor for use in pagination. """ cursor: String! """ - The item at the end of the edge. + The author of the reaction. """ - node: PinnableItem + node: Reactor! + + """ + The moment when the user made the reaction. + """ + reactedAt: DateTime! } """ -Represents items that can be pinned to a profile page or dashboard. +Represents a 'ready_for_review' event on a given pull request. """ -enum PinnableItemType { +type ReadyForReviewEvent implements Node & UniformResourceLocatable { """ - A gist. + Identifies the actor who performed the event. """ - GIST + actor: Actor """ - An issue. + Identifies the date and time when the object was created. """ - ISSUE + createdAt: DateTime! + id: ID! """ - An organization. + PullRequest referenced by event. """ - ORGANIZATION + pullRequest: PullRequest! """ - A project. + The HTTP path for this ready for review event. """ - PROJECT + resourcePath: URI! """ - A pull request. + The HTTP URL for this ready for review event. """ - PULL_REQUEST + url: URI! +} +""" +Represents a Git reference. +""" +type Ref implements Node { """ - A repository. + A list of pull requests with this ref as the head ref. """ - REPOSITORY + associatedPullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A team. - """ - TEAM + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String - """ - A user. - """ - USER -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! -""" -Represents a 'pinned' event on a given issue or pull request. -""" -type PinnedEvent implements Node { """ - Identifies the actor who performed the event. + Branch protection rules for this ref """ - actor: Actor + branchProtectionRule: BranchProtectionRule """ - Identifies the date and time when the object was created. + Compares the current ref as a base ref to another head ref, if the comparison can be made. """ - createdAt: DateTime! + compare( + """ + The head ref to compare against. + """ + headRef: String! + ): Comparison id: ID! """ - Identifies the issue associated with the event. + The ref name. """ - issue: Issue! -} + name: String! -""" -A Pinned Issue is a issue pinned to a repository's index page. -""" -type PinnedIssue implements Node @preview(toggledBy: "elektra-preview") { """ - Identifies the primary key from the database. + The ref's prefix, such as `refs/heads/` or `refs/tags/`. """ - databaseId: Int - id: ID! + prefix: String! """ - The issue that was pinned. + Branch protection rules that are viewable by non-admins """ - issue: Issue! + refUpdateRule: RefUpdateRule """ - The actor that pinned this issue. + The repository the ref belongs to. """ - pinnedBy: Actor! + repository: Repository! """ - The repository that this issue was pinned to. + The object the ref points to. Returns null when object does not exist. """ - repository: Repository! + target: GitObject } """ -The connection type for PinnedIssue. +The connection type for Ref. """ -type PinnedIssueConnection @preview(toggledBy: "elektra-preview") { +type RefConnection { """ A list of edges. """ - edges: [PinnedIssueEdge] + edges: [RefEdge] """ A list of nodes. """ - nodes: [PinnedIssue] + nodes: [Ref] """ Information to aid in pagination. @@ -18628,7 +36155,7 @@ type PinnedIssueConnection @preview(toggledBy: "elektra-preview") { """ An edge in a connection. """ -type PinnedIssueEdge @preview(toggledBy: "elektra-preview") { +type RefEdge { """ A cursor for use in pagination. """ @@ -18637,282 +36164,324 @@ type PinnedIssueEdge @preview(toggledBy: "elektra-preview") { """ The item at the end of the edge. """ - node: PinnedIssue + node: Ref } """ -An ISO-8601 encoded UTC date string with millisecond precison. -""" -scalar PreciseDateTime - -""" -Audit log entry for a private_repository_forking.disable event. +Ways in which lists of git refs can be ordered upon return. """ -type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +input RefOrder { """ - The action name + The direction in which to order refs by the specified field. """ - action: String! + direction: OrderDirection! """ - The user who initiated the action + The field in which to order refs by. """ - actor: AuditEntryActor + field: RefOrderField! +} +""" +Properties by which ref connections can be ordered. +""" +enum RefOrderField { """ - The IP address of the actor + Order refs by their alphanumeric name """ - actorIp: String + ALPHABETICAL """ - A readable representation of the actor's location + Order refs by underlying commit date if the ref prefix is refs/tags/ """ - actorLocation: ActorLocation + TAG_COMMIT_DATE +} +""" +A ref update +""" +input RefUpdate @preview(toggledBy: "update-refs-preview") { """ - The username of the user who initiated the action + The value this ref should be updated to. """ - actorLogin: String + afterOid: GitObjectID! """ - The HTTP path for the actor. + The value this ref needs to point to before the update. """ - actorResourcePath: URI + beforeOid: GitObjectID """ - The HTTP URL for the actor. + Force a non fast-forward update. """ - actorUrl: URI + force: Boolean = false """ - The time the action was initiated + The fully qualified name of the ref to be update. For example `refs/heads/branch-name` """ - createdAt: PreciseDateTime! + name: GitRefname! +} +""" +A ref update rules for a viewer. +""" +type RefUpdateRule { """ - The HTTP path for this enterprise. + Can this branch be deleted. """ - enterpriseResourcePath: URI + allowsDeletions: Boolean! """ - The slug of the enterprise. + Are force pushes allowed on this branch. """ - enterpriseSlug: String + allowsForcePushes: Boolean! """ - The HTTP URL for this enterprise. + Can matching branches be created. """ - enterpriseUrl: URI - id: ID! + blocksCreations: Boolean! """ - The corresponding operation type for the action + Identifies the protection rule pattern. """ - operationType: OperationType + pattern: String! """ - The Organization associated with the Audit Entry. + Number of approving reviews required to update matching branches. """ - organization: Organization + requiredApprovingReviewCount: Int """ - The name of the Organization. + List of required status check contexts that must pass for commits to be accepted to matching branches. """ - organizationName: String + requiredStatusCheckContexts: [String] """ - The HTTP path for the organization + Are reviews from code owners required to update matching branches. """ - organizationResourcePath: URI + requiresCodeOwnerReviews: Boolean! """ - The HTTP URL for the organization + Are conversations required to be resolved before merging. """ - organizationUrl: URI + requiresConversationResolution: Boolean! """ - The repository associated with the action + Are merge commits prohibited from being pushed to this branch. """ - repository: Repository + requiresLinearHistory: Boolean! """ - The name of the repository + Are commits required to be signed. """ - repositoryName: String + requiresSignatures: Boolean! """ - The HTTP path for the repository + Is the viewer allowed to dismiss reviews. """ - repositoryResourcePath: URI + viewerAllowedToDismissReviews: Boolean! """ - The HTTP URL for the repository + Can the viewer push to the branch """ - repositoryUrl: URI + viewerCanPush: Boolean! +} +""" +Represents a 'referenced' event on a given `ReferencedSubject`. +""" +type ReferencedEvent implements Node { """ - The user affected by the action + Identifies the actor who performed the event. """ - user: User + actor: Actor """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the commit associated with the 'referenced' event. """ - userLogin: String + commit: Commit """ - The HTTP path for the user. + Identifies the repository associated with the 'referenced' event. """ - userResourcePath: URI + commitRepository: Repository! """ - The HTTP URL for the user. + Identifies the date and time when the object was created. """ - userUrl: URI -} + createdAt: DateTime! + id: ID! -""" -Audit log entry for a private_repository_forking.enable event. -""" -type PrivateRepositoryForkingEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + Reference originated in a different repository. """ - action: String! + isCrossRepository: Boolean! """ - The user who initiated the action + Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. """ - actor: AuditEntryActor + isDirectReference: Boolean! """ - The IP address of the actor + Object referenced by event. """ - actorIp: String + subject: ReferencedSubject! +} + +""" +Any referencable object +""" +union ReferencedSubject = Issue | PullRequest +""" +Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes +""" +input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { """ - A readable representation of the actor's location + A unique identifier for the client performing the mutation. """ - actorLocation: ActorLocation + clientMutationId: String """ - The username of the user who initiated the action + The ID of the enterprise on which to set an identity provider. """ - actorLogin: String + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) +} +""" +Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes +""" +type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { """ - The HTTP path for the actor. + A unique identifier for the client performing the mutation. """ - actorResourcePath: URI + clientMutationId: String """ - The HTTP URL for the actor. + The identity provider for the enterprise. """ - actorUrl: URI + identityProvider: EnterpriseIdentityProvider +} +""" +Autogenerated input type of RegenerateVerifiableDomainToken +""" +input RegenerateVerifiableDomainTokenInput { """ - The time the action was initiated + A unique identifier for the client performing the mutation. """ - createdAt: PreciseDateTime! + clientMutationId: String """ - The HTTP path for this enterprise. + The ID of the verifiable domain to regenerate the verification token of. """ - enterpriseResourcePath: URI + id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"]) +} +""" +Autogenerated return type of RegenerateVerifiableDomainToken +""" +type RegenerateVerifiableDomainTokenPayload { """ - The slug of the enterprise. + A unique identifier for the client performing the mutation. """ - enterpriseSlug: String + clientMutationId: String """ - The HTTP URL for this enterprise. + The verification token that was generated. """ - enterpriseUrl: URI - id: ID! + verificationToken: String +} +""" +Autogenerated input type of RejectDeployments +""" +input RejectDeploymentsInput { """ - The corresponding operation type for the action + A unique identifier for the client performing the mutation. """ - operationType: OperationType + clientMutationId: String """ - The Organization associated with the Audit Entry. + Optional comment for rejecting deployments """ - organization: Organization + comment: String = "" """ - The name of the Organization. + The ids of environments to reject deployments """ - organizationName: String + environmentIds: [ID!]! """ - The HTTP path for the organization + The node ID of the workflow run containing the pending deployments. """ - organizationResourcePath: URI + workflowRunId: ID! @possibleTypes(concreteTypes: ["WorkflowRun"]) +} +""" +Autogenerated return type of RejectDeployments +""" +type RejectDeploymentsPayload { """ - The HTTP URL for the organization + A unique identifier for the client performing the mutation. """ - organizationUrl: URI + clientMutationId: String """ - The repository associated with the action + The affected deployments. """ - repository: Repository + deployments: [Deployment!] +} +""" +A release contains the content for a release. +""" +type Release implements Node & Reactable & UniformResourceLocatable { """ - The name of the repository + The author of the release """ - repositoryName: String + author: User """ - The HTTP path for the repository + Identifies the date and time when the object was created. """ - repositoryResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the repository + Identifies the primary key from the database. """ - repositoryUrl: URI + databaseId: Int """ - The user affected by the action + The description of the release. """ - user: User + description: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The description of this release rendered to HTML. """ - userLogin: String + descriptionHTML: HTML + id: ID! """ - The HTTP path for the user. + Whether or not the release is a draft """ - userResourcePath: URI + isDraft: Boolean! """ - The HTTP URL for the user. + Whether or not the release is the latest releast """ - userUrl: URI -} + isLatest: Boolean! -""" -A curatable list of repositories relating to a repository owner, which defaults -to showing the most popular repositories they own. -""" -type ProfileItemShowcase { """ - Whether or not the owner has pinned any repositories or gists. + Whether or not the release is a prerelease """ - hasPinnedItems: Boolean! + isPrerelease: Boolean! """ - The repositories and gists in the showcase. If the profile owner has any - pinned items, those will be returned. Otherwise, the profile owner's popular - repositories will be returned. + A list of users mentioned in the release description """ - items( + mentions( """ Returns the elements in the list that come after the specified cursor. """ @@ -18932,54 +36501,27 @@ type ProfileItemShowcase { Returns the last _n_ elements from the list. """ last: Int - ): PinnableItemConnection! -} - -""" -Represents any entity on GitHub that has a profile page. -""" -interface ProfileOwner { - """ - Determine if this repository owner has any items that can be pinned to their profile. - """ - anyPinnableItems( - """ - Filter to only a particular kind of pinnable item. - """ - type: PinnableItemType - ): Boolean! - - """ - The public profile email. - """ - email: String - id: ID! - - """ - Showcases a selection of repositories and gists that the profile owner has - either curated or that have been selected automatically based on popularity. - """ - itemShowcase: ProfileItemShowcase! + ): UserConnection """ - The public profile location. + The title of the release. """ - location: String + name: String """ - The username used to login. + Identifies the date and time when the release was created. """ - login: String! + publishedAt: DateTime """ - The public profile name. + A list of reactions grouped by content left on the subject. """ - name: String + reactionGroups: [ReactionGroup!] """ - A list of repositories and gists this profile owner can pin to their profile. + A list of Reactions left on the Issue. """ - pinnableItems( + reactions( """ Returns the elements in the list that come after the specified cursor. """ @@ -18990,6 +36532,11 @@ interface ProfileOwner { """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -19001,15 +36548,15 @@ interface ProfileOwner { last: Int """ - Filter the types of pinnable items that are returned. + Allows specifying the order in which reactions are returned. """ - types: [PinnableItemType!] - ): PinnableItemConnection! + orderBy: ReactionOrder + ): ReactionConnection! """ - A list of repositories and gists this profile owner has pinned to their profile + List of releases assets which are dependent on this release. """ - pinnedItems( + releaseAssets( """ Returns the elements in the list that come after the specified cursor. """ @@ -19031,75 +36578,70 @@ interface ProfileOwner { last: Int """ - Filter the types of pinned items that are returned. + A list of names to filter the assets by. """ - types: [PinnableItemType!] - ): PinnableItemConnection! + name: String + ): ReleaseAssetConnection! """ - Returns how many more items this profile owner can pin to their profile. + The repository that the release belongs to. """ - pinnedItemsRemaining: Int! + repository: Repository! """ - Can the viewer pin repositories and gists to the profile? + The HTTP path for this issue """ - viewerCanChangePinnedItems: Boolean! + resourcePath: URI! """ - The public profile website URL. + A description of the release, rendered to HTML without any links in it. """ - websiteUrl: URI -} + shortDescriptionHTML( + """ + How many characters to return. + """ + limit: Int = 200 + ): HTML -""" -Projects manage issues, pull requests and notes within a project owner. -""" -type Project implements Closable & Node & Updatable { """ - The project's description body. + The Git tag the release points to """ - body: String + tag: Ref """ - The projects description body rendered to HTML. + The tag commit for this release. """ - bodyHTML: HTML! + tagCommit: Commit """ - `true` if the object is closed (definition of closed may depend on type) + The name of the release's Git tag """ - closed: Boolean! + tagName: String! """ - Identifies the date and time when the object was closed. + Identifies the date and time when the object was last updated. """ - closedAt: DateTime + updatedAt: DateTime! """ - List of columns in the project + The HTTP URL for this issue """ - columns( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + url: URI! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Can user react to this subject + """ + viewerCanReact: Boolean! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectColumnConnection! +""" +A release asset contains the content for a release asset. +""" +type ReleaseAsset implements Node { + """ + The asset's content-type + """ + contentType: String! """ Identifies the date and time when the object was created. @@ -19107,4032 +36649,3144 @@ type Project implements Closable & Node & Updatable { createdAt: DateTime! """ - The actor who originally created the project. + The number of times this asset was downloaded """ - creator: Actor + downloadCount: Int! """ - Identifies the primary key from the database. + Identifies the URL where you can download the release asset via the browser. """ - databaseId: Int + downloadUrl: URI! id: ID! """ - The project's name. + Identifies the title of the release asset. """ name: String! """ - The project's number. + Release that the asset is associated with """ - number: Int! + release: Release """ - The project's owner. Currently limited to repositories, organizations, and users. + The size (in bytes) of the asset """ - owner: ProjectOwner! + size: Int! """ - List of pending cards in this project + Identifies the date and time when the object was last updated. """ - pendingCards( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + updatedAt: DateTime! - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + """ + The user that performed the upload + """ + uploadedBy: User! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the URL of the release asset. + """ + url: URI! +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +The connection type for ReleaseAsset. +""" +type ReleaseAssetConnection { + """ + A list of edges. + """ + edges: [ReleaseAssetEdge] - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + """ + A list of nodes. + """ + nodes: [ReleaseAsset] """ - The HTTP path for this project + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type ReleaseAssetEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: ReleaseAsset +} + +""" +The connection type for Release. +""" +type ReleaseConnection { + """ + A list of edges. + """ + edges: [ReleaseEdge] + + """ + A list of nodes. + """ + nodes: [Release] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type ReleaseEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. """ - resourcePath: URI! + node: Release +} +""" +Ways in which lists of releases can be ordered upon return. +""" +input ReleaseOrder { """ - Whether the project is open or closed. + The direction in which to order releases by the specified field. """ - state: ProjectState! + direction: OrderDirection! """ - Identifies the date and time when the object was last updated. + The field in which to order releases by. """ - updatedAt: DateTime! + field: ReleaseOrderField! +} +""" +Properties by which release connections can be ordered. +""" +enum ReleaseOrderField { """ - The HTTP URL for this project + Order releases by creation time """ - url: URI! + CREATED_AT """ - Check if the current viewer can update this object. + Order releases alphabetically by name """ - viewerCanUpdate: Boolean! + NAME } """ -A card in a project. +Autogenerated input type of RemoveAssigneesFromAssignable """ -type ProjectCard implements Node { +input RemoveAssigneesFromAssignableInput { """ - The project column this card is associated under. A card may only belong to one - project column at a time. The column field will be null if the card is created - in a pending state and has yet to be associated with a column. Once cards are - associated with a column, they will not become pending in the future. + The id of the assignable object to remove assignees from. """ - column: ProjectColumn + assignableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Assignable") """ - The card content item + The id of users to remove as assignees. """ - content: ProjectCardItem + assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"]) """ - Identifies the date and time when the object was created. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime! + clientMutationId: String +} +""" +Autogenerated return type of RemoveAssigneesFromAssignable +""" +type RemoveAssigneesFromAssignablePayload { """ - The actor who created this card + The item that was unassigned. """ - creator: Actor + assignable: Assignable """ - Identifies the primary key from the database. + A unique identifier for the client performing the mutation. """ - databaseId: Int - id: ID! + clientMutationId: String +} + +""" +Autogenerated input type of RemoveEnterpriseAdmin +""" +input RemoveEnterpriseAdminInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String """ - Whether the card is archived + The Enterprise ID from which to remove the administrator. """ - isArchived: Boolean! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The card note + The login of the user to remove as an administrator. """ - note: String + login: String! +} +""" +Autogenerated return type of RemoveEnterpriseAdmin +""" +type RemoveEnterpriseAdminPayload { """ - The project that contains this card. + The user who was removed as an administrator. """ - project: Project! + admin: User """ - The HTTP path for this card + A unique identifier for the client performing the mutation. """ - resourcePath: URI! + clientMutationId: String """ - The state of ProjectCard + The updated enterprise. """ - state: ProjectCardState + enterprise: Enterprise """ - Identifies the date and time when the object was last updated. + A message confirming the result of removing an administrator. """ - updatedAt: DateTime! + message: String """ - The HTTP URL for this card + The viewer performing the mutation. """ - url: URI! + viewer: User } """ -The possible archived states of a project card. +Autogenerated input type of RemoveEnterpriseIdentityProvider """ -enum ProjectCardArchivedState { +input RemoveEnterpriseIdentityProviderInput { """ - A project card that is archived + A unique identifier for the client performing the mutation. """ - ARCHIVED + clientMutationId: String """ - A project card that is not archived + The ID of the enterprise from which to remove the identity provider. """ - NOT_ARCHIVED + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) } """ -The connection type for ProjectCard. +Autogenerated return type of RemoveEnterpriseIdentityProvider """ -type ProjectCardConnection { +type RemoveEnterpriseIdentityProviderPayload { """ - A list of edges. + A unique identifier for the client performing the mutation. """ - edges: [ProjectCardEdge] + clientMutationId: String """ - A list of nodes. + The identity provider that was removed from the enterprise. """ - nodes: [ProjectCard] + identityProvider: EnterpriseIdentityProvider +} +""" +Autogenerated input type of RemoveEnterpriseMember +""" +input RemoveEnterpriseMemberInput { """ - Information to aid in pagination. + A unique identifier for the client performing the mutation. """ - pageInfo: PageInfo! + clientMutationId: String """ - Identifies the total count of items in the connection. + The ID of the enterprise from which the user should be removed. """ - totalCount: Int! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the user to remove from the enterprise. + """ + userId: ID! @possibleTypes(concreteTypes: ["User"]) } """ -An edge in a connection. +Autogenerated return type of RemoveEnterpriseMember """ -type ProjectCardEdge { +type RemoveEnterpriseMemberPayload { """ - A cursor for use in pagination. + A unique identifier for the client performing the mutation. """ - cursor: String! + clientMutationId: String """ - The item at the end of the edge. + The updated enterprise. """ - node: ProjectCard -} + enterprise: Enterprise -""" -An issue or PR and its owning repository to be used in a project card. -""" -input ProjectCardImport { """ - The issue or pull request number. + The user that was removed from the enterprise. """ - number: Int! + user: User """ - Repository name with owner (owner/repository). + The viewer performing the mutation. """ - repository: String! + viewer: User } """ -Types that can be inside Project Cards. -""" -union ProjectCardItem = Issue | PullRequest - -""" -Various content states of a ProjectCard +Autogenerated input type of RemoveEnterpriseOrganization """ -enum ProjectCardState { +input RemoveEnterpriseOrganizationInput { """ - The card has content only. + A unique identifier for the client performing the mutation. """ - CONTENT_ONLY + clientMutationId: String """ - The card has a note only. + The ID of the enterprise from which the organization should be removed. """ - NOTE_ONLY + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The card is redacted. + The ID of the organization to remove from the enterprise. """ - REDACTED + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) } """ -A column inside a project. +Autogenerated return type of RemoveEnterpriseOrganization """ -type ProjectColumn implements Node { +type RemoveEnterpriseOrganizationPayload { """ - List of cards in the column + A unique identifier for the client performing the mutation. """ - cards( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + clientMutationId: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The updated enterprise. + """ + enterprise: Enterprise - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The organization that was removed from the enterprise. + """ + organization: Organization - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + """ + The viewer performing the mutation. + """ + viewer: User +} +""" +Autogenerated input type of RemoveEnterpriseSupportEntitlement +""" +input RemoveEnterpriseSupportEntitlementInput { """ - Identifies the date and time when the object was created. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime! + clientMutationId: String """ - Identifies the primary key from the database. + The ID of the Enterprise which the admin belongs to. """ - databaseId: Int - id: ID! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The project column's name. + The login of a member who will lose the support entitlement. """ - name: String! + login: String! +} +""" +Autogenerated return type of RemoveEnterpriseSupportEntitlement +""" +type RemoveEnterpriseSupportEntitlementPayload { """ - The project that contains this column. + A unique identifier for the client performing the mutation. """ - project: Project! + clientMutationId: String """ - The semantic purpose of the column + A message confirming the result of removing the support entitlement. """ - purpose: ProjectColumnPurpose + message: String +} +""" +Autogenerated input type of RemoveLabelsFromLabelable +""" +input RemoveLabelsFromLabelableInput { """ - The HTTP path for this project column + A unique identifier for the client performing the mutation. """ - resourcePath: URI! + clientMutationId: String """ - Identifies the date and time when the object was last updated. + The ids of labels to remove. """ - updatedAt: DateTime! + labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"]) """ - The HTTP URL for this project column + The id of the Labelable to remove labels from. """ - url: URI! + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ -The connection type for ProjectColumn. +Autogenerated return type of RemoveLabelsFromLabelable """ -type ProjectColumnConnection { +type RemoveLabelsFromLabelablePayload { """ - A list of edges. + A unique identifier for the client performing the mutation. """ - edges: [ProjectColumnEdge] + clientMutationId: String """ - A list of nodes. + The Labelable the labels were removed from. """ - nodes: [ProjectColumn] + labelable: Labelable +} +""" +Autogenerated input type of RemoveOutsideCollaborator +""" +input RemoveOutsideCollaboratorInput { """ - Information to aid in pagination. + A unique identifier for the client performing the mutation. """ - pageInfo: PageInfo! + clientMutationId: String """ - Identifies the total count of items in the connection. + The ID of the organization to remove the outside collaborator from. """ - totalCount: Int! + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The ID of the outside collaborator to remove. + """ + userId: ID! @possibleTypes(concreteTypes: ["User"]) } """ -An edge in a connection. +Autogenerated return type of RemoveOutsideCollaborator """ -type ProjectColumnEdge { +type RemoveOutsideCollaboratorPayload { """ - A cursor for use in pagination. + A unique identifier for the client performing the mutation. """ - cursor: String! + clientMutationId: String """ - The item at the end of the edge. + The user that was removed as an outside collaborator. """ - node: ProjectColumn + removedUser: User } """ -A project column and a list of its issues and PRs. +Autogenerated input type of RemoveReaction """ -input ProjectColumnImport { +input RemoveReactionInput { """ - The name of the column. + A unique identifier for the client performing the mutation. """ - columnName: String! + clientMutationId: String """ - A list of issues and pull requests in the column. + The name of the emoji reaction to remove. """ - issues: [ProjectCardImport!] + content: ReactionContent! """ - The position of the column, starting from 0. + The Node ID of the subject to modify. """ - position: Int! + subjectId: ID! + @possibleTypes( + concreteTypes: [ + "CommitComment" + "Discussion" + "DiscussionComment" + "Issue" + "IssueComment" + "PullRequest" + "PullRequestReview" + "PullRequestReviewComment" + "Release" + "TeamDiscussion" + "TeamDiscussionComment" + ] + abstractType: "Reactable" + ) } """ -The semantic purpose of the column - todo, in progress, or done. +Autogenerated return type of RemoveReaction """ -enum ProjectColumnPurpose { +type RemoveReactionPayload { """ - The column contains cards which are complete + A unique identifier for the client performing the mutation. """ - DONE + clientMutationId: String """ - The column contains cards which are currently being worked on + The reaction object. """ - IN_PROGRESS + reaction: Reaction """ - The column contains cards still to be worked on + The reaction groups for the subject. """ - TODO + reactionGroups: [ReactionGroup!] + + """ + The reactable subject. + """ + subject: Reactable } """ -A list of projects associated with the owner. +Autogenerated input type of RemoveStar """ -type ProjectConnection { +input RemoveStarInput { """ - A list of edges. + A unique identifier for the client performing the mutation. """ - edges: [ProjectEdge] + clientMutationId: String """ - A list of nodes. + The Starrable ID to unstar. """ - nodes: [Project] + starrableId: ID! @possibleTypes(concreteTypes: ["Gist", "Repository", "Topic"], abstractType: "Starrable") +} +""" +Autogenerated return type of RemoveStar +""" +type RemoveStarPayload { """ - Information to aid in pagination. + A unique identifier for the client performing the mutation. """ - pageInfo: PageInfo! + clientMutationId: String """ - Identifies the total count of items in the connection. + The starrable. """ - totalCount: Int! + starrable: Starrable } """ -An edge in a connection. +Autogenerated input type of RemoveUpvote """ -type ProjectEdge { +input RemoveUpvoteInput { """ - A cursor for use in pagination. + A unique identifier for the client performing the mutation. """ - cursor: String! + clientMutationId: String """ - The item at the end of the edge. + The Node ID of the discussion or comment to remove upvote. """ - node: Project + subjectId: ID! @possibleTypes(concreteTypes: ["Discussion", "DiscussionComment"], abstractType: "Votable") } """ -Ways in which lists of projects can be ordered upon return. +Autogenerated return type of RemoveUpvote """ -input ProjectOrder { +type RemoveUpvotePayload { """ - The direction in which to order projects by the specified field. + A unique identifier for the client performing the mutation. """ - direction: OrderDirection! + clientMutationId: String """ - The field in which to order projects by. + The votable subject. """ - field: ProjectOrderField! + subject: Votable } """ -Properties by which project connections can be ordered. +Represents a 'removed_from_project' event on a given issue or pull request. """ -enum ProjectOrderField { +type RemovedFromProjectEvent implements Node { """ - Order projects by creation time + Identifies the actor who performed the event. """ - CREATED_AT + actor: Actor """ - Order projects by name + Identifies the date and time when the object was created. """ - NAME + createdAt: DateTime! """ - Order projects by update time + Identifies the primary key from the database. """ - UPDATED_AT + databaseId: Int + id: ID! + + """ + Project referenced by event. + """ + project: Project @preview(toggledBy: "starfox-preview") + + """ + Column name referenced by this project event. + """ + projectColumnName: String! @preview(toggledBy: "starfox-preview") } """ -Represents an owner of a Project. +Represents a 'renamed' event on a given issue or pull request """ -interface ProjectOwner { - id: ID! +type RenamedTitleEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor """ - Find project by number. + Identifies the date and time when the object was created. """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + createdAt: DateTime! """ - A list of projects under the owner. + Identifies the current title of the issue or pull request. """ - projects( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + currentTitle: String! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the previous title of the issue or pull request. + """ + previousTitle: String! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Subject that was renamed. + """ + subject: RenamedTitleSubject! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +An object which has a renamable title +""" +union RenamedTitleSubject = Issue | PullRequest - """ - Ordering options for projects returned from the connection - """ - orderBy: ProjectOrder +""" +Autogenerated input type of ReopenIssue +""" +input ReopenIssueInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Query to search projects by, currently only searching by name. - """ - search: String + """ + ID of the issue to be opened. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) +} - """ - A list of states to filter the projects by. - """ - states: [ProjectState!] - ): ProjectConnection! +""" +Autogenerated return type of ReopenIssue +""" +type ReopenIssuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String """ - The HTTP path listing owners projects + The issue that was opened. """ - projectsResourcePath: URI! + issue: Issue +} +""" +Autogenerated input type of ReopenPullRequest +""" +input ReopenPullRequestInput { """ - The HTTP URL listing owners projects + A unique identifier for the client performing the mutation. """ - projectsUrl: URI! + clientMutationId: String """ - Can the current viewer create new projects on this owner. + ID of the pull request to be reopened. """ - viewerCanCreateProjects: Boolean! + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) } """ -State of the project; either 'open' or 'closed' +Autogenerated return type of ReopenPullRequest """ -enum ProjectState { +type ReopenPullRequestPayload { """ - The project is closed. + A unique identifier for the client performing the mutation. """ - CLOSED + clientMutationId: String """ - The project is open. + The pull request that was reopened. """ - OPEN + pullRequest: PullRequest } """ -GitHub-provided templates for Projects +Represents a 'reopened' event on any `Closable`. """ -enum ProjectTemplate { +type ReopenedEvent implements Node { """ - Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. + Identifies the actor who performed the event. """ - AUTOMATED_KANBAN_V2 + actor: Actor """ - Create a board with triggers to automatically move cards across columns with review automation. + Object that was reopened. """ - AUTOMATED_REVIEWS_KANBAN + closable: Closable! """ - Create a board with columns for To do, In progress and Done. + Identifies the date and time when the object was created. """ - BASIC_KANBAN + createdAt: DateTime! + id: ID! """ - Create a board to triage and prioritize bugs with To do, priority, and Done columns. + The reason the issue state was changed to open. """ - BUG_TRIAGE + stateReason: IssueStateReason } """ -A user's public key. +Audit log entry for a repo.access event. """ -type PublicKey implements Node { +type RepoAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The last time this authorization was used to perform an action. Values will be null for keys not owned by the user. + The action name """ - accessedAt: DateTime + action: String! """ - Identifies the date and time when the key was created. Keys created before - March 5th, 2014 have inaccurate values. Values will be null for keys not owned by the user. + The user who initiated the action """ - createdAt: DateTime + actor: AuditEntryActor """ - The fingerprint for this PublicKey. + The IP address of the actor """ - fingerprint: String! - id: ID! + actorIp: String """ - Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. + A readable representation of the actor's location """ - isReadOnly: Boolean + actorLocation: ActorLocation """ - The public key string. + The username of the user who initiated the action """ - key: String! + actorLogin: String """ - Identifies the date and time when the key was updated. Keys created before - March 5th, 2014 may have inaccurate values. Values will be null for keys not - owned by the user. + The HTTP path for the actor. """ - updatedAt: DateTime -} + actorResourcePath: URI -""" -The connection type for PublicKey. -""" -type PublicKeyConnection { """ - A list of edges. + The HTTP URL for the actor. """ - edges: [PublicKeyEdge] + actorUrl: URI """ - A list of nodes. + The time the action was initiated """ - nodes: [PublicKey] + createdAt: PreciseDateTime! + id: ID! """ - Information to aid in pagination. + The corresponding operation type for the action """ - pageInfo: PageInfo! + operationType: OperationType """ - Identifies the total count of items in the connection. + The Organization associated with the Audit Entry. """ - totalCount: Int! -} + organization: Organization -""" -An edge in a connection. -""" -type PublicKeyEdge { """ - A cursor for use in pagination. + The name of the Organization. """ - cursor: String! + organizationName: String """ - The item at the end of the edge. + The HTTP path for the organization """ - node: PublicKey -} + organizationResourcePath: URI -""" -A repository pull request. -""" -type PullRequest implements Assignable & Closable & Comment & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ - Reason that the conversation was locked. + The HTTP URL for the organization """ - activeLockReason: LockReason + organizationUrl: URI """ - The number of additions in this pull request. + The repository associated with the action """ - additions: Int! + repository: Repository """ - A list of Users assigned to this object. + The name of the repository """ - assignees( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! + repositoryName: String """ - The actor who authored the comment. + The HTTP path for the repository """ - author: Actor + repositoryResourcePath: URI """ - Author's association with the subject of the comment. + The HTTP URL for the repository """ - authorAssociation: CommentAuthorAssociation! + repositoryUrl: URI """ - Identifies the base Ref associated with the pull request. + The user affected by the action """ - baseRef: Ref + user: User """ - Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - baseRefName: String! + userLogin: String """ - Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. + The HTTP path for the user. """ - baseRefOid: GitObjectID! + userResourcePath: URI """ - The repository associated with this pull request's base Ref. + The HTTP URL for the user. """ - baseRepository: Repository + userUrl: URI """ - The body as Markdown. + The visibility of the repository """ - body: String! + visibility: RepoAccessAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoAccessAuditEntryVisibility { """ - The body rendered to HTML. + The repository is visible only to users in the same business. """ - bodyHTML: HTML! + INTERNAL """ - The body rendered to text. + The repository is visible only to those with explicit access. """ - bodyText: String! + PRIVATE """ - Whether or not the pull request is rebaseable. + The repository is visible to everyone. """ - canBeRebased: Boolean! @preview(toggledBy: "merge-info-preview") + PUBLIC +} +""" +Audit log entry for a repo.add_member event. +""" +type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The number of changed files in this pull request. + The action name """ - changedFiles: Int! + action: String! """ - `true` if the pull request is closed + The user who initiated the action """ - closed: Boolean! + actor: AuditEntryActor """ - Identifies the date and time when the object was closed. + The IP address of the actor """ - closedAt: DateTime + actorIp: String """ - A list of comments associated with the pull request. + A readable representation of the actor's location """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): IssueCommentConnection! + actorLocation: ActorLocation """ - A list of commits present in this pull request's head branch not present in the base branch. + The username of the user who initiated the action """ - commits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestCommitConnection! + actorLogin: String """ - Identifies the date and time when the object was created. + The HTTP path for the actor. """ - createdAt: DateTime! + actorResourcePath: URI """ - Check if this comment was created via an email reply. + The HTTP URL for the actor. """ - createdViaEmail: Boolean! + actorUrl: URI """ - Identifies the primary key from the database. + The time the action was initiated """ - databaseId: Int + createdAt: PreciseDateTime! + id: ID! """ - The number of deletions in this pull request. + The corresponding operation type for the action """ - deletions: Int! + operationType: OperationType """ - The actor who edited this pull request's body. + The Organization associated with the Audit Entry. """ - editor: Actor + organization: Organization """ - Lists the files changed within this pull request. + The name of the Organization. """ - files( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestChangedFileConnection + organizationName: String """ - Identifies the head Ref associated with the pull request. + The HTTP path for the organization """ - headRef: Ref + organizationResourcePath: URI """ - Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. + The HTTP URL for the organization """ - headRefName: String! + organizationUrl: URI """ - Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. + The repository associated with the action """ - headRefOid: GitObjectID! + repository: Repository """ - The repository associated with this pull request's head Ref. + The name of the repository """ - headRepository: Repository + repositoryName: String """ - The owner of the repository associated with this pull request's head Ref. + The HTTP path for the repository """ - headRepositoryOwner: RepositoryOwner + repositoryResourcePath: URI """ - The hovercard information for this issue + The HTTP URL for the repository """ - hovercard( - """ - Whether or not to include notification contexts - """ - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! + repositoryUrl: URI """ - Check if this comment was edited and includes an edit with the creation data + The user affected by the action """ - includesCreatedEdit: Boolean! + user: User """ - The head and base repositories are different. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - isCrossRepository: Boolean! + userLogin: String """ - Identifies if the pull request is a draft. + The HTTP path for the user. """ - isDraft: Boolean! @preview(toggledBy: "shadow-cat-preview") + userResourcePath: URI """ - A list of labels associated with the object. + The HTTP URL for the user. """ - labels( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): LabelConnection + userUrl: URI """ - The moment the editor made the last edit + The visibility of the repository """ - lastEditedAt: DateTime + visibility: RepoAddMemberAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoAddMemberAuditEntryVisibility { """ - `true` if the pull request is locked + The repository is visible only to users in the same business. """ - locked: Boolean! + INTERNAL """ - Indicates whether maintainers can modify the pull request. + The repository is visible only to those with explicit access. """ - maintainerCanModify: Boolean! + PRIVATE """ - The commit that was created when this pull request was merged. + The repository is visible to everyone. """ - mergeCommit: Commit + PUBLIC +} +""" +Audit log entry for a repo.add_topic event. +""" +type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { """ - Detailed information about the current pull request merge state status. + The action name """ - mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview") + action: String! """ - Whether or not the pull request can be merged based on the existence of merge conflicts. + The user who initiated the action """ - mergeable: MergeableState! + actor: AuditEntryActor """ - Whether or not the pull request was merged. + The IP address of the actor """ - merged: Boolean! + actorIp: String """ - The date and time that the pull request was merged. + A readable representation of the actor's location """ - mergedAt: DateTime + actorLocation: ActorLocation """ - The actor who merged the pull request. + The username of the user who initiated the action """ - mergedBy: Actor + actorLogin: String """ - Identifies the milestone associated with the pull request. + The HTTP path for the actor. """ - milestone: Milestone + actorResourcePath: URI """ - Identifies the pull request number. + The HTTP URL for the actor. """ - number: Int! + actorUrl: URI """ - A list of Users that are participating in the Pull Request conversation. + The time the action was initiated """ - participants( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! + createdAt: PreciseDateTime! + id: ID! """ - The permalink to the pull request. + The corresponding operation type for the action """ - permalink: URI! + operationType: OperationType """ - The commit that GitHub automatically generated to test if this pull request - could be merged. This field will not return a value if the pull request is - merged, or if the test merge commit is still being generated. See the - `mergeable` field for more details on the mergeability of the pull request. + The Organization associated with the Audit Entry. """ - potentialMergeCommit: Commit + organization: Organization """ - List of project cards associated with this pull request. + The name of the Organization. """ - projectCards( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + organizationName: String """ - Identifies when the comment was published at. + The HTTP path for the organization """ - publishedAt: DateTime + organizationResourcePath: URI """ - A list of reactions grouped by content left on the subject. + The HTTP URL for the organization """ - reactionGroups: [ReactionGroup!] + organizationUrl: URI """ - A list of Reactions left on the Issue. + The repository associated with the action """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + repository: Repository """ - The repository associated with this node. + The name of the repository """ - repository: Repository! + repositoryName: String """ - The HTTP path for this pull request. + The HTTP path for the repository """ - resourcePath: URI! + repositoryResourcePath: URI """ - The HTTP path for reverting this pull request. + The HTTP URL for the repository """ - revertResourcePath: URI! + repositoryUrl: URI """ - The HTTP URL for reverting this pull request. + The name of the topic added to the repository """ - revertUrl: URI! + topic: Topic """ - A list of review requests associated with the pull request. + The name of the topic added to the repository """ - reviewRequests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ReviewRequestConnection + topicName: String """ - The list of all review threads for this pull request. + The user affected by the action """ - reviewThreads( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestReviewThreadConnection! + user: User """ - A list of reviews associated with the pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - reviews( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Filter by author of the review. - """ - author: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - A list of states to filter the reviews. - """ - states: [PullRequestReviewState!] - ): PullRequestReviewConnection + userLogin: String """ - Identifies the state of the pull request. + The HTTP path for the user. """ - state: PullRequestState! + userResourcePath: URI """ - A list of reviewer suggestions based on commit history and past review comments. + The HTTP URL for the user. """ - suggestedReviewers: [SuggestedReviewer]! + userUrl: URI +} +""" +Audit log entry for a repo.archived event. +""" +type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of events, comments, commits, etc. associated with the pull request. + The action name """ - timeline( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows filtering timeline events by a `since` timestamp. - """ - since: DateTime - ): PullRequestTimelineConnection! @deprecated(reason: "`timeline` will be removed Use PullRequest.timelineItems instead. Removal on 2019-10-01 UTC.") + action: String! """ - A list of events, comments, commits, etc. associated with the pull request. + The user who initiated the action """ - timelineItems( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + actor: AuditEntryActor - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The IP address of the actor + """ + actorIp: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation - """ - Filter timeline items by type. - """ - itemTypes: [PullRequestTimelineItemsItemType!] + """ + The username of the user who initiated the action + """ + actorLogin: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP path for the actor. + """ + actorResourcePath: URI - """ - Filter timeline items by a `since` timestamp. - """ - since: DateTime + """ + The HTTP URL for the actor. + """ + actorUrl: URI - """ - Skips the first _n_ elements in the list. - """ - skip: Int - ): PullRequestTimelineItemsConnection! + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! """ - Identifies the pull request title. + The corresponding operation type for the action """ - title: String! + operationType: OperationType """ - Identifies the date and time when the object was last updated. + The Organization associated with the Audit Entry. """ - updatedAt: DateTime! + organization: Organization """ - The HTTP URL for this pull request. + The name of the Organization. """ - url: URI! + organizationName: String """ - A list of edits to this content. + The HTTP path for the organization """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + organizationResourcePath: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP URL for the organization + """ + organizationUrl: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The repository associated with the action + """ + repository: Repository - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserContentEditConnection + """ + The name of the repository + """ + repositoryName: String """ - Whether or not the viewer can apply suggestion. + The HTTP path for the repository """ - viewerCanApplySuggestion: Boolean! + repositoryResourcePath: URI """ - Can user react to this subject + The HTTP URL for the repository """ - viewerCanReact: Boolean! + repositoryUrl: URI """ - Check if the viewer is able to change their subscription status for the repository. + The user affected by the action """ - viewerCanSubscribe: Boolean! + user: User """ - Check if the current viewer can update this object. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanUpdate: Boolean! + userLogin: String """ - Reasons why the current viewer can not update this comment. + The HTTP path for the user. """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + userResourcePath: URI """ - Did the viewer author this comment. + The HTTP URL for the user. """ - viewerDidAuthor: Boolean! + userUrl: URI """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + The visibility of the repository """ - viewerSubscription: SubscriptionState + visibility: RepoArchivedAuditEntryVisibility } """ -A file changed in a pull request. +The privacy of a repository """ -type PullRequestChangedFile { +enum RepoArchivedAuditEntryVisibility { """ - The number of additions to the file. + The repository is visible only to users in the same business. """ - additions: Int! + INTERNAL """ - The number of deletions to the file. + The repository is visible only to those with explicit access. """ - deletions: Int! + PRIVATE """ - The path of the file. + The repository is visible to everyone. """ - path: String! + PUBLIC } """ -The connection type for PullRequestChangedFile. +Audit log entry for a repo.change_merge_setting event. """ -type PullRequestChangedFileConnection { +type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PullRequestChangedFileEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [PullRequestChangedFile] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! -} + actorLocation: ActorLocation -""" -An edge in a connection. -""" -type PullRequestChangedFileEdge { """ - A cursor for use in pagination. + The username of the user who initiated the action """ - cursor: String! + actorLogin: String """ - The item at the end of the edge. + The HTTP path for the actor. """ - node: PullRequestChangedFile -} + actorResourcePath: URI -""" -Represents a Git commit part of a pull request. -""" -type PullRequestCommit implements Node & UniformResourceLocatable { """ - The Git commit object + The HTTP URL for the actor. """ - commit: Commit! - id: ID! + actorUrl: URI """ - The pull request this commit belongs to + The time the action was initiated """ - pullRequest: PullRequest! + createdAt: PreciseDateTime! + id: ID! """ - The HTTP path for this pull request commit + Whether the change was to enable (true) or disable (false) the merge type """ - resourcePath: URI! + isEnabled: Boolean """ - The HTTP URL for this pull request commit + The merge method affected by the change """ - url: URI! -} + mergeType: RepoChangeMergeSettingAuditEntryMergeType -""" -Represents a commit comment thread part of a pull request. -""" -type PullRequestCommitCommentThread implements Node & RepositoryNode { """ - The comments that exist in this thread. + The corresponding operation type for the action """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + operationType: OperationType - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): CommitCommentConnection! + """ + The Organization associated with the Audit Entry. + """ + organization: Organization """ - The commit the comments were made on. + The name of the Organization. """ - commit: Commit! - id: ID! + organizationName: String """ - The file the comments were made on. + The HTTP path for the organization """ - path: String + organizationResourcePath: URI """ - The position in the diff for the commit that the comment was made on. + The HTTP URL for the organization """ - position: Int + organizationUrl: URI """ - The pull request this commit comment thread belongs to + The repository associated with the action """ - pullRequest: PullRequest! + repository: Repository """ - The repository associated with this node. + The name of the repository """ - repository: Repository! -} + repositoryName: String -""" -The connection type for PullRequestCommit. -""" -type PullRequestCommitConnection { """ - A list of edges. + The HTTP path for the repository """ - edges: [PullRequestCommitEdge] + repositoryResourcePath: URI """ - A list of nodes. + The HTTP URL for the repository """ - nodes: [PullRequestCommit] + repositoryUrl: URI """ - Information to aid in pagination. + The user affected by the action """ - pageInfo: PageInfo! + user: User """ - Identifies the total count of items in the connection. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - totalCount: Int! -} + userLogin: String -""" -An edge in a connection. -""" -type PullRequestCommitEdge { """ - A cursor for use in pagination. + The HTTP path for the user. """ - cursor: String! + userResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the user. """ - node: PullRequestCommit + userUrl: URI } """ -The connection type for PullRequest. +The merge options available for pull requests to this repository. """ -type PullRequestConnection { - """ - A list of edges. - """ - edges: [PullRequestEdge] - +enum RepoChangeMergeSettingAuditEntryMergeType { """ - A list of nodes. + The pull request is added to the base branch in a merge commit. """ - nodes: [PullRequest] + MERGE """ - Information to aid in pagination. + Commits from the pull request are added onto the base branch individually without a merge commit. """ - pageInfo: PageInfo! + REBASE """ - Identifies the total count of items in the connection. + The pull request's commits are squashed into a single commit before they are merged to the base branch. """ - totalCount: Int! + SQUASH } """ -This aggregates pull requests opened by a user within one repository. +Audit log entry for a repo.config.disable_anonymous_git_access event. """ -type PullRequestContributionsByRepository { +type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The pull request contributions. + The action name """ - contributions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for contributions returned from the connection. - """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} - ): CreatedPullRequestContributionConnection! + action: String! """ - The repository in which the pull requests were opened. + The user who initiated the action """ - repository: Repository! -} + actor: AuditEntryActor -""" -An edge in a connection. -""" -type PullRequestEdge { """ - A cursor for use in pagination. + The IP address of the actor """ - cursor: String! + actorIp: String """ - The item at the end of the edge. + A readable representation of the actor's location """ - node: PullRequest -} + actorLocation: ActorLocation -""" -Represents available types of methods to use when merging a pull request. -""" -enum PullRequestMergeMethod { """ - Add all commits from the head branch to the base branch with a merge commit. + The username of the user who initiated the action """ - MERGE + actorLogin: String """ - Add all commits from the head branch onto the base branch individually. + The HTTP path for the actor. """ - REBASE + actorResourcePath: URI """ - Combine all commits from the head branch into a single commit in the base branch. + The HTTP URL for the actor. """ - SQUASH -} + actorUrl: URI -""" -Ways in which lists of issues can be ordered upon return. -""" -input PullRequestOrder { """ - The direction in which to order pull requests by the specified field. + The time the action was initiated """ - direction: OrderDirection! + createdAt: PreciseDateTime! + id: ID! """ - The field in which to order pull requests by. + The corresponding operation type for the action """ - field: PullRequestOrderField! -} + operationType: OperationType -""" -Properties by which pull_requests connections can be ordered. -""" -enum PullRequestOrderField { """ - Order pull_requests by creation time + The Organization associated with the Audit Entry. """ - CREATED_AT + organization: Organization """ - Order pull_requests by update time + The name of the Organization. """ - UPDATED_AT -} + organizationName: String -""" -A review object for a given pull request. -""" -type PullRequestReview implements Comment & Deletable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The actor who authored the comment. + The HTTP path for the organization """ - author: Actor + organizationResourcePath: URI """ - Author's association with the subject of the comment. + The HTTP URL for the organization """ - authorAssociation: CommentAuthorAssociation! + organizationUrl: URI """ - Identifies the pull request review body. + The repository associated with the action """ - body: String! + repository: Repository """ - The body of this review rendered to HTML. + The name of the repository """ - bodyHTML: HTML! + repositoryName: String """ - The body of this review rendered as plain text. + The HTTP path for the repository """ - bodyText: String! + repositoryResourcePath: URI """ - A list of review comments for the current pull request review. + The HTTP URL for the repository """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestReviewCommentConnection! + repositoryUrl: URI """ - Identifies the commit associated with this pull request review. + The user affected by the action """ - commit: Commit + user: User """ - Identifies the date and time when the object was created. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - createdAt: DateTime! + userLogin: String """ - Check if this comment was created via an email reply. + The HTTP path for the user. """ - createdViaEmail: Boolean! + userResourcePath: URI """ - Identifies the primary key from the database. + The HTTP URL for the user. """ - databaseId: Int + userUrl: URI +} +""" +Audit log entry for a repo.config.disable_collaborators_only event. +""" +type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The actor who edited the comment. + The action name """ - editor: Actor - id: ID! + action: String! """ - Check if this comment was edited and includes an edit with the creation data + The user who initiated the action """ - includesCreatedEdit: Boolean! + actor: AuditEntryActor """ - The moment the editor made the last edit + The IP address of the actor """ - lastEditedAt: DateTime + actorIp: String """ - A list of teams that this review was made on behalf of. + A readable representation of the actor's location """ - onBehalfOf( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): TeamConnection! + actorLocation: ActorLocation """ - Identifies when the comment was published at. + The username of the user who initiated the action """ - publishedAt: DateTime + actorLogin: String """ - Identifies the pull request associated with this pull request review. + The HTTP path for the actor. """ - pullRequest: PullRequest! + actorResourcePath: URI """ - A list of reactions grouped by content left on the subject. + The HTTP URL for the actor. """ - reactionGroups: [ReactionGroup!] + actorUrl: URI """ - A list of Reactions left on the Issue. + The time the action was initiated """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + createdAt: PreciseDateTime! + id: ID! """ - The repository associated with this node. + The corresponding operation type for the action """ - repository: Repository! + operationType: OperationType """ - The HTTP path permalink for this PullRequestReview. + The Organization associated with the Audit Entry. """ - resourcePath: URI! + organization: Organization """ - Identifies the current state of the pull request review. + The name of the Organization. """ - state: PullRequestReviewState! + organizationName: String """ - Identifies when the Pull Request Review was submitted + The HTTP path for the organization """ - submittedAt: DateTime + organizationResourcePath: URI """ - Identifies the date and time when the object was last updated. + The HTTP URL for the organization """ - updatedAt: DateTime! + organizationUrl: URI """ - The HTTP URL permalink for this PullRequestReview. + The repository associated with the action """ - url: URI! + repository: Repository """ - A list of edits to this content. + The name of the repository """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + repositoryName: String - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserContentEditConnection + """ + The HTTP path for the repository + """ + repositoryResourcePath: URI """ - Check if the current viewer can delete this object. + The HTTP URL for the repository """ - viewerCanDelete: Boolean! + repositoryUrl: URI """ - Can user react to this subject + The user affected by the action """ - viewerCanReact: Boolean! + user: User """ - Check if the current viewer can update this object. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanUpdate: Boolean! + userLogin: String """ - Reasons why the current viewer can not update this comment. + The HTTP path for the user. """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + userResourcePath: URI """ - Did the viewer author this comment. + The HTTP URL for the user. """ - viewerDidAuthor: Boolean! + userUrl: URI } """ -A review comment associated with a given repository pull request. +Audit log entry for a repo.config.disable_contributors_only event. """ -type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { +type RepoConfigDisableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The actor who authored the comment. + The action name """ - author: Actor + action: String! """ - Author's association with the subject of the comment. + The user who initiated the action """ - authorAssociation: CommentAuthorAssociation! + actor: AuditEntryActor """ - The comment body of this review comment. + The IP address of the actor """ - body: String! + actorIp: String """ - The comment body of this review comment rendered to HTML. + A readable representation of the actor's location """ - bodyHTML: HTML! + actorLocation: ActorLocation """ - The comment body of this review comment rendered as plain text. + The username of the user who initiated the action """ - bodyText: String! + actorLogin: String """ - Identifies the commit associated with the comment. + The HTTP path for the actor. """ - commit: Commit! + actorResourcePath: URI """ - Identifies when the comment was created. + The HTTP URL for the actor. """ - createdAt: DateTime! + actorUrl: URI """ - Check if this comment was created via an email reply. + The time the action was initiated """ - createdViaEmail: Boolean! + createdAt: PreciseDateTime! + id: ID! """ - Identifies the primary key from the database. + The corresponding operation type for the action """ - databaseId: Int + operationType: OperationType """ - The diff hunk to which the comment applies. + The Organization associated with the Audit Entry. """ - diffHunk: String! + organization: Organization """ - Identifies when the comment was created in a draft state. + The name of the Organization. """ - draftedAt: DateTime! + organizationName: String """ - The actor who edited the comment. + The HTTP path for the organization """ - editor: Actor - id: ID! + organizationResourcePath: URI """ - Check if this comment was edited and includes an edit with the creation data + The HTTP URL for the organization """ - includesCreatedEdit: Boolean! + organizationUrl: URI """ - Returns whether or not a comment has been minimized. + The repository associated with the action """ - isMinimized: Boolean! + repository: Repository """ - The moment the editor made the last edit + The name of the repository """ - lastEditedAt: DateTime + repositoryName: String """ - Returns why the comment was minimized. + The HTTP path for the repository """ - minimizedReason: String + repositoryResourcePath: URI """ - Identifies the original commit associated with the comment. + The HTTP URL for the repository """ - originalCommit: Commit + repositoryUrl: URI """ - The original line index in the diff to which the comment applies. + The user affected by the action """ - originalPosition: Int! + user: User """ - Identifies when the comment body is outdated + For actions involving two users, the actor is the initiator and the user is the affected user. """ - outdated: Boolean! + userLogin: String """ - The path to which the comment applies. + The HTTP path for the user. """ - path: String! + userResourcePath: URI """ - The line index in the diff to which the comment applies. + The HTTP URL for the user. """ - position: Int + userUrl: URI +} +""" +Audit log entry for a repo.config.disable_sockpuppet_disallowed event. +""" +type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Identifies when the comment was published at. + The action name """ - publishedAt: DateTime + action: String! """ - The pull request associated with this review comment. + The user who initiated the action """ - pullRequest: PullRequest! + actor: AuditEntryActor """ - The pull request review associated with this review comment. + The IP address of the actor """ - pullRequestReview: PullRequestReview + actorIp: String """ - A list of reactions grouped by content left on the subject. + A readable representation of the actor's location """ - reactionGroups: [ReactionGroup!] + actorLocation: ActorLocation """ - A list of Reactions left on the Issue. + The username of the user who initiated the action """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + actorLogin: String """ - The comment this is a reply to. + The HTTP path for the actor. """ - replyTo: PullRequestReviewComment + actorResourcePath: URI """ - The repository associated with this node. + The HTTP URL for the actor. """ - repository: Repository! + actorUrl: URI """ - The HTTP path permalink for this review comment. + The time the action was initiated """ - resourcePath: URI! + createdAt: PreciseDateTime! + id: ID! """ - Identifies the state of the comment. + The corresponding operation type for the action """ - state: PullRequestReviewCommentState! + operationType: OperationType """ - Identifies when the comment was last updated. + The Organization associated with the Audit Entry. """ - updatedAt: DateTime! + organization: Organization """ - The HTTP URL permalink for this review comment. + The name of the Organization. """ - url: URI! + organizationName: String """ - A list of edits to this content. + The HTTP path for the organization """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + organizationResourcePath: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP URL for the organization + """ + organizationUrl: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The repository associated with the action + """ + repository: Repository - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserContentEditConnection + """ + The name of the repository + """ + repositoryName: String """ - Check if the current viewer can delete this object. + The HTTP path for the repository """ - viewerCanDelete: Boolean! + repositoryResourcePath: URI """ - Check if the current viewer can minimize this object. + The HTTP URL for the repository """ - viewerCanMinimize: Boolean! + repositoryUrl: URI """ - Can user react to this subject + The user affected by the action """ - viewerCanReact: Boolean! + user: User """ - Check if the current viewer can update this object. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanUpdate: Boolean! + userLogin: String """ - Reasons why the current viewer can not update this comment. + The HTTP path for the user. """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + userResourcePath: URI """ - Did the viewer author this comment. + The HTTP URL for the user. """ - viewerDidAuthor: Boolean! + userUrl: URI } """ -The connection type for PullRequestReviewComment. +Audit log entry for a repo.config.enable_anonymous_git_access event. """ -type PullRequestReviewCommentConnection { +type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PullRequestReviewCommentEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [PullRequestReviewComment] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! -} + actorLocation: ActorLocation -""" -An edge in a connection. -""" -type PullRequestReviewCommentEdge { """ - A cursor for use in pagination. + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. """ - cursor: String! + actorResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the actor. """ - node: PullRequestReviewComment -} + actorUrl: URI -""" -The possible states of a pull request review comment. -""" -enum PullRequestReviewCommentState { """ - A comment that is part of a pending review + The time the action was initiated """ - PENDING + createdAt: PreciseDateTime! + id: ID! """ - A comment that is part of a submitted review + The corresponding operation type for the action """ - SUBMITTED -} + operationType: OperationType -""" -The connection type for PullRequestReview. -""" -type PullRequestReviewConnection { """ - A list of edges. + The Organization associated with the Audit Entry. """ - edges: [PullRequestReviewEdge] + organization: Organization """ - A list of nodes. + The name of the Organization. """ - nodes: [PullRequestReview] + organizationName: String """ - Information to aid in pagination. + The HTTP path for the organization """ - pageInfo: PageInfo! + organizationResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the organization """ - totalCount: Int! -} + organizationUrl: URI -""" -This aggregates pull request reviews made by a user within one repository. -""" -type PullRequestReviewContributionsByRepository { """ - The pull request review contributions. + The repository associated with the action """ - contributions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for contributions returned from the connection. - """ - orderBy: ContributionOrder = {field: OCCURRED_AT, direction: DESC} - ): CreatedPullRequestReviewContributionConnection! + repository: Repository """ - The repository in which the pull request reviews were made. + The name of the repository """ - repository: Repository! -} + repositoryName: String -""" -An edge in a connection. -""" -type PullRequestReviewEdge { """ - A cursor for use in pagination. + The HTTP path for the repository """ - cursor: String! + repositoryResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the repository """ - node: PullRequestReview -} + repositoryUrl: URI -""" -The possible events to perform on a pull request review. -""" -enum PullRequestReviewEvent { """ - Submit feedback and approve merging these changes. + The user affected by the action """ - APPROVE + user: User """ - Submit general feedback without explicit approval. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - COMMENT + userLogin: String """ - Dismiss review so it now longer effects merging. + The HTTP path for the user. """ - DISMISS + userResourcePath: URI """ - Submit feedback that must be addressed before merging. + The HTTP URL for the user. """ - REQUEST_CHANGES + userUrl: URI } """ -The possible states of a pull request review. +Audit log entry for a repo.config.enable_collaborators_only event. """ -enum PullRequestReviewState { +type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A review allowing the pull request to merge. + The action name """ - APPROVED + action: String! """ - A review blocking the pull request from merging. + The user who initiated the action """ - CHANGES_REQUESTED + actor: AuditEntryActor """ - An informational review. + The IP address of the actor """ - COMMENTED + actorIp: String """ - A review that has been dismissed. + A readable representation of the actor's location """ - DISMISSED + actorLocation: ActorLocation """ - A review that has not yet been submitted. + The username of the user who initiated the action """ - PENDING -} + actorLogin: String -""" -A threaded list of comments for a given pull request. -""" -type PullRequestReviewThread implements Node { """ - A list of pull request comments associated with the thread. + The HTTP path for the actor. """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Skips the first _n_ elements in the list. - """ - skip: Int - ): PullRequestReviewCommentConnection! - id: ID! + actorResourcePath: URI """ - Whether this thread has been resolved + The HTTP URL for the actor. """ - isResolved: Boolean! + actorUrl: URI """ - Identifies the pull request associated with this thread. + The time the action was initiated """ - pullRequest: PullRequest! + createdAt: PreciseDateTime! + id: ID! """ - Identifies the repository associated with this thread. + The corresponding operation type for the action """ - repository: Repository! + operationType: OperationType """ - The user who resolved this thread + The Organization associated with the Audit Entry. """ - resolvedBy: User + organization: Organization """ - Whether or not the viewer can resolve this thread + The name of the Organization. """ - viewerCanResolve: Boolean! + organizationName: String """ - Whether or not the viewer can unresolve this thread + The HTTP path for the organization """ - viewerCanUnresolve: Boolean! -} + organizationResourcePath: URI -""" -Review comment threads for a pull request review. -""" -type PullRequestReviewThreadConnection { """ - A list of edges. + The HTTP URL for the organization """ - edges: [PullRequestReviewThreadEdge] + organizationUrl: URI """ - A list of nodes. + The repository associated with the action """ - nodes: [PullRequestReviewThread] + repository: Repository """ - Information to aid in pagination. + The name of the repository """ - pageInfo: PageInfo! + repositoryName: String """ - Identifies the total count of items in the connection. + The HTTP path for the repository """ - totalCount: Int! -} + repositoryResourcePath: URI -""" -An edge in a connection. -""" -type PullRequestReviewThreadEdge { """ - A cursor for use in pagination. + The HTTP URL for the repository """ - cursor: String! + repositoryUrl: URI """ - The item at the end of the edge. + The user affected by the action """ - node: PullRequestReviewThread -} + user: User -""" -Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. -""" -type PullRequestRevisionMarker { """ - Identifies the date and time when the object was created. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - createdAt: DateTime! + userLogin: String """ - The last commit the viewer has seen. + The HTTP path for the user. """ - lastSeenCommit: Commit! + userResourcePath: URI """ - The pull request to which the marker belongs. + The HTTP URL for the user. """ - pullRequest: PullRequest! + userUrl: URI } """ -The possible states of a pull request. +Audit log entry for a repo.config.enable_contributors_only event. """ -enum PullRequestState { +type RepoConfigEnableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A pull request that has been closed without being merged. + The action name """ - CLOSED + action: String! """ - A pull request that has been closed by being merged. + The user who initiated the action """ - MERGED + actor: AuditEntryActor """ - A pull request that is still open. + The IP address of the actor """ - OPEN -} + actorIp: String -""" -The connection type for PullRequestTimelineItem. -""" -type PullRequestTimelineConnection { """ - A list of edges. + A readable representation of the actor's location """ - edges: [PullRequestTimelineItemEdge] + actorLocation: ActorLocation """ - A list of nodes. + The username of the user who initiated the action """ - nodes: [PullRequestTimelineItem] + actorLogin: String """ - Information to aid in pagination. + The HTTP path for the actor. """ - pageInfo: PageInfo! + actorResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the actor. """ - totalCount: Int! -} - -""" -An item in an pull request timeline -""" -union PullRequestTimelineItem = AssignedEvent | BaseRefForcePushedEvent | ClosedEvent | Commit | CommitCommentThread | CrossReferencedEvent | DemilestonedEvent | DeployedEvent | DeploymentEnvironmentChangedEvent | HeadRefDeletedEvent | HeadRefForcePushedEvent | HeadRefRestoredEvent | IssueComment | LabeledEvent | LockedEvent | MergedEvent | MilestonedEvent | PullRequestReview | PullRequestReviewComment | PullRequestReviewThread | ReferencedEvent | RenamedTitleEvent | ReopenedEvent | ReviewDismissedEvent | ReviewRequestRemovedEvent | ReviewRequestedEvent | SubscribedEvent | UnassignedEvent | UnlabeledEvent | UnlockedEvent | UnsubscribedEvent | UserBlockedEvent + actorUrl: URI -""" -An edge in a connection. -""" -type PullRequestTimelineItemEdge { """ - A cursor for use in pagination. + The time the action was initiated """ - cursor: String! + createdAt: PreciseDateTime! + id: ID! """ - The item at the end of the edge. + The corresponding operation type for the action """ - node: PullRequestTimelineItem -} + operationType: OperationType -""" -An item in a pull request timeline -""" -union PullRequestTimelineItems = AddedToProjectEvent | AssignedEvent | BaseRefChangedEvent | BaseRefForcePushedEvent | ClosedEvent | CommentDeletedEvent | ConvertedNoteToIssueEvent | CrossReferencedEvent | DemilestonedEvent | DeployedEvent | DeploymentEnvironmentChangedEvent | HeadRefDeletedEvent | HeadRefForcePushedEvent | HeadRefRestoredEvent | IssueComment | LabeledEvent | LockedEvent | MarkedAsDuplicateEvent | MentionedEvent | MergedEvent | MilestonedEvent | MovedColumnsInProjectEvent | PinnedEvent | PullRequestCommit | PullRequestCommitCommentThread | PullRequestReview | PullRequestReviewThread | PullRequestRevisionMarker | ReadyForReviewEvent | ReferencedEvent | RemovedFromProjectEvent | RenamedTitleEvent | ReopenedEvent | ReviewDismissedEvent | ReviewRequestRemovedEvent | ReviewRequestedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent | UnlabeledEvent | UnlockedEvent | UnpinnedEvent | UnsubscribedEvent | UserBlockedEvent + """ + The Organization associated with the Audit Entry. + """ + organization: Organization -""" -The connection type for PullRequestTimelineItems. -""" -type PullRequestTimelineItemsConnection { """ - A list of edges. + The name of the Organization. """ - edges: [PullRequestTimelineItemsEdge] + organizationName: String """ - Identifies the count of items after applying `before` and `after` filters. + The HTTP path for the organization """ - filteredCount: Int! + organizationResourcePath: URI """ - A list of nodes. + The HTTP URL for the organization """ - nodes: [PullRequestTimelineItems] + organizationUrl: URI """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + The repository associated with the action """ - pageCount: Int! + repository: Repository """ - Information to aid in pagination. + The name of the repository """ - pageInfo: PageInfo! + repositoryName: String """ - Identifies the total count of items in the connection. + The HTTP path for the repository """ - totalCount: Int! + repositoryResourcePath: URI """ - Identifies the date and time when the timeline was last updated. + The HTTP URL for the repository """ - updatedAt: DateTime! -} + repositoryUrl: URI -""" -An edge in a connection. -""" -type PullRequestTimelineItemsEdge { """ - A cursor for use in pagination. + The user affected by the action """ - cursor: String! + user: User """ - The item at the end of the edge. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - node: PullRequestTimelineItems -} + userLogin: String -""" -The possible item types found in a timeline. -""" -enum PullRequestTimelineItemsItemType { """ - Represents a 'added_to_project' event on a given issue or pull request. + The HTTP path for the user. """ - ADDED_TO_PROJECT_EVENT + userResourcePath: URI """ - Represents an 'assigned' event on any assignable object. + The HTTP URL for the user. """ - ASSIGNED_EVENT + userUrl: URI +} +""" +Audit log entry for a repo.config.enable_sockpuppet_disallowed event. +""" +type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents a 'base_ref_changed' event on a given issue or pull request. + The action name """ - BASE_REF_CHANGED_EVENT + action: String! """ - Represents a 'base_ref_force_pushed' event on a given pull request. + The user who initiated the action """ - BASE_REF_FORCE_PUSHED_EVENT + actor: AuditEntryActor """ - Represents a 'closed' event on any `Closable`. + The IP address of the actor """ - CLOSED_EVENT + actorIp: String """ - Represents a 'comment_deleted' event on a given issue or pull request. + A readable representation of the actor's location """ - COMMENT_DELETED_EVENT + actorLocation: ActorLocation """ - Represents a 'converted_note_to_issue' event on a given issue or pull request. + The username of the user who initiated the action """ - CONVERTED_NOTE_TO_ISSUE_EVENT + actorLogin: String """ - Represents a mention made by one issue or pull request to another. + The HTTP path for the actor. """ - CROSS_REFERENCED_EVENT + actorResourcePath: URI """ - Represents a 'demilestoned' event on a given issue or pull request. + The HTTP URL for the actor. """ - DEMILESTONED_EVENT + actorUrl: URI """ - Represents a 'deployed' event on a given pull request. + The time the action was initiated """ - DEPLOYED_EVENT + createdAt: PreciseDateTime! + id: ID! """ - Represents a 'deployment_environment_changed' event on a given pull request. + The corresponding operation type for the action """ - DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT + operationType: OperationType """ - Represents a 'head_ref_deleted' event on a given pull request. + The Organization associated with the Audit Entry. """ - HEAD_REF_DELETED_EVENT + organization: Organization """ - Represents a 'head_ref_force_pushed' event on a given pull request. + The name of the Organization. """ - HEAD_REF_FORCE_PUSHED_EVENT + organizationName: String """ - Represents a 'head_ref_restored' event on a given pull request. + The HTTP path for the organization """ - HEAD_REF_RESTORED_EVENT + organizationResourcePath: URI """ - Represents a comment on an Issue. + The HTTP URL for the organization """ - ISSUE_COMMENT + organizationUrl: URI """ - Represents a 'labeled' event on a given issue or pull request. + The repository associated with the action """ - LABELED_EVENT + repository: Repository """ - Represents a 'locked' event on a given issue or pull request. + The name of the repository """ - LOCKED_EVENT + repositoryName: String """ - Represents a 'marked_as_duplicate' event on a given issue or pull request. + The HTTP path for the repository """ - MARKED_AS_DUPLICATE_EVENT + repositoryResourcePath: URI """ - Represents a 'mentioned' event on a given issue or pull request. + The HTTP URL for the repository """ - MENTIONED_EVENT + repositoryUrl: URI """ - Represents a 'merged' event on a given pull request. + The user affected by the action """ - MERGED_EVENT + user: User """ - Represents a 'milestoned' event on a given issue or pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - MILESTONED_EVENT + userLogin: String """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. + The HTTP path for the user. """ - MOVED_COLUMNS_IN_PROJECT_EVENT + userResourcePath: URI """ - Represents a 'pinned' event on a given issue or pull request. + The HTTP URL for the user. """ - PINNED_EVENT + userUrl: URI +} +""" +Audit log entry for a repo.config.lock_anonymous_git_access event. +""" +type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents a Git commit part of a pull request. + The action name """ - PULL_REQUEST_COMMIT + action: String! """ - Represents a commit comment thread part of a pull request. + The user who initiated the action """ - PULL_REQUEST_COMMIT_COMMENT_THREAD + actor: AuditEntryActor """ - A review object for a given pull request. + The IP address of the actor """ - PULL_REQUEST_REVIEW + actorIp: String """ - A threaded list of comments for a given pull request. + A readable representation of the actor's location """ - PULL_REQUEST_REVIEW_THREAD + actorLocation: ActorLocation """ - Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. + The username of the user who initiated the action """ - PULL_REQUEST_REVISION_MARKER + actorLogin: String """ - Represents a 'ready_for_review' event on a given pull request. + The HTTP path for the actor. """ - READY_FOR_REVIEW_EVENT + actorResourcePath: URI """ - Represents a 'referenced' event on a given `ReferencedSubject`. + The HTTP URL for the actor. """ - REFERENCED_EVENT + actorUrl: URI """ - Represents a 'removed_from_project' event on a given issue or pull request. + The time the action was initiated """ - REMOVED_FROM_PROJECT_EVENT + createdAt: PreciseDateTime! + id: ID! """ - Represents a 'renamed' event on a given issue or pull request + The corresponding operation type for the action """ - RENAMED_TITLE_EVENT + operationType: OperationType """ - Represents a 'reopened' event on any `Closable`. + The Organization associated with the Audit Entry. """ - REOPENED_EVENT + organization: Organization """ - Represents a 'review_dismissed' event on a given issue or pull request. + The name of the Organization. """ - REVIEW_DISMISSED_EVENT + organizationName: String """ - Represents an 'review_requested' event on a given pull request. + The HTTP path for the organization """ - REVIEW_REQUESTED_EVENT + organizationResourcePath: URI """ - Represents an 'review_request_removed' event on a given pull request. + The HTTP URL for the organization """ - REVIEW_REQUEST_REMOVED_EVENT + organizationUrl: URI """ - Represents a 'subscribed' event on a given `Subscribable`. + The repository associated with the action """ - SUBSCRIBED_EVENT + repository: Repository """ - Represents a 'transferred' event on a given issue or pull request. + The name of the repository """ - TRANSFERRED_EVENT + repositoryName: String """ - Represents an 'unassigned' event on any assignable object. + The HTTP path for the repository """ - UNASSIGNED_EVENT + repositoryResourcePath: URI """ - Represents an 'unlabeled' event on a given issue or pull request. + The HTTP URL for the repository """ - UNLABELED_EVENT + repositoryUrl: URI """ - Represents an 'unlocked' event on a given issue or pull request. + The user affected by the action """ - UNLOCKED_EVENT + user: User """ - Represents an 'unpinned' event on a given issue or pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - UNPINNED_EVENT + userLogin: String """ - Represents an 'unsubscribed' event on a given `Subscribable`. + The HTTP path for the user. """ - UNSUBSCRIBED_EVENT + userResourcePath: URI """ - Represents a 'user_blocked' event on a given user. + The HTTP URL for the user. """ - USER_BLOCKED_EVENT + userUrl: URI } """ -A Git push. +Audit log entry for a repo.config.unlock_anonymous_git_access event. """ -type Push implements Node @preview(toggledBy: "antiope-preview") { - id: ID! +type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { + """ + The action name + """ + action: String! """ - The SHA after the push + The user who initiated the action """ - nextSha: GitObjectID + actor: AuditEntryActor """ - The permalink for this push. + The IP address of the actor """ - permalink: URI! + actorIp: String """ - The SHA before the push + A readable representation of the actor's location """ - previousSha: GitObjectID + actorLocation: ActorLocation """ - The user who pushed + The username of the user who initiated the action """ - pusher: User! + actorLogin: String """ - The repository that was pushed to + The HTTP path for the actor. """ - repository: Repository! -} + actorResourcePath: URI -""" -A team, user or app who has the ability to push to a protected branch. -""" -type PushAllowance implements Node { """ - The actor that can push. + The HTTP URL for the actor. """ - actor: PushAllowanceActor + actorUrl: URI """ - Identifies the branch protection rule associated with the allowed user or team. + The time the action was initiated """ - branchProtectionRule: BranchProtectionRule + createdAt: PreciseDateTime! id: ID! -} - -""" -Types that can be an actor. -""" -union PushAllowanceActor = App | Team | User -""" -The connection type for PushAllowance. -""" -type PushAllowanceConnection { """ - A list of edges. + The corresponding operation type for the action """ - edges: [PushAllowanceEdge] + operationType: OperationType """ - A list of nodes. + The Organization associated with the Audit Entry. """ - nodes: [PushAllowance] + organization: Organization """ - Information to aid in pagination. + The name of the Organization. """ - pageInfo: PageInfo! + organizationName: String """ - Identifies the total count of items in the connection. + The HTTP path for the organization """ - totalCount: Int! -} + organizationResourcePath: URI -""" -An edge in a connection. -""" -type PushAllowanceEdge { """ - A cursor for use in pagination. + The HTTP URL for the organization """ - cursor: String! + organizationUrl: URI """ - The item at the end of the edge. + The repository associated with the action """ - node: PushAllowance -} + repository: Repository -""" -The query root of GitHub's GraphQL interface. -""" -type Query { """ - Look up a code of conduct by its key + The name of the repository """ - codeOfConduct( - """ - The code of conduct's key - """ - key: String! - ): CodeOfConduct + repositoryName: String """ - Look up a code of conduct by its key + The HTTP path for the repository """ - codesOfConduct: [CodeOfConduct] + repositoryResourcePath: URI """ - Look up an enterprise by URL slug. + The HTTP URL for the repository """ - enterprise( - """ - The enterprise invitation token. - """ - invitationToken: String - - """ - The enterprise URL slug. - """ - slug: String! - ): Enterprise @preview(toggledBy: "enterprise-accounts-preview") + repositoryUrl: URI """ - Look up a pending enterprise administrator invitation by invitee, enterprise and role. + The user affected by the action """ - enterpriseAdministratorInvitation( - """ - The slug of the enterprise the user was invited to join. - """ - enterpriseSlug: String! - - """ - The role for the business member invitation. - """ - role: EnterpriseAdministratorRole! - - """ - The login of the user invited to join the business. - """ - userLogin: String! - ): EnterpriseAdministratorInvitation @preview(toggledBy: "enterprise-accounts-preview") + user: User """ - Look up a pending enterprise administrator invitation by invitation token. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - enterpriseAdministratorInvitationByToken( - """ - The invitation token sent with the invitation email. - """ - invitationToken: String! - ): EnterpriseAdministratorInvitation @preview(toggledBy: "enterprise-accounts-preview") + userLogin: String """ - Look up an open source license by its key + The HTTP path for the user. """ - license( - """ - The license's downcased SPDX ID - """ - key: String! - ): License + userResourcePath: URI """ - Return a list of known open source licenses + The HTTP URL for the user. """ - licenses: [License]! + userUrl: URI +} +""" +Audit log entry for a repo.create event. +""" +type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Get alphabetically sorted list of Marketplace categories + The action name """ - marketplaceCategories( - """ - Exclude categories with no listings. - """ - excludeEmpty: Boolean - - """ - Returns top level categories only, excluding any subcategories. - """ - excludeSubcategories: Boolean - - """ - Return only the specified categories. - """ - includeCategories: [String!] - ): [MarketplaceCategory!]! + action: String! """ - Look up a Marketplace category by its slug. + The user who initiated the action """ - marketplaceCategory( - """ - The URL slug of the category. - """ - slug: String! - - """ - Also check topic aliases for the category slug - """ - useTopicAliases: Boolean - ): MarketplaceCategory + actor: AuditEntryActor """ - Look up a single Marketplace listing + The IP address of the actor """ - marketplaceListing( - """ - Select the listing that matches this slug. It's the short name of the listing used in its URL. - """ - slug: String! - ): MarketplaceListing + actorIp: String """ - Look up Marketplace listings + A readable representation of the actor's location """ - marketplaceListings( - """ - Select listings that can be administered by the specified user. - """ - adminId: ID - - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Select listings visible to the viewer even if they are not approved. If omitted or - false, only approved listings will be returned. - """ - allStates: Boolean - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Select only listings with the given category. - """ - categorySlug: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Select listings for products owned by the specified organization. - """ - organizationId: ID - - """ - Select only listings where the primary category matches the given category slug. - """ - primaryCategoryOnly: Boolean = false - - """ - Select the listings with these slugs, if they are visible to the viewer. - """ - slugs: [String] - - """ - Also check topic aliases for the category slug - """ - useTopicAliases: Boolean - - """ - Select listings to which user has admin access. If omitted, listings visible to the - viewer are returned. - """ - viewerCanAdmin: Boolean - - """ - Select only listings that offer a free trial. - """ - withFreeTrialsOnly: Boolean = false - ): MarketplaceListingConnection! + actorLocation: ActorLocation """ - Return information about the GitHub instance + The username of the user who initiated the action """ - meta: GitHubMetadata! + actorLogin: String """ - Fetches an object given its ID. + The HTTP path for the actor. """ - node( - """ - ID of the object. - """ - id: ID! - ): Node + actorResourcePath: URI """ - Lookup nodes by a list of IDs. + The HTTP URL for the actor. """ - nodes( - """ - The list of node IDs. - """ - ids: [ID!]! - ): [Node]! + actorUrl: URI """ - Lookup a organization by login. + The time the action was initiated """ - organization( - """ - The organization's login. - """ - login: String! - ): Organization + createdAt: PreciseDateTime! """ - The client's rate limit information. + The name of the parent repository for this forked repository. """ - rateLimit( - """ - If true, calculate the cost for the query without evaluating it - """ - dryRun: Boolean = false - ): RateLimit + forkParentName: String """ - Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object + The name of the root repository for this network. """ - relay: Query! + forkSourceName: String + id: ID! """ - Lookup a given repository by the owner and repository name. + The corresponding operation type for the action """ - repository( - """ - The name of the repository - """ - name: String! - - """ - The login field of a user or organization - """ - owner: String! - ): Repository + operationType: OperationType """ - Lookup a repository owner (ie. either a User or an Organization) by login. + The Organization associated with the Audit Entry. """ - repositoryOwner( - """ - The username to lookup the owner by. - """ - login: String! - ): RepositoryOwner + organization: Organization """ - Lookup resource by a URL. + The name of the Organization. """ - resource( - """ - The URL. - """ - url: URI! - ): UniformResourceLocatable + organizationName: String """ - Perform a search across resources. + The HTTP path for the organization """ - search( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - The search string to look for. - """ - query: String! - - """ - The types of search items to search within. - """ - type: SearchType! - ): SearchResultItemConnection! + organizationResourcePath: URI """ - GitHub Security Advisories + The HTTP URL for the organization """ - securityAdvisories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Filter advisories by identifier, e.g. GHSA or CVE. - """ - identifier: SecurityAdvisoryIdentifierFilter - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for the returned topics. - """ - orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} - - """ - Filter advisories to those published since a time in the past. - """ - publishedSince: DateTime - - """ - Filter advisories to those updated since a time in the past. - """ - updatedSince: DateTime - ): SecurityAdvisoryConnection! + organizationUrl: URI """ - Fetch a Security Advisory by its GHSA ID + The repository associated with the action """ - securityAdvisory( - """ - GitHub Security Advisory ID. - """ - ghsaId: String! - ): SecurityAdvisory + repository: Repository """ - Software Vulnerabilities documented by GitHub Security Advisories + The name of the repository """ - securityVulnerabilities( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - An ecosystem to filter vulnerabilities by. - """ - ecosystem: SecurityAdvisoryEcosystem - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int + repositoryName: String - """ - Ordering options for the returned topics. - """ - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + """ + The HTTP path for the repository + """ + repositoryResourcePath: URI - """ - A package name to filter vulnerabilities by. - """ - package: String + """ + The HTTP URL for the repository + """ + repositoryUrl: URI - """ - A list of severities to filter vulnerabilities by. - """ - severities: [SecurityAdvisorySeverity!] - ): SecurityVulnerabilityConnection! + """ + The user affected by the action + """ + user: User """ - Look up a single Sponsors Listing + For actions involving two users, the actor is the initiator and the user is the affected user. """ - sponsorsListing( - """ - Select the Sponsors listing which matches this slug - """ - slug: String! - ): SponsorsListing + userLogin: String """ - Look up a topic by name. + The HTTP path for the user. """ - topic( - """ - The topic's name. - """ - name: String! - ): Topic + userResourcePath: URI """ - Lookup a user by login. + The HTTP URL for the user. """ - user( - """ - The user's login. - """ - login: String! - ): User + userUrl: URI """ - The currently authenticated user. + The visibility of the repository """ - viewer: User! + visibility: RepoCreateAuditEntryVisibility } """ -Represents the client's rate limit. +The privacy of a repository """ -type RateLimit { +enum RepoCreateAuditEntryVisibility { """ - The point cost for the current query counting against the rate limit. + The repository is visible only to users in the same business. """ - cost: Int! + INTERNAL """ - The maximum number of points the client is permitted to consume in a 60 minute window. + The repository is visible only to those with explicit access. """ - limit: Int! + PRIVATE """ - The maximum number of nodes this query may return + The repository is visible to everyone. """ - nodeCount: Int! + PUBLIC +} +""" +Audit log entry for a repo.destroy event. +""" +type RepoDestroyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The number of points remaining in the current rate limit window. + The action name """ - remaining: Int! + action: String! """ - The time at which the current rate limit window resets in UTC epoch seconds. + The user who initiated the action """ - resetAt: DateTime! -} + actor: AuditEntryActor -""" -Represents a subject that can be reacted on. -""" -interface Reactable { """ - Identifies the primary key from the database. + The IP address of the actor """ - databaseId: Int - id: ID! + actorIp: String """ - A list of reactions grouped by content left on the subject. + A readable representation of the actor's location """ - reactionGroups: [ReactionGroup!] + actorLocation: ActorLocation """ - A list of Reactions left on the Issue. + The username of the user who initiated the action """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + actorLogin: String """ - Can user react to this subject + The HTTP path for the actor. """ - viewerCanReact: Boolean! -} + actorResourcePath: URI -""" -The connection type for User. -""" -type ReactingUserConnection { """ - A list of edges. + The HTTP URL for the actor. """ - edges: [ReactingUserEdge] + actorUrl: URI """ - A list of nodes. + The time the action was initiated """ - nodes: [User] + createdAt: PreciseDateTime! + id: ID! """ - Information to aid in pagination. + The corresponding operation type for the action """ - pageInfo: PageInfo! + operationType: OperationType """ - Identifies the total count of items in the connection. + The Organization associated with the Audit Entry. """ - totalCount: Int! -} + organization: Organization -""" -Represents a user that's made a reaction. -""" -type ReactingUserEdge { """ - A cursor for use in pagination. + The name of the Organization. """ - cursor: String! - node: User! + organizationName: String """ - The moment when the user made the reaction. + The HTTP path for the organization """ - reactedAt: DateTime! -} + organizationResourcePath: URI -""" -An emoji reaction to a particular piece of content. -""" -type Reaction implements Node { """ - Identifies the emoji reaction. + The HTTP URL for the organization """ - content: ReactionContent! + organizationUrl: URI """ - Identifies the date and time when the object was created. + The repository associated with the action """ - createdAt: DateTime! + repository: Repository """ - Identifies the primary key from the database. + The name of the repository """ - databaseId: Int - id: ID! + repositoryName: String """ - The reactable piece of content + The HTTP path for the repository """ - reactable: Reactable! + repositoryResourcePath: URI """ - Identifies the user who created this reaction. + The HTTP URL for the repository """ - user: User -} + repositoryUrl: URI -""" -A list of reactions that have been left on the subject. -""" -type ReactionConnection { """ - A list of edges. + The user affected by the action """ - edges: [ReactionEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [Reaction] + userLogin: String """ - Information to aid in pagination. + The HTTP path for the user. """ - pageInfo: PageInfo! + userResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the user. """ - totalCount: Int! + userUrl: URI """ - Whether or not the authenticated user has left a reaction on the subject. + The visibility of the repository """ - viewerHasReacted: Boolean! + visibility: RepoDestroyAuditEntryVisibility } """ -Emojis that can be attached to Issues, Pull Requests and Comments. +The privacy of a repository """ -enum ReactionContent { +enum RepoDestroyAuditEntryVisibility { """ - Represents the `:confused:` emoji. + The repository is visible only to users in the same business. """ - CONFUSED + INTERNAL """ - Represents the `:eyes:` emoji. + The repository is visible only to those with explicit access. """ - EYES + PRIVATE """ - Represents the `:heart:` emoji. + The repository is visible to everyone. """ - HEART + PUBLIC +} +""" +Audit log entry for a repo.remove_member event. +""" +type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents the `:hooray:` emoji. + The action name """ - HOORAY + action: String! """ - Represents the `:laugh:` emoji. + The user who initiated the action """ - LAUGH + actor: AuditEntryActor """ - Represents the `:rocket:` emoji. + The IP address of the actor """ - ROCKET + actorIp: String """ - Represents the `:-1:` emoji. + A readable representation of the actor's location """ - THUMBS_DOWN + actorLocation: ActorLocation """ - Represents the `:+1:` emoji. + The username of the user who initiated the action """ - THUMBS_UP -} + actorLogin: String -""" -An edge in a connection. -""" -type ReactionEdge { """ - A cursor for use in pagination. + The HTTP path for the actor. """ - cursor: String! + actorResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the actor. """ - node: Reaction -} + actorUrl: URI -""" -A group of emoji reactions to a particular piece of content. -""" -type ReactionGroup { """ - Identifies the emoji reaction. + The time the action was initiated """ - content: ReactionContent! + createdAt: PreciseDateTime! + id: ID! """ - Identifies when the reaction was created. + The corresponding operation type for the action """ - createdAt: DateTime + operationType: OperationType """ - The subject that was reacted to. + The Organization associated with the Audit Entry. """ - subject: Reactable! + organization: Organization """ - Users who have reacted to the reaction subject with the emotion represented by this reaction group + The name of the Organization. """ - users( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + organizationName: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP path for the organization + """ + organizationResourcePath: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ReactingUserConnection! + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - Whether or not the authenticated user has left a reaction on the subject. + The repository associated with the action """ - viewerHasReacted: Boolean! -} + repository: Repository -""" -Ways in which lists of reactions can be ordered upon return. -""" -input ReactionOrder { """ - The direction in which to order reactions by the specified field. + The name of the repository """ - direction: OrderDirection! + repositoryName: String """ - The field in which to order reactions by. + The HTTP path for the repository """ - field: ReactionOrderField! -} + repositoryResourcePath: URI -""" -A list of fields that reactions can be ordered by. -""" -enum ReactionOrderField { """ - Allows ordering a list of reactions by when they were created. + The HTTP URL for the repository """ - CREATED_AT -} + repositoryUrl: URI -""" -Represents a 'ready_for_review' event on a given pull request. -""" -type ReadyForReviewEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + The user affected by the action """ - actor: Actor + user: User """ - Identifies the date and time when the object was created. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - createdAt: DateTime! - id: ID! + userLogin: String """ - PullRequest referenced by event. + The HTTP path for the user. """ - pullRequest: PullRequest! + userResourcePath: URI """ - The HTTP path for this ready for review event. + The HTTP URL for the user. """ - resourcePath: URI! + userUrl: URI """ - The HTTP URL for this ready for review event. + The visibility of the repository """ - url: URI! + visibility: RepoRemoveMemberAuditEntryVisibility } """ -Represents a Git reference. +The privacy of a repository """ -type Ref implements Node { +enum RepoRemoveMemberAuditEntryVisibility { """ - A list of pull requests with this ref as the head ref. + The repository is visible only to users in the same business. """ - associatedPullRequests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - The base ref name to filter the pull requests by. - """ - baseRefName: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - The head ref name to filter the pull requests by. - """ - headRefName: String + INTERNAL - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] + """ + The repository is visible only to those with explicit access. + """ + PRIVATE - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The repository is visible to everyone. + """ + PUBLIC +} - """ - Ordering options for pull requests returned from the connection. - """ - orderBy: IssueOrder +""" +Audit log entry for a repo.remove_topic event. +""" +type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { + """ + The action name + """ + action: String! - """ - A list of states to filter the pull requests by. - """ - states: [PullRequestState!] - ): PullRequestConnection! - id: ID! + """ + The user who initiated the action + """ + actor: AuditEntryActor """ - The ref name. + The IP address of the actor """ - name: String! + actorIp: String """ - The ref's prefix, such as `refs/heads/` or `refs/tags/`. + A readable representation of the actor's location """ - prefix: String! + actorLocation: ActorLocation """ - The repository the ref belongs to. + The username of the user who initiated the action """ - repository: Repository! + actorLogin: String """ - The object the ref points to. + The HTTP path for the actor. """ - target: GitObject! -} + actorResourcePath: URI -""" -The connection type for Ref. -""" -type RefConnection { """ - A list of edges. + The HTTP URL for the actor. """ - edges: [RefEdge] + actorUrl: URI """ - A list of nodes. + The time the action was initiated """ - nodes: [Ref] + createdAt: PreciseDateTime! + id: ID! """ - Information to aid in pagination. + The corresponding operation type for the action """ - pageInfo: PageInfo! + operationType: OperationType """ - Identifies the total count of items in the connection. + The Organization associated with the Audit Entry. """ - totalCount: Int! -} + organization: Organization -""" -An edge in a connection. -""" -type RefEdge { """ - A cursor for use in pagination. + The name of the Organization. """ - cursor: String! + organizationName: String """ - The item at the end of the edge. + The HTTP path for the organization """ - node: Ref -} + organizationResourcePath: URI -""" -Ways in which lists of git refs can be ordered upon return. -""" -input RefOrder { """ - The direction in which to order refs by the specified field. + The HTTP URL for the organization """ - direction: OrderDirection! + organizationUrl: URI """ - The field in which to order refs by. + The repository associated with the action """ - field: RefOrderField! -} + repository: Repository -""" -Properties by which ref connections can be ordered. -""" -enum RefOrderField { """ - Order refs by their alphanumeric name + The name of the repository """ - ALPHABETICAL + repositoryName: String """ - Order refs by underlying commit date if the ref prefix is refs/tags/ + The HTTP path for the repository """ - TAG_COMMIT_DATE -} + repositoryResourcePath: URI -""" -Represents a 'referenced' event on a given `ReferencedSubject`. -""" -type ReferencedEvent implements Node { """ - Identifies the actor who performed the event. + The HTTP URL for the repository """ - actor: Actor + repositoryUrl: URI """ - Identifies the commit associated with the 'referenced' event. + The name of the topic added to the repository """ - commit: Commit + topic: Topic """ - Identifies the repository associated with the 'referenced' event. + The name of the topic added to the repository """ - commitRepository: Repository! + topicName: String """ - Identifies the date and time when the object was created. + The user affected by the action """ - createdAt: DateTime! - id: ID! + user: User """ - Reference originated in a different repository. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - isCrossRepository: Boolean! + userLogin: String """ - Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. + The HTTP path for the user. """ - isDirectReference: Boolean! + userResourcePath: URI """ - Object referenced by event. + The HTTP URL for the user. """ - subject: ReferencedSubject! + userUrl: URI } """ -Any referencable object -""" -union ReferencedSubject = Issue | PullRequest - -""" -Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes +The reasons a piece of content can be reported or minimized. """ -input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { +enum ReportedContentClassifiers { """ - A unique identifier for the client performing the mutation. + An abusive or harassing piece of content """ - clientMutationId: String + ABUSE """ - The ID of the enterprise on which to set an identity provider. + A duplicated piece of content """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) -} + DUPLICATE -""" -Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { """ - A unique identifier for the client performing the mutation. + An irrelevant piece of content """ - clientMutationId: String + OFF_TOPIC """ - The identity provider for the enterprise. + An outdated piece of content """ - identityProvider: EnterpriseIdentityProvider @preview(toggledBy: "enterprise-accounts-preview") -} + OUTDATED -""" -A registry package contains the content for an uploaded package. -""" -type RegistryPackage implements Node { """ - The package type color + The content has been resolved """ - color: String! - id: ID! + RESOLVED """ - Find the latest version for the package. + A spammy piece of content """ - latestVersion: RegistryPackageVersion + SPAM +} +""" +A repository contains the content for a project. +""" +type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable { """ - Identifies the title of the package. + Whether or not a pull request head branch that is behind its base branch can + always be updated even if it is not required to be up to date before merging. """ - name: String! + allowUpdateBranch: Boolean! """ - Identifies the title of the package, with the owner prefixed. + A list of users that can be assigned to issues in this repository. """ - nameWithOwner: String! + assignableUsers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Find the package file identified by the guid. - """ - packageFileByGuid( """ - The unique identifier of the package_file + Returns the first _n_ elements from the list. """ - guid: String! - ): RegistryPackageFile + first: Int - """ - Find the package file identified by the sha256. - """ - packageFileBySha256( """ - The SHA256 of the package_file + Returns the last _n_ elements from the list. + """ + last: Int + """ - sha256: String! - ): RegistryPackageFile + Filters users with query on user name and login + """ + query: String + ): UserConnection! """ - Identifies the type of the package. + Whether or not Auto-merge can be enabled on pull requests in this repository. """ - packageType: RegistryPackageType! + autoMergeAllowed: Boolean! """ - List the prerelease versions for this package. + A list of branch protection rules for this repository. """ - preReleaseVersions( + branchProtectionRules( """ Returns the elements in the list that come after the specified cursor. """ @@ -23152,27 +39806,32 @@ type RegistryPackage implements Node { Returns the last _n_ elements from the list. """ last: Int - ): RegistryPackageVersionConnection + ): BranchProtectionRuleConnection! """ - The type of the package. + Returns the code of conduct for this repository """ - registryPackageType: String + codeOfConduct: CodeOfConduct """ - repository that the release is associated with + Information extracted from the repository's `CODEOWNERS` file. """ - repository: Repository + codeowners( + """ + The ref name used to return the associated `CODEOWNERS` file. + """ + refName: String + ): RepositoryCodeowners """ - Statistics about package activity. + A list of collaborators associated with the repository. """ - statistics: RegistryPackageStatistics + collaborators( + """ + Collaborators affiliation level with a repository. + """ + affiliation: CollaboratorAffiliation - """ - list of tags for this package - """ - tags( """ Returns the elements in the list that come after the specified cursor. """ @@ -23192,12 +39851,17 @@ type RegistryPackage implements Node { Returns the last _n_ elements from the list. """ last: Int - ): RegistryPackageTagConnection! + + """ + Filters users with query on user name and login + """ + query: String + ): RepositoryCollaboratorConnection """ - List the topics for this package. + A list of commit comments associated with the repository. """ - topics( + commitComments( """ Returns the elements in the list that come after the specified cursor. """ @@ -23217,47 +39881,77 @@ type RegistryPackage implements Node { Returns the last _n_ elements from the list. """ last: Int - ): TopicConnection + ): CommitCommentConnection! """ - Find package version by version string. + Returns a list of contact links associated to the repository """ - version( - """ - The package version. - """ - version: String! - ): RegistryPackageVersion + contactLinks: [RepositoryContactLink!] """ - Find package version by version string. + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. """ - versionByPlatform( + databaseId: Int + + """ + The Ref associated with the repository's default branch. + """ + defaultBranchRef: Ref + + """ + Whether or not branches are automatically deleted when merged in this repository. + """ + deleteBranchOnMerge: Boolean! + + """ + A list of dependency manifests contained in the repository + """ + dependencyGraphManifests( + """ + Returns the elements in the list that come after the specified cursor. """ - Find a registry package for a specific platform. + after: String + + """ + Returns the elements in the list that come before the specified cursor. """ - platform: String! + before: String """ - The package version. + Cursor to paginate dependencies """ - version: String! - ): RegistryPackageVersion + dependenciesAfter: String + + """ + Number of dependencies to fetch + """ + dependenciesFirst: Int - """ - Find package version by manifest SHA256. - """ - versionBySha256( """ - The package SHA256 digest. + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Flag to scope to only manifests with dependencies """ - sha256: String! - ): RegistryPackageVersion + withDependencies: Boolean + ): DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview") """ - list of versions for this package + A list of deploy keys that are on this repository. """ - versions( + deployKeys( """ Returns the elements in the list that come after the specified cursor. """ @@ -23277,12 +39971,12 @@ type RegistryPackage implements Node { Returns the last _n_ elements from the list. """ last: Int - ): RegistryPackageVersionConnection! + ): DeployKeyConnection! """ - List package versions with a specific metadatum. + Deployments associated with the repository """ - versionsByMetadatum( + deployments( """ Returns the elements in the list that come after the specified cursor. """ @@ -23293,6 +39987,11 @@ type RegistryPackage implements Node { """ before: String + """ + Environments to list deployments for + """ + environments: [String!] + """ Returns the first _n_ elements from the list. """ @@ -23304,274 +40003,430 @@ type RegistryPackage implements Node { last: Int """ - Filter on a specific metadatum. + Ordering options for deployments returned from the connection. """ - metadatum: RegistryPackageMetadatum! - ): RegistryPackageVersionConnection -} + orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} + ): DeploymentConnection! -""" -The connection type for RegistryPackage. -""" -type RegistryPackageConnection { """ - A list of edges. + The description of the repository. """ - edges: [RegistryPackageEdge] + description: String """ - A list of nodes. + The description of the repository rendered to HTML. """ - nodes: [RegistryPackage] + descriptionHTML: HTML! """ - Information to aid in pagination. + Returns a single discussion from the current repository by number. """ - pageInfo: PageInfo! + discussion( + """ + The number for the discussion to be returned. + """ + number: Int! + ): Discussion """ - Identifies the total count of items in the connection. + A list of discussion categories that are available in the repository. """ - totalCount: Int! -} + discussionCategories( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -A package dependency contains the information needed to satisfy a dependency. -""" -type RegistryPackageDependency implements Node { - """ - Identifies the type of dependency. - """ - dependencyType: RegistryPackageDependencyType! - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies the name of the dependency. - """ - name: String! + """ + Filter by categories that are assignable by the viewer. + """ + filterByAssignable: Boolean = false + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DiscussionCategoryConnection! """ - Identifies the version of the dependency. + A discussion category by slug. """ - version: String! -} + discussionCategory( + """ + The slug of the discussion category to be returned. + """ + slug: String! + ): DiscussionCategory -""" -The connection type for RegistryPackageDependency. -""" -type RegistryPackageDependencyConnection { """ - A list of edges. + A list of discussions that have been opened in the repository. """ - edges: [RegistryPackageDependencyEdge] + discussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Only include discussions that belong to the category with this ID. + """ + categoryId: ID = null + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: UPDATED_AT, direction: DESC} + ): DiscussionConnection! """ - A list of nodes. + The number of kilobytes this repository occupies on disk. """ - nodes: [RegistryPackageDependency] + diskUsage: Int """ - Information to aid in pagination. + Returns a single active environment from the current repository by name. """ - pageInfo: PageInfo! + environment( + """ + The name of the environment to be returned. + """ + name: String! + ): Environment """ - Identifies the total count of items in the connection. + A list of environments that are in this repository. """ - totalCount: Int! -} + environments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): EnvironmentConnection! -""" -An edge in a connection. -""" -type RegistryPackageDependencyEdge { """ - A cursor for use in pagination. + Returns how many forks there are of this repository in the whole network. """ - cursor: String! + forkCount: Int! """ - The item at the end of the edge. + Whether this repository allows forks. """ - node: RegistryPackageDependency -} + forkingAllowed: Boolean! -""" -The possible types of a registry package dependency. -""" -enum RegistryPackageDependencyType { """ - An optional registry package dependency type. + A list of direct forked repositories. """ - BUNDLED + forks( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder + + """ + Array of owner's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + organization or user being viewed owns. + """ + ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - A default registry package dependency type. + The funding links for this repository """ - DEFAULT + fundingLinks: [FundingLink!]! """ - A dev registry package dependency type. + Indicates if the repository has the Discussions feature enabled. """ - DEV + hasDiscussionsEnabled: Boolean! """ - An optional registry package dependency type. + Indicates if the repository has issues feature enabled. """ - OPTIONAL + hasIssuesEnabled: Boolean! """ - A peer registry package dependency type. + Indicates if the repository has the Projects feature enabled. """ - PEER + hasProjectsEnabled: Boolean! """ - A test registry package dependency type. + Whether vulnerability alerts are enabled for the repository. """ - TEST -} + hasVulnerabilityAlertsEnabled: Boolean! -""" -An edge in a connection. -""" -type RegistryPackageEdge { """ - A cursor for use in pagination. + Indicates if the repository has wiki feature enabled. """ - cursor: String! + hasWikiEnabled: Boolean! """ - The item at the end of the edge. + The repository's URL. """ - node: RegistryPackage -} + homepageUrl: URI + id: ID! -""" -A file in a specific registry package version. -""" -type RegistryPackageFile implements Node { """ - A unique identifier for this file. + The interaction ability settings for this repository. """ - guid: String - id: ID! + interactionAbility: RepositoryInteractionAbility """ - Identifies the md5. + Indicates if the repository is unmaintained. """ - md5: String + isArchived: Boolean! """ - URL to download the asset metadata. + Returns true if blank issue creation is allowed """ - metadataUrl: URI! + isBlankIssuesEnabled: Boolean! """ - Name of the file + Returns whether or not this repository disabled. """ - name: String! + isDisabled: Boolean! """ - The package version this file belongs to. + Returns whether or not this repository is empty. """ - packageVersion: RegistryPackageVersion! + isEmpty: Boolean! """ - Identifies the sha1. + Identifies if the repository is a fork. """ - sha1: String + isFork: Boolean! """ - Identifies the sha256. + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. """ - sha256: String + isInOrganization: Boolean! """ - Identifies the size. + Indicates if the repository has been locked or not. """ - size: Int + isLocked: Boolean! """ - Identifies the date and time when the object was last updated. + Identifies if the repository is a mirror. """ - updatedAt: DateTime! + isMirror: Boolean! """ - URL to download the asset. + Identifies if the repository is private or internal. """ - url: URI! -} + isPrivate: Boolean! -""" -The connection type for RegistryPackageFile. -""" -type RegistryPackageFileConnection { """ - A list of edges. + Returns true if this repository has a security policy """ - edges: [RegistryPackageFileEdge] + isSecurityPolicyEnabled: Boolean """ - A list of nodes. + Identifies if the repository is a template that can be used to generate new repositories. """ - nodes: [RegistryPackageFile] + isTemplate: Boolean! """ - Information to aid in pagination. + Is this repository a user configuration repository? """ - pageInfo: PageInfo! + isUserConfigurationRepository: Boolean! """ - Identifies the total count of items in the connection. + Returns a single issue from the current repository by number. """ - totalCount: Int! -} + issue( + """ + The number for the issue to be returned. + """ + number: Int! + ): Issue -""" -An edge in a connection. -""" -type RegistryPackageFileEdge { """ - A cursor for use in pagination. + Returns a single issue-like object from the current repository by number. """ - cursor: String! + issueOrPullRequest( + """ + The number for the issue to be returned. + """ + number: Int! + ): IssueOrPullRequest """ - The item at the end of the edge. + Returns a list of issue templates associated to the repository """ - node: RegistryPackageFile -} + issueTemplates: [IssueTemplate!] -""" -Represents a single registry metadatum -""" -input RegistryPackageMetadatum { """ - Name of the metadatum. + A list of issues that have been opened in the repository. """ - name: String! + issues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for issues returned from the connection. + """ + filterBy: IssueFilters + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issues returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! """ - True, if the metadatum can be updated if it already exists + Returns a single label by name """ - update: Boolean + label( + """ + Label name + """ + name: String! + ): Label """ - Value of the metadatum. + A list of labels associated with the repository. """ - value: String! -} + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Represents an owner of a registry package. -""" -interface RegistryPackageOwner { - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + + """ + If provided, searches labels by name and description. + """ + query: String + ): LabelConnection """ - A list of registry packages under the owner. + A list containing a breakdown of the language composition of the repository. """ - registryPackages( + languages( """ Returns the elements in the list that come after the specified cursor. """ @@ -23593,47 +40448,85 @@ interface RegistryPackageOwner { last: Int """ - Find registry package by name. + Order for connection """ - name: String + orderBy: LanguageOrder + ): LanguageConnection + + """ + Get the latest release for the repository if one exists. + """ + latestRelease: Release + + """ + The license associated with the repository + """ + licenseInfo: License + + """ + The reason the repository has been locked. + """ + lockReason: RepositoryLockReason + """ + A list of Users that can be mentioned in the context of the repository. + """ + mentionableUsers( """ - Find registry packages by their names. + Returns the elements in the list that come after the specified cursor. """ - names: [String] + after: String """ - Filter registry package by type. + Returns the elements in the list that come before the specified cursor. """ - packageType: RegistryPackageType + before: String """ - Filter registry package by whether it is publicly visible + Returns the first _n_ elements from the list. """ - publicOnly: Boolean = false + first: Int """ - Filter registry package by type (string). + Returns the last _n_ elements from the list. """ - registryPackageType: String + last: Int """ - Find registry packages in a repository. + Filters users with query on user name and login """ - repositoryId: ID - ): RegistryPackageConnection! -} + query: String + ): UserConnection! -""" -Represents an interface to search packages on an object. -""" -interface RegistryPackageSearch { - id: ID! + """ + Whether or not PRs are merged with a merge commit on this repository. + """ + mergeCommitAllowed: Boolean! + + """ + How the default commit message will be generated when merging a pull request. + """ + mergeCommitMessage: MergeCommitMessage! + + """ + How the default commit title will be generated when merging a pull request. + """ + mergeCommitTitle: MergeCommitTitle! + + """ + Returns a single milestone from the current repository by number. + """ + milestone( + """ + The number for the milestone to be returned. + """ + number: Int! + ): Milestone """ - A list of registry packages for a particular search query. + A list of milestones associated with the repository. """ - registryPackagesForQuery( + milestones( """ Returns the elements in the list that come after the specified cursor. """ @@ -23655,152 +40548,140 @@ interface RegistryPackageSearch { last: Int """ - Filter registry package by type. + Ordering options for milestones. """ - packageType: RegistryPackageType + orderBy: MilestoneOrder """ - Find registry package by search query. + Filters milestones with a query on the title """ query: String - ): RegistryPackageConnection! -} -""" -Represents a object that contains package activity statistics such as downloads. -""" -type RegistryPackageStatistics { - """ - Number of times the package was downloaded this month. - """ - downloadsThisMonth: Int! + """ + Filter by the state of the milestones. + """ + states: [MilestoneState!] + ): MilestoneConnection """ - Number of times the package was downloaded this week. + The repository's original mirror URL. """ - downloadsThisWeek: Int! + mirrorUrl: URI """ - Number of times the package was downloaded this year. + The name of the repository. """ - downloadsThisYear: Int! + name: String! """ - Number of times the package was downloaded today. + The repository's name with owner. """ - downloadsToday: Int! + nameWithOwner: String! """ - Number of times the package was downloaded since it was created. + A Git object in the repository """ - downloadsTotalCount: Int! -} + object( + """ + A Git revision expression suitable for rev-parse + """ + expression: String -""" -A version tag contains the mapping between a tag name and a version. -""" -type RegistryPackageTag implements Node { - id: ID! + """ + The Git object ID + """ + oid: GitObjectID + ): GitObject """ - Identifies the tag name of the version. + The image used to represent this repository in Open Graph data. """ - name: String! + openGraphImageUrl: URI! """ - version that the tag is associated with + The User owner of the repository. """ - version: RegistryPackageVersion -} + owner: RepositoryOwner! -""" -The connection type for RegistryPackageTag. -""" -type RegistryPackageTagConnection { """ - A list of edges. + A list of packages under the owner. """ - edges: [RegistryPackageTagEdge] + packages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A list of nodes. - """ - nodes: [RegistryPackageTag] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -An edge in a connection. -""" -type RegistryPackageTagEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Find packages by their names. + """ + names: [String] - """ - The item at the end of the edge. - """ - node: RegistryPackageTag -} + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} -""" -The possible types of a registry package. -""" -enum RegistryPackageType { - """ - A debian package. - """ - DEBIAN + """ + Filter registry package by type. + """ + packageType: PackageType - """ - A docker image. - """ - DOCKER + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! """ - A maven registry package. + The repository parent, if this is a fork. """ - MAVEN + parent: Repository """ - An npm registry package. + A list of discussions that have been pinned in this repository. """ - NPM + pinnedDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A nuget package. - """ - NUGET + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - A python package. - """ - PYTHON + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - A rubygems registry package. - """ - RUBYGEMS -} + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PinnedDiscussionConnection! -""" -A package version contains the information about a specific package version. -""" -type RegistryPackageVersion implements Node { """ - list of dependencies for this package + A list of pinned issues for this repository. """ - dependencies( + pinnedIssues( """ Returns the elements in the list that come after the specified cursor. """ @@ -23820,27 +40701,37 @@ type RegistryPackageVersion implements Node { Returns the last _n_ elements from the list. """ last: Int + ): PinnedIssueConnection + + """ + The primary language of the repository's code. + """ + primaryLanguage: Language + """ + Find project by number. + """ + project( """ - Find dependencies by type. + The project number to find. """ - type: RegistryPackageDependencyType - ): RegistryPackageDependencyConnection! + number: Int! + ): Project """ - A file associated with this registry package version + Finds and returns the Project according to the provided Project number. """ - fileByName( + projectV2( """ - A specific file to find. + The Project number. """ - filename: String! - ): RegistryPackageFile + number: Int! + ): ProjectV2 """ - List of files associated with this registry package version + A list of projects under the owner. """ - files( + projects( """ Returns the elements in the list that come after the specified cursor. """ @@ -23860,204 +40751,268 @@ type RegistryPackageVersion implements Node { Returns the last _n_ elements from the list. """ last: Int - ): RegistryPackageFileConnection! - id: ID! - """ - A single line of text to install this package version. - """ - installationCommand: String + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder - """ - Identifies the package manifest for this package version. - """ - manifest: String + """ + Query to search projects by, currently only searching by name. + """ + search: String - """ - Identifies the platform this version was built for. - """ - platform: String + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - Indicates whether this version is a pre-release. + The HTTP path listing the repository's projects """ - preRelease: Boolean! + projectsResourcePath: URI! """ - The README of this package version + The HTTP URL listing the repository's projects """ - readme: String + projectsUrl: URI! """ - The HTML README of this package version + List of projects linked to this repository. """ - readmeHtml: HTML + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Registry package associated with this version. - """ - registryPackage: RegistryPackage + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Release associated with this package. - """ - release: Release + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the sha256. - """ - sha256: String + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the size. - """ - size: Int + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} - """ - Statistics about package activity. - """ - statistics: RegistryPackageVersionStatistics + """ + A project to search for linked to the repo. + """ + query: String + ): ProjectV2Connection! """ - Identifies the package version summary. + Returns a single pull request from the current repository by number. """ - summary: String + pullRequest( + """ + The number for the pull request to be returned. + """ + number: Int! + ): PullRequest """ - Time at which the most recent file upload for this package version finished + Returns a list of pull request templates associated to the repository """ - updatedAt: DateTime! + pullRequestTemplates: [PullRequestTemplate!] """ - Identifies the version number. + A list of pull requests that have been opened in the repository. """ - version: String! + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Can the current viewer edit this Package version. - """ - viewerCanEdit: Boolean! -} + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String -""" -The connection type for RegistryPackageVersion. -""" -type RegistryPackageVersionConnection { - """ - A list of edges. - """ - edges: [RegistryPackageVersionEdge] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - A list of nodes. - """ - nodes: [RegistryPackageVersion] + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + The head ref name to filter the pull requests by. + """ + headRefName: String - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] -""" -An edge in a connection. -""" -type RegistryPackageVersionEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The item at the end of the edge. - """ - node: RegistryPackageVersion -} + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder -""" -Represents a object that contains package version activity statistics such as downloads. -""" -type RegistryPackageVersionStatistics { - """ - Number of times the package was downloaded this month. - """ - downloadsThisMonth: Int! + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! """ - Number of times the package was downloaded this week. + Identifies when the repository was last pushed to. """ - downloadsThisWeek: Int! + pushedAt: DateTime """ - Number of times the package was downloaded this year. + Whether or not rebase-merging is enabled on this repository. """ - downloadsThisYear: Int! + rebaseMergeAllowed: Boolean! """ - Number of times the package was downloaded today. + Recent projects that this user has modified in the context of the owner. """ - downloadsToday: Int! + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Number of times the package was downloaded since it was created. - """ - downloadsTotalCount: Int! -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -A release contains the content for a release. -""" -type Release implements Node & UniformResourceLocatable { - """ - The author of the release - """ - author: User + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! """ - The description of the release. + Fetch a given ref from the repository """ - description: String + ref( + """ + The ref to retrieve. Fully qualified matches are checked in order + (`refs/heads/master`) before falling back onto checks for short name matches (`master`). + """ + qualifiedName: String! + ): Ref """ - The description of this release rendered to HTML. + Fetch a list of refs from the repository """ - descriptionHTML: HTML - id: ID! + refs( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Whether or not the release is a draft - """ - isDraft: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Whether or not the release is a prerelease - """ - isPrerelease: Boolean! + """ + DEPRECATED: use orderBy. The ordering direction. + """ + direction: OrderDirection + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for refs returned from the connection. + """ + orderBy: RefOrder + + """ + Filters refs with query on name + """ + query: String + + """ + A ref name prefix like `refs/heads/`, `refs/tags/`, etc. + """ + refPrefix: String! + ): RefConnection """ - The title of the release. + Lookup a single release given various criteria. """ - name: String + release( + """ + The name of the Tag the Release was created from + """ + tagName: String! + ): Release """ - Identifies the date and time when the release was created. + List of releases which are dependent on this repository. """ - publishedAt: DateTime + releases( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Order for connection + """ + orderBy: ReleaseOrder + ): ReleaseConnection! """ - List of releases assets which are dependent on this release. + A list of applied repository-topic associations for this repository. """ - releaseAssets( + repositoryTopics( """ Returns the elements in the list that come after the specified cursor. """ @@ -24077,1307 +41032,1405 @@ type Release implements Node & UniformResourceLocatable { Returns the last _n_ elements from the list. """ last: Int - - """ - A list of names to filter the assets by. - """ - name: String - ): ReleaseAssetConnection! + ): RepositoryTopicConnection! """ - The HTTP path for this issue + The HTTP path for this repository """ resourcePath: URI! """ - A description of the release, rendered to HTML without any links in it. + The security policy URL. + """ + securityPolicyUrl: URI + + """ + A description of the repository, rendered to HTML without any links in it. """ shortDescriptionHTML( """ How many characters to return. """ limit: Int = 200 - ): HTML - - """ - The Git tag the release points to - """ - tag: Ref - - """ - The name of the release's Git tag - """ - tagName: String! - - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + ): HTML! """ - The HTTP URL for this issue + Whether or not squash-merging is enabled on this repository. """ - url: URI! -} + squashMergeAllowed: Boolean! -""" -A release asset contains the content for a release asset. -""" -type ReleaseAsset implements Node { """ - The asset's content-type + How the default commit message will be generated when squash merging a pull request. """ - contentType: String! + squashMergeCommitMessage: SquashMergeCommitMessage! """ - Identifies the date and time when the object was created. + How the default commit title will be generated when squash merging a pull request. """ - createdAt: DateTime! + squashMergeCommitTitle: SquashMergeCommitTitle! """ - The number of times this asset was downloaded + Whether a squash merge commit can use the pull request title as default. """ - downloadCount: Int! + squashPrTitleUsedAsDefault: Boolean! + @deprecated( + reason: "`squashPrTitleUsedAsDefault` will be removed. Use `Repository.squashMergeCommitTitle` instead. Removal on 2023-04-01 UTC." + ) """ - Identifies the URL where you can download the release asset via the browser. + The SSH URL to clone this repository """ - downloadUrl: URI! - id: ID! + sshUrl: GitSSHRemote! """ - Identifies the title of the release asset. + Returns a count of how many stargazers there are on this object """ - name: String! + stargazerCount: Int! """ - Release that the asset is associated with + A list of users who have starred this starrable. """ - release: Release + stargazers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The size (in bytes) of the asset - """ - size: Int! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The user that performed the upload - """ - uploadedBy: User! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the URL of the release asset. - """ - url: URI! -} + """ + Order for connection + """ + orderBy: StarOrder + ): StargazerConnection! -""" -The connection type for ReleaseAsset. -""" -type ReleaseAssetConnection { """ - A list of edges. + Returns a list of all submodules in this repository parsed from the + .gitmodules file as of the default branch's HEAD commit. """ - edges: [ReleaseAssetEdge] + submodules( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A list of nodes. - """ - nodes: [ReleaseAsset] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): SubmoduleConnection! -""" -An edge in a connection. -""" -type ReleaseAssetEdge { """ - A cursor for use in pagination. + Temporary authentication token for cloning this repository. """ - cursor: String! + tempCloneToken: String """ - The item at the end of the edge. + The repository from which this repository was generated, if any. """ - node: ReleaseAsset -} + templateRepository: Repository -""" -The connection type for Release. -""" -type ReleaseConnection { """ - A list of edges. + Identifies the date and time when the object was last updated. """ - edges: [ReleaseEdge] + updatedAt: DateTime! """ - A list of nodes. + The HTTP URL for this repository """ - nodes: [Release] + url: URI! """ - Information to aid in pagination. + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. """ - pageInfo: PageInfo! + usesCustomOpenGraphImage: Boolean! """ - Identifies the total count of items in the connection. + Indicates whether the viewer has admin permissions on this repository. """ - totalCount: Int! -} + viewerCanAdminister: Boolean! -""" -An edge in a connection. -""" -type ReleaseEdge { """ - A cursor for use in pagination. + Can the current viewer create new projects on this owner. """ - cursor: String! + viewerCanCreateProjects: Boolean! """ - The item at the end of the edge. + Check if the viewer is able to change their subscription status for the repository. """ - node: Release -} + viewerCanSubscribe: Boolean! -""" -Ways in which lists of releases can be ordered upon return. -""" -input ReleaseOrder { """ - The direction in which to order releases by the specified field. + Indicates whether the viewer can update the topics of this repository. """ - direction: OrderDirection! + viewerCanUpdateTopics: Boolean! """ - The field in which to order releases by. + The last commit email for the viewer. """ - field: ReleaseOrderField! -} + viewerDefaultCommitEmail: String -""" -Properties by which release connections can be ordered. -""" -enum ReleaseOrderField { """ - Order releases by creation time + The last used merge method by the viewer or the default for the repository. """ - CREATED_AT + viewerDefaultMergeMethod: PullRequestMergeMethod! """ - Order releases alphabetically by name + Returns a boolean indicating whether the viewing user has starred this starrable. """ - NAME -} + viewerHasStarred: Boolean! -""" -Autogenerated input type of RemoveAssigneesFromAssignable -""" -input RemoveAssigneesFromAssignableInput { """ - The id of the assignable object to remove assignees from. + The users permission level on the repository. Will return null if authenticated as an GitHub App. """ - assignableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Assignable") + viewerPermission: RepositoryPermission """ - The id of users to remove as assignees. + A list of emails this viewer can commit with. """ - assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"]) + viewerPossibleCommitEmails: [String!] """ - A unique identifier for the client performing the mutation. + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - clientMutationId: String -} + viewerSubscription: SubscriptionState -""" -Autogenerated return type of RemoveAssigneesFromAssignable -""" -type RemoveAssigneesFromAssignablePayload { """ - The item that was unassigned. + Indicates the repository's visibility level. """ - assignable: Assignable + visibility: RepositoryVisibility! """ - A unique identifier for the client performing the mutation. + Returns a single vulnerability alert from the current repository by number. """ - clientMutationId: String -} + vulnerabilityAlert( + """ + The number for the vulnerability alert to be returned. + """ + number: Int! + ): RepositoryVulnerabilityAlert -""" -Autogenerated input type of RemoveEnterpriseAdmin -""" -input RemoveEnterpriseAdminInput { """ - A unique identifier for the client performing the mutation. + A list of vulnerability alerts that are on this repository. """ - clientMutationId: String + vulnerabilityAlerts( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The Enterprise ID from which to remove the administrator. - """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The login of the user to remove as an administrator. - """ - login: String! -} + """ + Filter by the scope of the alert's dependency + """ + dependencyScopes: [RepositoryVulnerabilityAlertDependencyScope!] -""" -Autogenerated return type of RemoveEnterpriseAdmin -""" -type RemoveEnterpriseAdminPayload { - """ - The user who was removed as an administrator. - """ - admin: User + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The updated enterprise. - """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + """ + Filter by the state of the alert + """ + states: [RepositoryVulnerabilityAlertState!] + ): RepositoryVulnerabilityAlertConnection """ - A message confirming the result of removing an administrator. + A list of users watching the repository. """ - message: String + watchers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The viewer performing the mutation. - """ - viewer: User -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Autogenerated input type of RemoveEnterpriseOrganization -""" -input RemoveEnterpriseOrganizationInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The ID of the enterprise from which the organization should be removed. - """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The ID of the organization to remove from the enterprise. + Whether contributors are required to sign off on web-based commits in this repository. """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + webCommitSignoffRequired: Boolean! } """ -Autogenerated return type of RemoveEnterpriseOrganization +The affiliation of a user to a repository """ -type RemoveEnterpriseOrganizationPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - +enum RepositoryAffiliation { """ - The updated enterprise. + Repositories that the user has been added to as a collaborator. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + COLLABORATOR """ - The organization that was removed from the enterprise. + Repositories that the user has access to through being a member of an + organization. This includes every repository on every team that the user is on. """ - organization: Organization + ORGANIZATION_MEMBER """ - The viewer performing the mutation. + Repositories that are owned by the authenticated user. """ - viewer: User + OWNER } """ -Autogenerated input type of RemoveLabelsFromLabelable +Metadata for an audit entry with action repo.* """ -input RemoveLabelsFromLabelableInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - +interface RepositoryAuditEntryData { """ - The ids of labels to remove. + The repository associated with the action """ - labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"]) + repository: Repository """ - The id of the Labelable to remove labels from. + The name of the repository """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") -} + repositoryName: String -""" -Autogenerated return type of RemoveLabelsFromLabelable -""" -type RemoveLabelsFromLabelablePayload { """ - A unique identifier for the client performing the mutation. + The HTTP path for the repository """ - clientMutationId: String + repositoryResourcePath: URI """ - The Labelable the labels were removed from. + The HTTP URL for the repository """ - labelable: Labelable + repositoryUrl: URI } """ -Autogenerated input type of RemoveOutsideCollaborator +Information extracted from a repository's `CODEOWNERS` file. """ -input RemoveOutsideCollaboratorInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - The ID of the organization to remove the outside collaborator from. +type RepositoryCodeowners { """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) - - """ - The ID of the outside collaborator to remove. + Any problems that were encountered while parsing the `CODEOWNERS` file. """ - userId: ID! @possibleTypes(concreteTypes: ["User"]) + errors: [RepositoryCodeownersError!]! } """ -Autogenerated return type of RemoveOutsideCollaborator +An error in a `CODEOWNERS` file. """ -type RemoveOutsideCollaboratorPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - +type RepositoryCodeownersError { """ - The user that was removed as an outside collaborator. + The column number where the error occurs. """ - removedUser: User -} + column: Int! -""" -Autogenerated input type of RemoveReaction -""" -input RemoveReactionInput { """ - A unique identifier for the client performing the mutation. + A short string describing the type of error. """ - clientMutationId: String + kind: String! """ - The name of the emoji reaction to remove. + The line number where the error occurs. """ - content: ReactionContent! + line: Int! """ - The Node ID of the subject to modify. + A complete description of the error, combining information from other fields. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "Issue", "IssueComment", "PullRequest", "PullRequestReview", "PullRequestReviewComment", "TeamDiscussion", "TeamDiscussionComment"], abstractType: "Reactable") -} + message: String! -""" -Autogenerated return type of RemoveReaction -""" -type RemoveReactionPayload { """ - A unique identifier for the client performing the mutation. + The path to the file when the error occurs. """ - clientMutationId: String + path: String! """ - The reaction object. + The content of the line where the error occurs. """ - reaction: Reaction + source: String! """ - The reactable subject. + A suggestion of how to fix the error. """ - subject: Reactable + suggestion: String } """ -Autogenerated input type of RemoveStar +The connection type for User. """ -input RemoveStarInput { +type RepositoryCollaboratorConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [RepositoryCollaboratorEdge] """ - The Starrable ID to unstar. + A list of nodes. """ - starrableId: ID! @possibleTypes(concreteTypes: ["Gist", "Repository", "Topic"], abstractType: "Starrable") -} + nodes: [User] -""" -Autogenerated return type of RemoveStar -""" -type RemoveStarPayload { """ - A unique identifier for the client performing the mutation. + Information to aid in pagination. """ - clientMutationId: String + pageInfo: PageInfo! """ - The starrable. + Identifies the total count of items in the connection. """ - starrable: Starrable + totalCount: Int! } """ -Represents a 'removed_from_project' event on a given issue or pull request. +Represents a user who is a collaborator of a repository. """ -type RemovedFromProjectEvent implements Node { - """ - Identifies the actor who performed the event. - """ - actor: Actor - - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - +type RepositoryCollaboratorEdge { """ - Identifies the primary key from the database. + A cursor for use in pagination. """ - databaseId: Int - id: ID! + cursor: String! + node: User! """ - Project referenced by event. + The permission the user has on the repository. """ - project: Project @preview(toggledBy: "starfox-preview") + permission: RepositoryPermission! """ - Column name referenced by this project event. + A list of sources for the user's access to the repository. """ - projectColumnName: String! @preview(toggledBy: "starfox-preview") + permissionSources: [PermissionSource!] } """ -Represents a 'renamed' event on a given issue or pull request +A list of repositories owned by the subject. """ -type RenamedTitleEvent implements Node { - """ - Identifies the actor who performed the event. - """ - actor: Actor - - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - - """ - Identifies the current title of the issue or pull request. - """ - currentTitle: String! - id: ID! - - """ - Identifies the previous title of the issue or pull request. - """ - previousTitle: String! - +type RepositoryConnection { """ - Subject that was renamed. + A list of edges. """ - subject: RenamedTitleSubject! -} - -""" -An object which has a renamable title -""" -union RenamedTitleSubject = Issue | PullRequest + edges: [RepositoryEdge] -""" -Autogenerated input type of ReopenIssue -""" -input ReopenIssueInput { """ - A unique identifier for the client performing the mutation. + A list of nodes. """ - clientMutationId: String + nodes: [Repository] """ - ID of the issue to be opened. + Information to aid in pagination. """ - issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) -} + pageInfo: PageInfo! -""" -Autogenerated return type of ReopenIssue -""" -type ReopenIssuePayload { """ - A unique identifier for the client performing the mutation. + Identifies the total count of items in the connection. """ - clientMutationId: String + totalCount: Int! """ - The issue that was opened. + The total size in kilobytes of all repositories in the connection. """ - issue: Issue + totalDiskUsage: Int! } """ -Autogenerated input type of ReopenPullRequest +A repository contact link. """ -input ReopenPullRequestInput { +type RepositoryContactLink { """ - A unique identifier for the client performing the mutation. + The contact link purpose. """ - clientMutationId: String + about: String! """ - ID of the pull request to be reopened. + The contact link name. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + name: String! + + """ + The contact link URL. + """ + url: URI! } """ -Autogenerated return type of ReopenPullRequest +The reason a repository is listed as 'contributed'. """ -type ReopenPullRequestPayload { +enum RepositoryContributionType { """ - A unique identifier for the client performing the mutation. + Created a commit """ - clientMutationId: String + COMMIT """ - The pull request that was reopened. + Created an issue """ - pullRequest: PullRequest -} + ISSUE -""" -Represents a 'reopened' event on any `Closable`. -""" -type ReopenedEvent implements Node { """ - Identifies the actor who performed the event. + Created a pull request """ - actor: Actor + PULL_REQUEST """ - Object that was reopened. + Reviewed a pull request """ - closable: Closable! + PULL_REQUEST_REVIEW """ - Identifies the date and time when the object was created. + Created the repository """ - createdAt: DateTime! - id: ID! + REPOSITORY } """ -Audit log entry for a repo.access event. +Represents an author of discussions in repositories. """ -type RepoAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +interface RepositoryDiscussionAuthor { """ - The action name + Discussions this user has started. """ - action: String! + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The user who initiated the action - """ - actor: AuditEntryActor + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter discussions to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionConnection! +} +""" +Represents an author of discussion comments in repositories. +""" +interface RepositoryDiscussionCommentAuthor { """ - The IP address of the actor + Discussion comments this user has authored. """ - actorIp: String + repositoryDiscussionComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! +} +""" +An edge in a connection. +""" +type RepositoryEdge { """ - A readable representation of the actor's location + A cursor for use in pagination. """ - actorLocation: ActorLocation + cursor: String! """ - The username of the user who initiated the action + The item at the end of the edge. """ - actorLogin: String + node: Repository +} +""" +A subset of repository info. +""" +interface RepositoryInfo { """ - The HTTP path for the actor. + Identifies the date and time when the object was created. """ - actorResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the actor. + The description of the repository. """ - actorUrl: URI + description: String """ - The time the action was initiated + The description of the repository rendered to HTML. """ - createdAt: PreciseDateTime! - id: ID! + descriptionHTML: HTML! """ - The corresponding operation type for the action + Returns how many forks there are of this repository in the whole network. """ - operationType: OperationType + forkCount: Int! """ - The Organization associated with the Audit Entry. + Indicates if the repository has the Discussions feature enabled. """ - organization: Organization + hasDiscussionsEnabled: Boolean! """ - The name of the Organization. + Indicates if the repository has issues feature enabled. """ - organizationName: String + hasIssuesEnabled: Boolean! """ - The HTTP path for the organization + Indicates if the repository has the Projects feature enabled. """ - organizationResourcePath: URI + hasProjectsEnabled: Boolean! """ - The HTTP URL for the organization + Indicates if the repository has wiki feature enabled. """ - organizationUrl: URI + hasWikiEnabled: Boolean! """ - The repository associated with the action + The repository's URL. """ - repository: Repository + homepageUrl: URI """ - The name of the repository + Indicates if the repository is unmaintained. """ - repositoryName: String + isArchived: Boolean! """ - The HTTP path for the repository + Identifies if the repository is a fork. """ - repositoryResourcePath: URI + isFork: Boolean! """ - The HTTP URL for the repository + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. """ - repositoryUrl: URI + isInOrganization: Boolean! """ - The user affected by the action + Indicates if the repository has been locked or not. """ - user: User + isLocked: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies if the repository is a mirror. """ - userLogin: String + isMirror: Boolean! """ - The HTTP path for the user. + Identifies if the repository is private or internal. """ - userResourcePath: URI + isPrivate: Boolean! """ - The HTTP URL for the user. + Identifies if the repository is a template that can be used to generate new repositories. """ - userUrl: URI + isTemplate: Boolean! """ - The visibility of the repository + The license associated with the repository """ - visibility: RepoAccessAuditEntryVisibility -} + licenseInfo: License -""" -The privacy of a repository -""" -enum RepoAccessAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The reason the repository has been locked. """ - INTERNAL + lockReason: RepositoryLockReason """ - The repository is visible only to those with explicit access. + The repository's original mirror URL. """ - PRIVATE + mirrorUrl: URI """ - The repository is visible to everyone. + The name of the repository. """ - PUBLIC -} + name: String! -""" -Audit log entry for a repo.add_member event. -""" -type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + The repository's name with owner. """ - action: String! + nameWithOwner: String! """ - The user who initiated the action + The image used to represent this repository in Open Graph data. """ - actor: AuditEntryActor + openGraphImageUrl: URI! """ - The IP address of the actor + The User owner of the repository. """ - actorIp: String + owner: RepositoryOwner! """ - A readable representation of the actor's location + Identifies when the repository was last pushed to. """ - actorLocation: ActorLocation + pushedAt: DateTime """ - The username of the user who initiated the action + The HTTP path for this repository """ - actorLogin: String + resourcePath: URI! """ - The HTTP path for the actor. + A description of the repository, rendered to HTML without any links in it. """ - actorResourcePath: URI + shortDescriptionHTML( + """ + How many characters to return. + """ + limit: Int = 200 + ): HTML! """ - The HTTP URL for the actor. + Identifies the date and time when the object was last updated. """ - actorUrl: URI + updatedAt: DateTime! """ - The time the action was initiated + The HTTP URL for this repository """ - createdAt: PreciseDateTime! - id: ID! + url: URI! """ - The corresponding operation type for the action + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. """ - operationType: OperationType + usesCustomOpenGraphImage: Boolean! """ - The Organization associated with the Audit Entry. + Indicates the repository's visibility level. """ - organization: Organization + visibility: RepositoryVisibility! +} +""" +Repository interaction limit that applies to this object. +""" +type RepositoryInteractionAbility { """ - The name of the Organization. + The time the currently active limit expires. """ - organizationName: String + expiresAt: DateTime """ - The HTTP path for the organization + The current limit that is enabled on this object. """ - organizationResourcePath: URI + limit: RepositoryInteractionLimit! """ - The HTTP URL for the organization + The origin of the currently active interaction limit. """ - organizationUrl: URI + origin: RepositoryInteractionLimitOrigin! +} +""" +A repository interaction limit. +""" +enum RepositoryInteractionLimit { """ - The repository associated with the action + Users that are not collaborators will not be able to interact with the repository. """ - repository: Repository + COLLABORATORS_ONLY """ - The name of the repository + Users that have not previously committed to a repository’s default branch will be unable to interact with the repository. """ - repositoryName: String + CONTRIBUTORS_ONLY """ - The HTTP path for the repository + Users that have recently created their account will be unable to interact with the repository. """ - repositoryResourcePath: URI + EXISTING_USERS """ - The HTTP URL for the repository + No interaction limits are enabled. """ - repositoryUrl: URI + NO_LIMIT +} +""" +The length for a repository interaction limit to be enabled for. +""" +enum RepositoryInteractionLimitExpiry { """ - The user affected by the action + The interaction limit will expire after 1 day. """ - user: User + ONE_DAY """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The interaction limit will expire after 1 month. """ - userLogin: String + ONE_MONTH """ - The HTTP path for the user. + The interaction limit will expire after 1 week. """ - userResourcePath: URI + ONE_WEEK """ - The HTTP URL for the user. + The interaction limit will expire after 6 months. """ - userUrl: URI + SIX_MONTHS """ - The visibility of the repository + The interaction limit will expire after 3 days. """ - visibility: RepoAddMemberAuditEntryVisibility + THREE_DAYS } """ -The privacy of a repository +Indicates where an interaction limit is configured. """ -enum RepoAddMemberAuditEntryVisibility { +enum RepositoryInteractionLimitOrigin { """ - The repository is visible only to users in the same business. + A limit that is configured at the organization level. """ - INTERNAL + ORGANIZATION """ - The repository is visible only to those with explicit access. + A limit that is configured at the repository level. """ - PRIVATE + REPOSITORY """ - The repository is visible to everyone. + A limit that is configured at the user-wide level. """ - PUBLIC + USER } """ -Audit log entry for a repo.add_topic event. +An invitation for a user to be added to a repository. """ -type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { +type RepositoryInvitation implements Node { """ - The action name + The email address that received the invitation. """ - action: String! + email: String + id: ID! """ - The user who initiated the action + The user who received the invitation. """ - actor: AuditEntryActor + invitee: User """ - The IP address of the actor + The user who created the invitation. """ - actorIp: String + inviter: User! """ - A readable representation of the actor's location + The permalink for this repository invitation. """ - actorLocation: ActorLocation + permalink: URI! """ - The username of the user who initiated the action + The permission granted on this repository by this invitation. """ - actorLogin: String + permission: RepositoryPermission! """ - The HTTP path for the actor. + The Repository the user is invited to. """ - actorResourcePath: URI + repository: RepositoryInfo +} +""" +A list of repository invitations. +""" +type RepositoryInvitationConnection { """ - The HTTP URL for the actor. + A list of edges. """ - actorUrl: URI + edges: [RepositoryInvitationEdge] """ - The time the action was initiated + A list of nodes. """ - createdAt: PreciseDateTime! - id: ID! + nodes: [RepositoryInvitation] """ - The corresponding operation type for the action + Information to aid in pagination. """ - operationType: OperationType + pageInfo: PageInfo! """ - The Organization associated with the Audit Entry. + Identifies the total count of items in the connection. """ - organization: Organization + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryInvitationEdge { """ - The name of the Organization. + A cursor for use in pagination. """ - organizationName: String + cursor: String! """ - The HTTP path for the organization + The item at the end of the edge. """ - organizationResourcePath: URI + node: RepositoryInvitation +} +""" +Ordering options for repository invitation connections. +""" +input RepositoryInvitationOrder { """ - The HTTP URL for the organization + The ordering direction. """ - organizationUrl: URI + direction: OrderDirection! """ - The repository associated with the action + The field to order repository invitations by. """ - repository: Repository + field: RepositoryInvitationOrderField! +} +""" +Properties by which repository invitation connections can be ordered. +""" +enum RepositoryInvitationOrderField { """ - The name of the repository + Order repository invitations by creation time """ - repositoryName: String + CREATED_AT +} +""" +The possible reasons a given repository could be in a locked state. +""" +enum RepositoryLockReason { """ - The HTTP path for the repository + The repository is locked due to a billing related reason. """ - repositoryResourcePath: URI + BILLING """ - The HTTP URL for the repository + The repository is locked due to a migration. """ - repositoryUrl: URI + MIGRATING """ - The name of the topic added to the repository + The repository is locked due to a move. """ - topic: Topic + MOVING """ - The name of the topic added to the repository + The repository is locked due to a rename. """ - topicName: String + RENAME """ - The user affected by the action + The repository is locked due to a trade controls related reason. """ - user: User + TRADE_RESTRICTION +} +""" +A GitHub Enterprise Importer (GEI) repository migration. +""" +type RepositoryMigration implements Migration & Node { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The migration flag to continue on error. """ - userLogin: String + continueOnError: Boolean! """ - The HTTP path for the user. + Identifies the date and time when the object was created. """ - userResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the user. + Identifies the primary key from the database. """ - userUrl: URI -} + databaseId: String -""" -Audit log entry for a repo.archived event. -""" -type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + The reason the migration failed. """ - action: String! + failureReason: String + id: ID! """ - The user who initiated the action + The URL for the migration log (expires 1 day after migration completes). """ - actor: AuditEntryActor + migrationLogUrl: URI """ - The IP address of the actor + The migration source. """ - actorIp: String + migrationSource: MigrationSource! """ - A readable representation of the actor's location + The target repository name. """ - actorLocation: ActorLocation + repositoryName: String! """ - The username of the user who initiated the action + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. """ - actorLogin: String + sourceUrl: URI! """ - The HTTP path for the actor. + The migration state. """ - actorResourcePath: URI + state: MigrationState! +} +""" +The connection type for RepositoryMigration. +""" +type RepositoryMigrationConnection { """ - The HTTP URL for the actor. + A list of edges. """ - actorUrl: URI + edges: [RepositoryMigrationEdge] """ - The time the action was initiated + A list of nodes. """ - createdAt: PreciseDateTime! - id: ID! + nodes: [RepositoryMigration] """ - The corresponding operation type for the action + Information to aid in pagination. """ - operationType: OperationType + pageInfo: PageInfo! """ - The Organization associated with the Audit Entry. + Identifies the total count of items in the connection. """ - organization: Organization + totalCount: Int! +} +""" +Represents a repository migration. +""" +type RepositoryMigrationEdge { """ - The name of the Organization. + A cursor for use in pagination. """ - organizationName: String + cursor: String! """ - The HTTP path for the organization + The item at the end of the edge. """ - organizationResourcePath: URI + node: RepositoryMigration +} +""" +Ordering options for repository migrations. +""" +input RepositoryMigrationOrder { """ - The HTTP URL for the organization + The ordering direction. """ - organizationUrl: URI + direction: RepositoryMigrationOrderDirection! """ - The repository associated with the action + The field to order repository migrations by. """ - repository: Repository + field: RepositoryMigrationOrderField! +} +""" +Possible directions in which to order a list of repository migrations when provided an `orderBy` argument. +""" +enum RepositoryMigrationOrderDirection { """ - The name of the repository + Specifies an ascending order for a given `orderBy` argument. """ - repositoryName: String + ASC """ - The HTTP path for the repository + Specifies a descending order for a given `orderBy` argument. """ - repositoryResourcePath: URI + DESC +} +""" +Properties by which repository migrations can be ordered. +""" +enum RepositoryMigrationOrderField { """ - The HTTP URL for the repository + Order mannequins why when they were created. """ - repositoryUrl: URI + CREATED_AT +} +""" +Represents a object that belongs to a repository. +""" +interface RepositoryNode { """ - The user affected by the action + The repository associated with this node. """ - user: User + repository: Repository! +} +""" +Ordering options for repository connections +""" +input RepositoryOrder { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The ordering direction. """ - userLogin: String + direction: OrderDirection! """ - The HTTP path for the user. + The field to order repositories by. """ - userResourcePath: URI + field: RepositoryOrderField! +} +""" +Properties by which repository connections can be ordered. +""" +enum RepositoryOrderField { """ - The HTTP URL for the user. + Order repositories by creation time """ - userUrl: URI + CREATED_AT """ - The visibility of the repository + Order repositories by name """ - visibility: RepoArchivedAuditEntryVisibility -} + NAME -""" -The privacy of a repository -""" -enum RepoArchivedAuditEntryVisibility { """ - The repository is visible only to users in the same business. + Order repositories by push time """ - INTERNAL + PUSHED_AT """ - The repository is visible only to those with explicit access. + Order repositories by number of stargazers """ - PRIVATE + STARGAZERS """ - The repository is visible to everyone. + Order repositories by update time """ - PUBLIC + UPDATED_AT } """ -Audit log entry for a repo.change_merge_setting event. +Represents an owner of a Repository. """ -type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +interface RepositoryOwner { """ - The action name + A URL pointing to the owner's public avatar. """ - action: String! + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + id: ID! """ - The user who initiated the action + The username used to login. """ - actor: AuditEntryActor + login: String! """ - The IP address of the actor + A list of repositories that the user owns. """ - actorIp: String + repositories( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean + + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder + + """ + Array of owner's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + organization or user being viewed owns. + """ + ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - The username of the user who initiated the action + Find Repository. """ - actorLogin: String + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + + """ + Name of Repository to find. + """ + name: String! + ): Repository """ - The HTTP path for the actor. + The HTTP URL for the owner. """ - actorResourcePath: URI + resourcePath: URI! """ - The HTTP URL for the actor. + The HTTP URL for the owner. """ - actorUrl: URI + url: URI! +} +""" +The access level to a repository +""" +enum RepositoryPermission { """ - The time the action was initiated + Can read, clone, and push to this repository. Can also manage issues, pull + requests, and repository settings, including adding collaborators """ - createdAt: PreciseDateTime! - id: ID! + ADMIN """ - Whether the change was to enable (true) or disable (false) the merge type + Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings """ - isEnabled: Boolean + MAINTAIN """ - The merge method affected by the change + Can read and clone this repository. Can also open and comment on issues and pull requests """ - mergeType: RepoChangeMergeSettingAuditEntryMergeType + READ """ - The corresponding operation type for the action + Can read and clone this repository. Can also manage issues and pull requests """ - operationType: OperationType + TRIAGE """ - The Organization associated with the Audit Entry. + Can read, clone, and push to this repository. Can also manage issues and pull requests """ - organization: Organization + WRITE +} +""" +The privacy of a repository +""" +enum RepositoryPrivacy { """ - The name of the Organization. + Private """ - organizationName: String + PRIVATE """ - The HTTP path for the organization + Public """ - organizationResourcePath: URI + PUBLIC +} + +""" +A repository-topic connects a repository to a topic. +""" +type RepositoryTopic implements Node & UniformResourceLocatable { + id: ID! """ - The HTTP URL for the organization + The HTTP path for this repository-topic. """ - organizationUrl: URI + resourcePath: URI! """ - The repository associated with the action + The topic. """ - repository: Repository + topic: Topic! """ - The name of the repository + The HTTP URL for this repository-topic. """ - repositoryName: String + url: URI! +} +""" +The connection type for RepositoryTopic. +""" +type RepositoryTopicConnection { """ - The HTTP path for the repository + A list of edges. """ - repositoryResourcePath: URI + edges: [RepositoryTopicEdge] """ - The HTTP URL for the repository + A list of nodes. """ - repositoryUrl: URI + nodes: [RepositoryTopic] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryTopicEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: RepositoryTopic } """ -The merge options available for pull requests to this repository. +The repository's visibility level. """ -enum RepoChangeMergeSettingAuditEntryMergeType { +enum RepositoryVisibility { """ - The pull request is added to the base branch in a merge commit. + The repository is visible only to users in the same business. """ - MERGE + INTERNAL """ - Commits from the pull request are added onto the base branch individually without a merge commit. + The repository is visible only to those with explicit access. """ - REBASE + PRIVATE """ - The pull request's commits are squashed into a single commit before they are merged to the base branch. + The repository is visible to everyone. """ - SQUASH + PUBLIC } """ -Audit log entry for a repo.config.disable_anonymous_git_access event. +Audit log entry for a repository_visibility_change.disable event. """ -type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ The action name """ @@ -25417,6 +42470,21 @@ type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node The time the action was initiated """ createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI id: ID! """ @@ -25444,26 +42512,6 @@ type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node """ organizationUrl: URI - """ - The repository associated with the action - """ - repository: Repository - - """ - The name of the repository - """ - repositoryName: String - - """ - The HTTP path for the repository - """ - repositoryResourcePath: URI - - """ - The HTTP URL for the repository - """ - repositoryUrl: URI - """ The user affected by the action """ @@ -25486,9 +42534,9 @@ type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node } """ -Audit log entry for a repo.config.disable_collaborators_only event. +Audit log entry for a repository_visibility_change.enable event. """ -type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ The action name """ @@ -25528,6 +42576,21 @@ type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & The time the action was initiated """ createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI id: ID! """ @@ -25555,26 +42618,6 @@ type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & """ organizationUrl: URI - """ - The repository associated with the action - """ - repository: Repository - - """ - The name of the repository - """ - repositoryName: String - - """ - The HTTP path for the repository - """ - repositoryResourcePath: URI - - """ - The HTTP URL for the repository - """ - repositoryUrl: URI - """ The user affected by the action """ @@ -25597,1905 +42640,2123 @@ type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & } """ -Audit log entry for a repo.config.disable_contributors_only event. +A Dependabot alert for a repository with a dependency affected by a security vulnerability. """ -type RepoConfigDisableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVulnerabilityAlert implements Node & RepositoryNode { """ - The action name + When was the alert created? """ - action: String! + createdAt: DateTime! """ - The user who initiated the action + The associated Dependabot update """ - actor: AuditEntryActor + dependabotUpdate: DependabotUpdate """ - The IP address of the actor + The scope of an alert's dependency """ - actorIp: String + dependencyScope: RepositoryVulnerabilityAlertDependencyScope """ - A readable representation of the actor's location + Comment explaining the reason the alert was dismissed """ - actorLocation: ActorLocation + dismissComment: String """ - The username of the user who initiated the action + The reason the alert was dismissed """ - actorLogin: String + dismissReason: String """ - The HTTP path for the actor. + When was the alert dismissed? """ - actorResourcePath: URI + dismissedAt: DateTime """ - The HTTP URL for the actor. + The user who dismissed the alert """ - actorUrl: URI + dismisser: User """ - The time the action was initiated + The reason the alert was marked as fixed. """ - createdAt: PreciseDateTime! + fixReason: String + @deprecated( + reason: "The `fixReason` field is being removed. You can still use `fixedAt` and `dismissReason`. Removal on 2023-04-01 UTC." + ) + + """ + When was the alert fixed? + """ + fixedAt: DateTime id: ID! """ - The corresponding operation type for the action + Identifies the alert number. """ - operationType: OperationType + number: Int! """ - The Organization associated with the Audit Entry. + The associated repository """ - organization: Organization + repository: Repository! """ - The name of the Organization. + The associated security advisory """ - organizationName: String + securityAdvisory: SecurityAdvisory """ - The HTTP path for the organization + The associated security vulnerability """ - organizationResourcePath: URI + securityVulnerability: SecurityVulnerability """ - The HTTP URL for the organization + Identifies the state of the alert. """ - organizationUrl: URI + state: RepositoryVulnerabilityAlertState! """ - The repository associated with the action + The vulnerable manifest filename """ - repository: Repository + vulnerableManifestFilename: String! """ - The name of the repository + The vulnerable manifest path """ - repositoryName: String + vulnerableManifestPath: String! """ - The HTTP path for the repository + The vulnerable requirements """ - repositoryResourcePath: URI + vulnerableRequirements: String +} +""" +The connection type for RepositoryVulnerabilityAlert. +""" +type RepositoryVulnerabilityAlertConnection { """ - The HTTP URL for the repository + A list of edges. """ - repositoryUrl: URI + edges: [RepositoryVulnerabilityAlertEdge] """ - The user affected by the action + A list of nodes. """ - user: User + nodes: [RepositoryVulnerabilityAlert] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Information to aid in pagination. """ - userLogin: String + pageInfo: PageInfo! """ - The HTTP path for the user. + Identifies the total count of items in the connection. """ - userResourcePath: URI + totalCount: Int! +} + +""" +The possible scopes of an alert's dependency. +""" +enum RepositoryVulnerabilityAlertDependencyScope { + """ + A dependency that is only used in development + """ + DEVELOPMENT """ - The HTTP URL for the user. + A dependency that is leveraged during application runtime """ - userUrl: URI + RUNTIME } """ -Audit log entry for a repo.config.disable_sockpuppet_disallowed event. +An edge in a connection. """ -type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVulnerabilityAlertEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: RepositoryVulnerabilityAlert +} +""" +The possible states of an alert +""" +enum RepositoryVulnerabilityAlertState { """ - The IP address of the actor + An alert that has been manually closed by a user. """ - actorIp: String + DISMISSED """ - A readable representation of the actor's location + An alert that has been resolved by a code change. """ - actorLocation: ActorLocation + FIXED """ - The username of the user who initiated the action + An alert that is still open. """ - actorLogin: String + OPEN +} +""" +Autogenerated input type of RequestReviews +""" +input RequestReviewsInput { """ - The HTTP path for the actor. + A unique identifier for the client performing the mutation. """ - actorResourcePath: URI + clientMutationId: String """ - The HTTP URL for the actor. + The Node ID of the pull request to modify. """ - actorUrl: URI + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) """ - The time the action was initiated + The Node IDs of the team to request. """ - createdAt: PreciseDateTime! - id: ID! + teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"]) """ - The corresponding operation type for the action + Add users to the set rather than replace. """ - operationType: OperationType + union: Boolean """ - The Organization associated with the Audit Entry. + The Node IDs of the user to request. """ - organization: Organization + userIds: [ID!] @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of RequestReviews +""" +type RequestReviewsPayload { """ - The name of the Organization. + Identifies the actor who performed the event. """ - organizationName: String + actor: Actor """ - The HTTP path for the organization + A unique identifier for the client performing the mutation. """ - organizationResourcePath: URI + clientMutationId: String """ - The HTTP URL for the organization + The pull request that is getting requests. """ - organizationUrl: URI + pullRequest: PullRequest """ - The repository associated with the action + The edge from the pull request to the requested reviewers. """ - repository: Repository + requestedReviewersEdge: UserEdge +} +""" +The possible states that can be requested when creating a check run. +""" +enum RequestableCheckStatusState { """ - The name of the repository + The check suite or run has been completed. """ - repositoryName: String + COMPLETED """ - The HTTP path for the repository + The check suite or run is in progress. """ - repositoryResourcePath: URI + IN_PROGRESS """ - The HTTP URL for the repository + The check suite or run is in pending state. """ - repositoryUrl: URI + PENDING + + """ + The check suite or run has been queued. + """ + QUEUED + + """ + The check suite or run is in waiting state. + """ + WAITING +} + +""" +Types that can be requested reviewers. +""" +union RequestedReviewer = Mannequin | Team | User +""" +The connection type for RequestedReviewer. +""" +type RequestedReviewerConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [RequestedReviewerEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [RequestedReviewer] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -Audit log entry for a repo.config.enable_anonymous_git_access event. +An edge in a connection. """ -type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RequestedReviewerEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: RequestedReviewer +} +""" +Represents a type that can be required by a pull request for merging. +""" +interface RequirableByPullRequest { """ - The IP address of the actor + Whether this is required to pass before merging for a specific pull request. """ - actorIp: String + isRequired( + """ + The id of the pull request this is required for + """ + pullRequestId: ID + + """ + The number of the pull request this is required for + """ + pullRequestNumber: Int + ): Boolean! +} +""" +Represents a required status check for a protected branch, but not any specific run of that check. +""" +type RequiredStatusCheckDescription { """ - A readable representation of the actor's location + The App that must provide this status in order for it to be accepted. """ - actorLocation: ActorLocation + app: App """ - The username of the user who initiated the action + The name of this status. """ - actorLogin: String + context: String! +} +""" +Specifies the attributes for a new or updated required status check. +""" +input RequiredStatusCheckInput { """ - The HTTP path for the actor. + The ID of the App that must set the status in order for it to be accepted. + Omit this value to use whichever app has recently been setting this status, or + use "any" to allow any app to set the status. """ - actorResourcePath: URI + appId: ID """ - The HTTP URL for the actor. + Status check context that must pass for commits to be accepted to the matching branch. """ - actorUrl: URI + context: String! +} +""" +Autogenerated input type of RerequestCheckSuite +""" +input RerequestCheckSuiteInput { """ - The time the action was initiated + The Node ID of the check suite. """ - createdAt: PreciseDateTime! - id: ID! + checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"]) """ - The corresponding operation type for the action + A unique identifier for the client performing the mutation. """ - operationType: OperationType + clientMutationId: String """ - The Organization associated with the Audit Entry. + The Node ID of the repository. """ - organization: Organization + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} +""" +Autogenerated return type of RerequestCheckSuite +""" +type RerequestCheckSuitePayload { """ - The name of the Organization. + The requested check suite. """ - organizationName: String + checkSuite: CheckSuite """ - The HTTP path for the organization + A unique identifier for the client performing the mutation. """ - organizationResourcePath: URI + clientMutationId: String +} +""" +Autogenerated input type of ResolveReviewThread +""" +input ResolveReviewThreadInput { """ - The HTTP URL for the organization + A unique identifier for the client performing the mutation. """ - organizationUrl: URI + clientMutationId: String """ - The repository associated with the action + The ID of the thread to resolve """ - repository: Repository + threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) +} +""" +Autogenerated return type of ResolveReviewThread +""" +type ResolveReviewThreadPayload { """ - The name of the repository + A unique identifier for the client performing the mutation. """ - repositoryName: String + clientMutationId: String """ - The HTTP path for the repository + The thread to resolve. """ - repositoryResourcePath: URI + thread: PullRequestReviewThread +} +""" +Represents a private contribution a user made on GitHub. +""" +type RestrictedContribution implements Contribution { """ - The HTTP URL for the repository + Whether this contribution is associated with a record you do not have access to. For + example, your own 'first issue' contribution may have been made on a repository you can no + longer access. """ - repositoryUrl: URI + isRestricted: Boolean! """ - The user affected by the action + When this contribution was made. """ - user: User + occurredAt: DateTime! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The HTTP path for this contribution. """ - userLogin: String + resourcePath: URI! """ - The HTTP path for the user. + The HTTP URL for this contribution. """ - userResourcePath: URI + url: URI! """ - The HTTP URL for the user. + The user who made this contribution. """ - userUrl: URI + user: User! } """ -Audit log entry for a repo.config.enable_collaborators_only event. +Autogenerated input type of RetireSponsorsTier """ -type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +input RetireSponsorsTierInput { """ - The action name + A unique identifier for the client performing the mutation. """ - action: String! + clientMutationId: String """ - The user who initiated the action + The ID of the published tier to retire. """ - actor: AuditEntryActor + tierId: ID! @possibleTypes(concreteTypes: ["SponsorsTier"]) +} +""" +Autogenerated return type of RetireSponsorsTier +""" +type RetireSponsorsTierPayload { """ - The IP address of the actor + A unique identifier for the client performing the mutation. """ - actorIp: String + clientMutationId: String """ - A readable representation of the actor's location + The tier that was retired. """ - actorLocation: ActorLocation + sponsorsTier: SponsorsTier +} +""" +Autogenerated input type of RevertPullRequest +""" +input RevertPullRequestInput { """ - The username of the user who initiated the action + The description of the revert pull request. """ - actorLogin: String + body: String """ - The HTTP path for the actor. + A unique identifier for the client performing the mutation. """ - actorResourcePath: URI + clientMutationId: String """ - The HTTP URL for the actor. + Indicates whether the revert pull request should be a draft. """ - actorUrl: URI + draft: Boolean = false """ - The time the action was initiated + The ID of the pull request to revert. """ - createdAt: PreciseDateTime! - id: ID! + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) """ - The corresponding operation type for the action + The title of the revert pull request. """ - operationType: OperationType + title: String +} +""" +Autogenerated return type of RevertPullRequest +""" +type RevertPullRequestPayload { """ - The Organization associated with the Audit Entry. + A unique identifier for the client performing the mutation. """ - organization: Organization + clientMutationId: String """ - The name of the Organization. + The pull request that was reverted. """ - organizationName: String + pullRequest: PullRequest """ - The HTTP path for the organization + The new pull request that reverts the input pull request. """ - organizationResourcePath: URI + revertPullRequest: PullRequest +} +""" +A user, team, or app who has the ability to dismiss a review on a protected branch. +""" +type ReviewDismissalAllowance implements Node { """ - The HTTP URL for the organization + The actor that can dismiss. """ - organizationUrl: URI + actor: ReviewDismissalAllowanceActor """ - The repository associated with the action + Identifies the branch protection rule associated with the allowed user, team, or app. """ - repository: Repository + branchProtectionRule: BranchProtectionRule + id: ID! +} - """ - The name of the repository - """ - repositoryName: String +""" +Types that can be an actor. +""" +union ReviewDismissalAllowanceActor = App | Team | User +""" +The connection type for ReviewDismissalAllowance. +""" +type ReviewDismissalAllowanceConnection { """ - The HTTP path for the repository + A list of edges. """ - repositoryResourcePath: URI + edges: [ReviewDismissalAllowanceEdge] """ - The HTTP URL for the repository + A list of nodes. """ - repositoryUrl: URI + nodes: [ReviewDismissalAllowance] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type ReviewDismissalAllowanceEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: ReviewDismissalAllowance } """ -Audit log entry for a repo.config.enable_contributors_only event. +Represents a 'review_dismissed' event on a given issue or pull request. """ -type RepoConfigEnableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type ReviewDismissedEvent implements Node & UniformResourceLocatable { """ - The action name + Identifies the actor who performed the event. """ - action: String! + actor: Actor """ - The user who initiated the action + Identifies the date and time when the object was created. """ - actor: AuditEntryActor + createdAt: DateTime! """ - The IP address of the actor + Identifies the primary key from the database. """ - actorIp: String + databaseId: Int """ - A readable representation of the actor's location + Identifies the optional message associated with the 'review_dismissed' event. """ - actorLocation: ActorLocation + dismissalMessage: String """ - The username of the user who initiated the action + Identifies the optional message associated with the event, rendered to HTML. """ - actorLogin: String + dismissalMessageHTML: String + id: ID! """ - The HTTP path for the actor. + Identifies the previous state of the review with the 'review_dismissed' event. """ - actorResourcePath: URI + previousReviewState: PullRequestReviewState! """ - The HTTP URL for the actor. + PullRequest referenced by event. """ - actorUrl: URI + pullRequest: PullRequest! """ - The time the action was initiated + Identifies the commit which caused the review to become stale. """ - createdAt: PreciseDateTime! - id: ID! + pullRequestCommit: PullRequestCommit """ - The corresponding operation type for the action + The HTTP path for this review dismissed event. """ - operationType: OperationType + resourcePath: URI! """ - The Organization associated with the Audit Entry. + Identifies the review associated with the 'review_dismissed' event. """ - organization: Organization + review: PullRequestReview """ - The name of the Organization. + The HTTP URL for this review dismissed event. """ - organizationName: String + url: URI! +} +""" +A request for a user to review a pull request. +""" +type ReviewRequest implements Node { """ - The HTTP path for the organization + Whether this request was created for a code owner """ - organizationResourcePath: URI + asCodeOwner: Boolean! """ - The HTTP URL for the organization + Identifies the primary key from the database. """ - organizationUrl: URI + databaseId: Int + id: ID! """ - The repository associated with the action + Identifies the pull request associated with this review request. """ - repository: Repository + pullRequest: PullRequest! """ - The name of the repository + The reviewer that is requested. """ - repositoryName: String + requestedReviewer: RequestedReviewer +} +""" +The connection type for ReviewRequest. +""" +type ReviewRequestConnection { """ - The HTTP path for the repository + A list of edges. """ - repositoryResourcePath: URI + edges: [ReviewRequestEdge] """ - The HTTP URL for the repository + A list of nodes. """ - repositoryUrl: URI + nodes: [ReviewRequest] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type ReviewRequestEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: ReviewRequest } """ -Audit log entry for a repo.config.enable_sockpuppet_disallowed event. +Represents an 'review_request_removed' event on a given pull request. """ -type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type ReviewRequestRemovedEvent implements Node { """ - The action name + Identifies the actor who performed the event. """ - action: String! + actor: Actor """ - The user who initiated the action + Identifies the date and time when the object was created. """ - actor: AuditEntryActor + createdAt: DateTime! + id: ID! """ - The IP address of the actor + PullRequest referenced by event. """ - actorIp: String + pullRequest: PullRequest! """ - A readable representation of the actor's location + Identifies the reviewer whose review request was removed. """ - actorLocation: ActorLocation + requestedReviewer: RequestedReviewer +} +""" +Represents an 'review_requested' event on a given pull request. +""" +type ReviewRequestedEvent implements Node { """ - The username of the user who initiated the action + Identifies the actor who performed the event. """ - actorLogin: String + actor: Actor """ - The HTTP path for the actor. + Identifies the date and time when the object was created. """ - actorResourcePath: URI + createdAt: DateTime! + id: ID! """ - The HTTP URL for the actor. + PullRequest referenced by event. """ - actorUrl: URI + pullRequest: PullRequest! """ - The time the action was initiated + Identifies the reviewer whose review was requested. """ - createdAt: PreciseDateTime! - id: ID! + requestedReviewer: RequestedReviewer +} +""" +A hovercard context with a message describing the current code review state of the pull +request. +""" +type ReviewStatusHovercardContext implements HovercardContext { """ - The corresponding operation type for the action + A string describing this context """ - operationType: OperationType + message: String! """ - The Organization associated with the Audit Entry. + An octicon to accompany this context """ - organization: Organization + octicon: String! """ - The name of the Organization. + The current status of the pull request with respect to code review. """ - organizationName: String + reviewDecision: PullRequestReviewDecision +} +""" +Autogenerated input type of RevokeEnterpriseOrganizationsMigratorRole +""" +input RevokeEnterpriseOrganizationsMigratorRoleInput { """ - The HTTP path for the organization + A unique identifier for the client performing the mutation. """ - organizationResourcePath: URI + clientMutationId: String """ - The HTTP URL for the organization + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. """ - organizationUrl: URI + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The repository associated with the action + The login of the user to revoke the migrator role """ - repository: Repository + login: String! +} +""" +Autogenerated return type of RevokeEnterpriseOrganizationsMigratorRole +""" +type RevokeEnterpriseOrganizationsMigratorRolePayload { """ - The name of the repository + A unique identifier for the client performing the mutation. """ - repositoryName: String + clientMutationId: String """ - The HTTP path for the repository + The organizations that had the migrator role revoked for the given user. """ - repositoryResourcePath: URI + organizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for the repository - """ - repositoryUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): OrganizationConnection +} +""" +Autogenerated input type of RevokeMigratorRole +""" +input RevokeMigratorRoleInput { """ - The user affected by the action + The user login or Team slug to revoke the migrator role from. """ - user: User + actor: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Specifies the type of the actor, can be either USER or TEAM. """ - userLogin: String + actorType: ActorType! """ - The HTTP path for the user. + A unique identifier for the client performing the mutation. """ - userResourcePath: URI + clientMutationId: String """ - The HTTP URL for the user. + The ID of the organization that the user/team belongs to. """ - userUrl: URI + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) } """ -Audit log entry for a repo.config.lock_anonymous_git_access event. +Autogenerated return type of RevokeMigratorRole """ -type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RevokeMigratorRolePayload { """ - The action name + A unique identifier for the client performing the mutation. """ - action: String! + clientMutationId: String """ - The user who initiated the action + Did the operation succeed? """ - actor: AuditEntryActor + success: Boolean +} +""" +Possible roles a user may have in relation to an organization. +""" +enum RoleInOrganization { """ - The IP address of the actor + A user who is a direct member of the organization. """ - actorIp: String + DIRECT_MEMBER """ - A readable representation of the actor's location + A user with full administrative access to the organization. """ - actorLocation: ActorLocation + OWNER """ - The username of the user who initiated the action + A user who is unaffiliated with the organization. """ - actorLogin: String + UNAFFILIATED +} +""" +The possible digest algorithms used to sign SAML requests for an identity provider. +""" +enum SamlDigestAlgorithm { """ - The HTTP path for the actor. + SHA1 """ - actorResourcePath: URI + SHA1 """ - The HTTP URL for the actor. + SHA256 """ - actorUrl: URI + SHA256 """ - The time the action was initiated + SHA384 """ - createdAt: PreciseDateTime! - id: ID! + SHA384 """ - The corresponding operation type for the action + SHA512 """ - operationType: OperationType + SHA512 +} + +""" +The possible signature algorithms used to sign SAML requests for a Identity Provider. +""" +enum SamlSignatureAlgorithm { + """ + RSA-SHA1 + """ + RSA_SHA1 """ - The Organization associated with the Audit Entry. + RSA-SHA256 """ - organization: Organization + RSA_SHA256 """ - The name of the Organization. + RSA-SHA384 """ - organizationName: String + RSA_SHA384 """ - The HTTP path for the organization + RSA-SHA512 """ - organizationResourcePath: URI + RSA_SHA512 +} +""" +A Saved Reply is text a user can use to reply quickly. +""" +type SavedReply implements Node { """ - The HTTP URL for the organization + The body of the saved reply. """ - organizationUrl: URI + body: String! """ - The repository associated with the action + The saved reply body rendered to HTML. """ - repository: Repository + bodyHTML: HTML! """ - The name of the repository + Identifies the primary key from the database. """ - repositoryName: String + databaseId: Int + id: ID! """ - The HTTP path for the repository + The title of the saved reply. """ - repositoryResourcePath: URI + title: String! """ - The HTTP URL for the repository + The user that saved this reply. """ - repositoryUrl: URI + user: Actor +} +""" +The connection type for SavedReply. +""" +type SavedReplyConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [SavedReplyEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [SavedReply] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -Audit log entry for a repo.config.unlock_anonymous_git_access event. +An edge in a connection. """ -type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type SavedReplyEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: SavedReply +} +""" +Ordering options for saved reply connections. +""" +input SavedReplyOrder { """ - The IP address of the actor + The ordering direction. """ - actorIp: String + direction: OrderDirection! """ - A readable representation of the actor's location + The field to order saved replies by. """ - actorLocation: ActorLocation + field: SavedReplyOrderField! +} +""" +Properties by which saved reply connections can be ordered. +""" +enum SavedReplyOrderField { """ - The username of the user who initiated the action + Order saved reply by when they were updated. """ - actorLogin: String + UPDATED_AT +} + +""" +The results of a search. +""" +union SearchResultItem = App | Discussion | Issue | MarketplaceListing | Organization | PullRequest | Repository | User +""" +A list of results that matched against a search query. Regardless of the number +of matches, a maximum of 1,000 results will be available across all types, +potentially split across many pages. +""" +type SearchResultItemConnection { """ - The HTTP path for the actor. + The total number of pieces of code that matched the search query. Regardless + of the total number of matches, a maximum of 1,000 results will be available + across all types. """ - actorResourcePath: URI + codeCount: Int! """ - The HTTP URL for the actor. + The total number of discussions that matched the search query. Regardless of + the total number of matches, a maximum of 1,000 results will be available + across all types. """ - actorUrl: URI + discussionCount: Int! """ - The time the action was initiated + A list of edges. """ - createdAt: PreciseDateTime! - id: ID! + edges: [SearchResultItemEdge] """ - The corresponding operation type for the action + The total number of issues that matched the search query. Regardless of the + total number of matches, a maximum of 1,000 results will be available across all types. """ - operationType: OperationType + issueCount: Int! """ - The Organization associated with the Audit Entry. + A list of nodes. """ - organization: Organization + nodes: [SearchResultItem] """ - The name of the Organization. + Information to aid in pagination. """ - organizationName: String + pageInfo: PageInfo! """ - The HTTP path for the organization + The total number of repositories that matched the search query. Regardless of + the total number of matches, a maximum of 1,000 results will be available + across all types. """ - organizationResourcePath: URI + repositoryCount: Int! """ - The HTTP URL for the organization + The total number of users that matched the search query. Regardless of the + total number of matches, a maximum of 1,000 results will be available across all types. """ - organizationUrl: URI + userCount: Int! """ - The repository associated with the action + The total number of wiki pages that matched the search query. Regardless of + the total number of matches, a maximum of 1,000 results will be available + across all types. """ - repository: Repository + wikiCount: Int! +} +""" +An edge in a connection. +""" +type SearchResultItemEdge { """ - The name of the repository + A cursor for use in pagination. """ - repositoryName: String + cursor: String! """ - The HTTP path for the repository + The item at the end of the edge. """ - repositoryResourcePath: URI + node: SearchResultItem """ - The HTTP URL for the repository + Text matches on the result found. """ - repositoryUrl: URI + textMatches: [TextMatch] +} +""" +Represents the individual results of a search. +""" +enum SearchType { """ - The user affected by the action + Returns matching discussions in repositories. """ - user: User + DISCUSSION """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Returns results matching issues in repositories. """ - userLogin: String + ISSUE """ - The HTTP path for the user. + Returns results matching repositories. """ - userResourcePath: URI + REPOSITORY """ - The HTTP URL for the user. + Returns results matching users and organizations on GitHub. """ - userUrl: URI + USER } """ -Audit log entry for a repo.create event. +A GitHub Security Advisory """ -type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type SecurityAdvisory implements Node { """ - The action name + The classification of the advisory """ - action: String! + classification: SecurityAdvisoryClassification! """ - The user who initiated the action + The CVSS associated with this advisory """ - actor: AuditEntryActor + cvss: CVSS! """ - The IP address of the actor + CWEs associated with this Advisory """ - actorIp: String + cwes( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): CWEConnection! """ - The username of the user who initiated the action + Identifies the primary key from the database. """ - actorLogin: String + databaseId: Int """ - The HTTP path for the actor. + This is a long plaintext description of the advisory """ - actorResourcePath: URI + description: String! """ - The HTTP URL for the actor. + The GitHub Security Advisory ID """ - actorUrl: URI + ghsaId: String! + id: ID! """ - The time the action was initiated + A list of identifiers for this advisory """ - createdAt: PreciseDateTime! + identifiers: [SecurityAdvisoryIdentifier!]! """ - The name of the parent repository for this forked repository. + The permalink for the advisory's dependabot alerts page """ - forkParentName: String + notificationsPermalink: URI """ - The name of the root repository for this netork. + The organization that originated the advisory """ - forkSourceName: String - id: ID! + origin: String! """ - The corresponding operation type for the action + The permalink for the advisory """ - operationType: OperationType + permalink: URI """ - The Organization associated with the Audit Entry. + When the advisory was published """ - organization: Organization + publishedAt: DateTime! """ - The name of the Organization. + A list of references for this advisory """ - organizationName: String + references: [SecurityAdvisoryReference!]! """ - The HTTP path for the organization + The severity of the advisory """ - organizationResourcePath: URI + severity: SecurityAdvisorySeverity! """ - The HTTP URL for the organization + A short plaintext summary of the advisory """ - organizationUrl: URI + summary: String! """ - The repository associated with the action + When the advisory was last updated """ - repository: Repository + updatedAt: DateTime! """ - The name of the repository + Vulnerabilities associated with this Advisory """ - repositoryName: String + vulnerabilities( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + A list of advisory classifications to filter vulnerabilities by. + """ + classifications: [SecurityAdvisoryClassification!] + + """ + An ecosystem to filter vulnerabilities by. + """ + ecosystem: SecurityAdvisoryEcosystem + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the returned topics. + """ + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + + """ + A package name to filter vulnerabilities by. + """ + package: String + + """ + A list of severities to filter vulnerabilities by. + """ + severities: [SecurityAdvisorySeverity!] + ): SecurityVulnerabilityConnection! """ - The HTTP path for the repository + When the advisory was withdrawn, if it has been withdrawn """ - repositoryResourcePath: URI + withdrawnAt: DateTime +} +""" +Classification of the advisory. +""" +enum SecurityAdvisoryClassification { """ - The HTTP URL for the repository + Classification of general advisories. """ - repositoryUrl: URI + GENERAL """ - The user affected by the action + Classification of malware advisories. """ - user: User + MALWARE +} +""" +The connection type for SecurityAdvisory. +""" +type SecurityAdvisoryConnection { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of edges. """ - userLogin: String + edges: [SecurityAdvisoryEdge] """ - The HTTP path for the user. + A list of nodes. """ - userResourcePath: URI + nodes: [SecurityAdvisory] """ - The HTTP URL for the user. + Information to aid in pagination. """ - userUrl: URI + pageInfo: PageInfo! """ - The visibility of the repository + Identifies the total count of items in the connection. """ - visibility: RepoCreateAuditEntryVisibility + totalCount: Int! } """ -The privacy of a repository +The possible ecosystems of a security vulnerability's package. """ -enum RepoCreateAuditEntryVisibility { +enum SecurityAdvisoryEcosystem { """ - The repository is visible only to users in the same business. + GitHub Actions """ - INTERNAL + ACTIONS """ - The repository is visible only to those with explicit access. + PHP packages hosted at packagist.org """ - PRIVATE + COMPOSER """ - The repository is visible to everyone. + Erlang/Elixir packages hosted at hex.pm """ - PUBLIC -} + ERLANG -""" -Audit log entry for a repo.destroy event. -""" -type RepoDestroyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + Go modules """ - action: String! + GO """ - The user who initiated the action + Java artifacts hosted at the Maven central repository """ - actor: AuditEntryActor + MAVEN """ - The IP address of the actor + JavaScript packages hosted at npmjs.com """ - actorIp: String + NPM """ - A readable representation of the actor's location + .NET packages hosted at the NuGet Gallery """ - actorLocation: ActorLocation + NUGET """ - The username of the user who initiated the action + Python packages hosted at PyPI.org """ - actorLogin: String + PIP """ - The HTTP path for the actor. + Dart packages hosted at pub.dev """ - actorResourcePath: URI + PUB """ - The HTTP URL for the actor. + Ruby gems hosted at RubyGems.org """ - actorUrl: URI + RUBYGEMS """ - The time the action was initiated + Rust crates """ - createdAt: PreciseDateTime! - id: ID! + RUST +} +""" +An edge in a connection. +""" +type SecurityAdvisoryEdge { """ - The corresponding operation type for the action + A cursor for use in pagination. """ - operationType: OperationType + cursor: String! """ - The Organization associated with the Audit Entry. + The item at the end of the edge. """ - organization: Organization + node: SecurityAdvisory +} +""" +A GitHub Security Advisory Identifier +""" +type SecurityAdvisoryIdentifier { """ - The name of the Organization. + The identifier type, e.g. GHSA, CVE """ - organizationName: String + type: String! """ - The HTTP path for the organization + The identifier """ - organizationResourcePath: URI + value: String! +} +""" +An advisory identifier to filter results on. +""" +input SecurityAdvisoryIdentifierFilter { """ - The HTTP URL for the organization + The identifier type. """ - organizationUrl: URI + type: SecurityAdvisoryIdentifierType! """ - The repository associated with the action + The identifier string. Supports exact or partial matching. """ - repository: Repository + value: String! +} +""" +Identifier formats available for advisories. +""" +enum SecurityAdvisoryIdentifierType { """ - The name of the repository + Common Vulnerabilities and Exposures Identifier. """ - repositoryName: String + CVE """ - The HTTP path for the repository + GitHub Security Advisory ID. """ - repositoryResourcePath: URI + GHSA +} +""" +Ordering options for security advisory connections +""" +input SecurityAdvisoryOrder { """ - The HTTP URL for the repository + The ordering direction. """ - repositoryUrl: URI + direction: OrderDirection! """ - The user affected by the action + The field to order security advisories by. """ - user: User + field: SecurityAdvisoryOrderField! +} +""" +Properties by which security advisory connections can be ordered. +""" +enum SecurityAdvisoryOrderField { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Order advisories by publication time """ - userLogin: String + PUBLISHED_AT """ - The HTTP path for the user. + Order advisories by update time """ - userResourcePath: URI + UPDATED_AT +} +""" +An individual package +""" +type SecurityAdvisoryPackage { """ - The HTTP URL for the user. + The ecosystem the package belongs to, e.g. RUBYGEMS, NPM """ - userUrl: URI + ecosystem: SecurityAdvisoryEcosystem! """ - The visibility of the repository + The package name """ - visibility: RepoDestroyAuditEntryVisibility + name: String! } """ -The privacy of a repository +An individual package version """ -enum RepoDestroyAuditEntryVisibility { +type SecurityAdvisoryPackageVersion { """ - The repository is visible only to users in the same business. + The package name or version """ - INTERNAL + identifier: String! +} +""" +A GitHub Security Advisory Reference +""" +type SecurityAdvisoryReference { """ - The repository is visible only to those with explicit access. + A publicly accessible reference """ - PRIVATE + url: URI! +} +""" +Severity of the vulnerability. +""" +enum SecurityAdvisorySeverity { """ - The repository is visible to everyone. + Critical. """ - PUBLIC + CRITICAL + + """ + High. + """ + HIGH + + """ + Low. + """ + LOW + + """ + Moderate. + """ + MODERATE } """ -Audit log entry for a repo.remove_member event. +An individual vulnerability within an Advisory """ -type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type SecurityVulnerability { """ - The action name + The Advisory associated with this Vulnerability """ - action: String! + advisory: SecurityAdvisory! """ - The user who initiated the action + The first version containing a fix for the vulnerability """ - actor: AuditEntryActor + firstPatchedVersion: SecurityAdvisoryPackageVersion """ - The IP address of the actor + A description of the vulnerable package """ - actorIp: String + package: SecurityAdvisoryPackage! """ - A readable representation of the actor's location + The severity of the vulnerability within this package """ - actorLocation: ActorLocation + severity: SecurityAdvisorySeverity! """ - The username of the user who initiated the action + When the vulnerability was last updated """ - actorLogin: String + updatedAt: DateTime! """ - The HTTP path for the actor. + A string that describes the vulnerable package versions. + This string follows a basic syntax with a few forms. + + `= 0.2.0` denotes a single vulnerable version. + + `<= 1.0.8` denotes a version range up to and including the specified version + + `< 0.1.11` denotes a version range up to, but excluding, the specified version + + `>= 4.3.0, < 4.3.5` denotes a version range with a known minimum and maximum version. + + `>= 0.0.1` denotes a version range with a known minimum, but no known maximum """ - actorResourcePath: URI + vulnerableVersionRange: String! +} +""" +The connection type for SecurityVulnerability. +""" +type SecurityVulnerabilityConnection { """ - The HTTP URL for the actor. + A list of edges. """ - actorUrl: URI + edges: [SecurityVulnerabilityEdge] """ - The time the action was initiated + A list of nodes. """ - createdAt: PreciseDateTime! - id: ID! + nodes: [SecurityVulnerability] """ - The corresponding operation type for the action + Information to aid in pagination. """ - operationType: OperationType + pageInfo: PageInfo! """ - The Organization associated with the Audit Entry. + Identifies the total count of items in the connection. """ - organization: Organization + totalCount: Int! +} +""" +An edge in a connection. +""" +type SecurityVulnerabilityEdge { """ - The name of the Organization. + A cursor for use in pagination. """ - organizationName: String + cursor: String! """ - The HTTP path for the organization + The item at the end of the edge. """ - organizationResourcePath: URI + node: SecurityVulnerability +} +""" +Ordering options for security vulnerability connections +""" +input SecurityVulnerabilityOrder { """ - The HTTP URL for the organization + The ordering direction. """ - organizationUrl: URI + direction: OrderDirection! """ - The repository associated with the action + The field to order security vulnerabilities by. """ - repository: Repository + field: SecurityVulnerabilityOrderField! +} +""" +Properties by which security vulnerability connections can be ordered. +""" +enum SecurityVulnerabilityOrderField { """ - The name of the repository + Order vulnerability by update time """ - repositoryName: String + UPDATED_AT +} +""" +Autogenerated input type of SetEnterpriseIdentityProvider +""" +input SetEnterpriseIdentityProviderInput { """ - The HTTP path for the repository + A unique identifier for the client performing the mutation. """ - repositoryResourcePath: URI + clientMutationId: String """ - The HTTP URL for the repository + The digest algorithm used to sign SAML requests for the identity provider. """ - repositoryUrl: URI + digestMethod: SamlDigestAlgorithm! """ - The user affected by the action + The ID of the enterprise on which to set an identity provider. """ - user: User + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The x509 certificate used by the identity provider to sign assertions and responses. """ - userLogin: String + idpCertificate: String! """ - The HTTP path for the user. + The Issuer Entity ID for the SAML identity provider """ - userResourcePath: URI + issuer: String """ - The HTTP URL for the user. + The signature algorithm used to sign SAML requests for the identity provider. """ - userUrl: URI + signatureMethod: SamlSignatureAlgorithm! """ - The visibility of the repository + The URL endpoint for the identity provider's SAML SSO. """ - visibility: RepoRemoveMemberAuditEntryVisibility + ssoUrl: URI! } """ -The privacy of a repository +Autogenerated return type of SetEnterpriseIdentityProvider """ -enum RepoRemoveMemberAuditEntryVisibility { - """ - The repository is visible only to users in the same business. +type SetEnterpriseIdentityProviderPayload { """ - INTERNAL - - """ - The repository is visible only to those with explicit access. + A unique identifier for the client performing the mutation. """ - PRIVATE + clientMutationId: String """ - The repository is visible to everyone. + The identity provider for the enterprise. """ - PUBLIC + identityProvider: EnterpriseIdentityProvider } """ -Audit log entry for a repo.remove_topic event. +Autogenerated input type of SetOrganizationInteractionLimit """ -type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { +input SetOrganizationInteractionLimitInput { """ - The action name + A unique identifier for the client performing the mutation. """ - action: String! + clientMutationId: String """ - The user who initiated the action + When this limit should expire. """ - actor: AuditEntryActor + expiry: RepositoryInteractionLimitExpiry """ - The IP address of the actor + The limit to set. """ - actorIp: String + limit: RepositoryInteractionLimit! """ - A readable representation of the actor's location + The ID of the organization to set a limit for. """ - actorLocation: ActorLocation + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} +""" +Autogenerated return type of SetOrganizationInteractionLimit +""" +type SetOrganizationInteractionLimitPayload { """ - The username of the user who initiated the action + A unique identifier for the client performing the mutation. """ - actorLogin: String + clientMutationId: String """ - The HTTP path for the actor. + The organization that the interaction limit was set for. """ - actorResourcePath: URI + organization: Organization +} +""" +Autogenerated input type of SetRepositoryInteractionLimit +""" +input SetRepositoryInteractionLimitInput { """ - The HTTP URL for the actor. + A unique identifier for the client performing the mutation. """ - actorUrl: URI + clientMutationId: String """ - The time the action was initiated + When this limit should expire. """ - createdAt: PreciseDateTime! - id: ID! + expiry: RepositoryInteractionLimitExpiry """ - The corresponding operation type for the action + The limit to set. """ - operationType: OperationType + limit: RepositoryInteractionLimit! """ - The Organization associated with the Audit Entry. + The ID of the repository to set a limit for. """ - organization: Organization + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} +""" +Autogenerated return type of SetRepositoryInteractionLimit +""" +type SetRepositoryInteractionLimitPayload { """ - The name of the Organization. + A unique identifier for the client performing the mutation. """ - organizationName: String + clientMutationId: String """ - The HTTP path for the organization + The repository that the interaction limit was set for. """ - organizationResourcePath: URI + repository: Repository +} +""" +Autogenerated input type of SetUserInteractionLimit +""" +input SetUserInteractionLimitInput { """ - The HTTP URL for the organization + A unique identifier for the client performing the mutation. """ - organizationUrl: URI + clientMutationId: String """ - The repository associated with the action + When this limit should expire. """ - repository: Repository + expiry: RepositoryInteractionLimitExpiry """ - The name of the repository + The limit to set. """ - repositoryName: String + limit: RepositoryInteractionLimit! """ - The HTTP path for the repository + The ID of the user to set a limit for. """ - repositoryResourcePath: URI + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of SetUserInteractionLimit +""" +type SetUserInteractionLimitPayload { """ - The HTTP URL for the repository + A unique identifier for the client performing the mutation. """ - repositoryUrl: URI + clientMutationId: String """ - The name of the topic added to the repository + The user that the interaction limit was set for. """ - topic: Topic + user: User +} +""" +Represents an S/MIME signature on a Commit or Tag. +""" +type SmimeSignature implements GitSignature { """ - The name of the topic added to the repository + Email used to sign this object. """ - topicName: String + email: String! """ - The user affected by the action + True if the signature is valid and verified by GitHub. """ - user: User + isValid: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Payload for GPG signing object. Raw ODB object without the signature header. """ - userLogin: String + payload: String! """ - The HTTP path for the user. + ASCII-armored signature header from object. """ - userResourcePath: URI + signature: String! """ - The HTTP URL for the user. + GitHub user corresponding to the email signing this commit. """ - userUrl: URI -} + signer: User -""" -The reasons a piece of content can be reported or minimized. -""" -enum ReportedContentClassifiers { """ - An abusive or harassing piece of content + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. """ - ABUSE + state: GitSignatureState! """ - An irrelevant piece of content + True if the signature was made with GitHub's signing key. """ - OFF_TOPIC + wasSignedByGitHub: Boolean! +} +""" +Social media profile associated with a user. +""" +type SocialAccount { """ - An outdated piece of content + Name of the social media account as it appears on the profile. """ - OUTDATED + displayName: String! """ - The content has been resolved + Software or company that hosts the social media account. """ - RESOLVED + provider: SocialAccountProvider! """ - A spammy piece of content + URL of the social media account. """ - SPAM + url: URI! } """ -A repository contains the content for a project. +The connection type for SocialAccount. """ -type Repository implements Node & ProjectOwner & RegistryPackageOwner & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable { +type SocialAccountConnection { """ - A list of users that can be assigned to issues in this repository. + A list of edges. """ - assignableUsers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Filters users with query on user name and login - """ - query: String - ): UserConnection! + edges: [SocialAccountEdge] """ - A list of branch protection rules for this repository. + A list of nodes. """ - branchProtectionRules( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): BranchProtectionRuleConnection! + nodes: [SocialAccount] """ - Returns the code of conduct for this repository + Information to aid in pagination. """ - codeOfConduct: CodeOfConduct + pageInfo: PageInfo! """ - A list of collaborators associated with the repository. + Identifies the total count of items in the connection. """ - collaborators( - """ - Collaborators affiliation level with a repository. - """ - affiliation: CollaboratorAffiliation - - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Filters users with query on user name and login - """ - query: String - ): RepositoryCollaboratorConnection + totalCount: Int! +} +""" +An edge in a connection. +""" +type SocialAccountEdge { """ - A list of commit comments associated with the repository. + A cursor for use in pagination. """ - commitComments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): CommitCommentConnection! + cursor: String! """ - Identifies the date and time when the object was created. + The item at the end of the edge. """ - createdAt: DateTime! + node: SocialAccount +} +""" +Software or company that hosts social media accounts. +""" +enum SocialAccountProvider { """ - Identifies the primary key from the database. + Social media and networking website. """ - databaseId: Int + FACEBOOK """ - The Ref associated with the repository's default branch. + Catch-all for social media providers that do not yet have specific handling. """ - defaultBranchRef: Ref + GENERIC """ - A list of dependency manifests contained in the repository + Fork of Mastodon with a greater focus on local posting. """ - dependencyGraphManifests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Cursor to paginate dependencies - """ - dependenciesAfter: String - - """ - Number of dependencies to fetch - """ - dependenciesFirst: Int - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Flag to scope to only manifests with dependencies - """ - withDependencies: Boolean - ): DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview") + HOMETOWN """ - A list of deploy keys that are on this repository. + Social media website with a focus on photo and video sharing. """ - deployKeys( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): DeployKeyConnection! + INSTAGRAM """ - Deployments associated with the repository + Professional networking website. """ - deployments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Environments to list deployments for - """ - environments: [String!] - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for deployments returned from the connection. - """ - orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} - ): DeploymentConnection! + LINKEDIN """ - The description of the repository. + Open-source federated microblogging service. """ - description: String + MASTODON """ - The description of the repository rendered to HTML. + Social news aggregation and discussion website. """ - descriptionHTML: HTML! + REDDIT """ - The number of kilobytes this repository occupies on disk. + Live-streaming service. """ - diskUsage: Int + TWITCH """ - Returns how many forks there are of this repository in the whole network. + Microblogging website. """ - forkCount: Int! + TWITTER """ - A list of direct forked repositories. + Online video platform. """ - forks( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] - - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder - - """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. - """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] - - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + YOUTUBE +} + +""" +Entities that can sponsor others via GitHub Sponsors +""" +union Sponsor = Organization | User +""" +The connection type for Sponsor. +""" +type SponsorConnection { """ - Indicates if the repository has issues feature enabled. + A list of edges. """ - hasIssuesEnabled: Boolean! + edges: [SponsorEdge] """ - Indicates if the repository has wiki feature enabled. + A list of nodes. """ - hasWikiEnabled: Boolean! + nodes: [Sponsor] """ - The repository's URL. + Information to aid in pagination. """ - homepageUrl: URI - id: ID! + pageInfo: PageInfo! """ - Indicates if the repository is unmaintained. + Identifies the total count of items in the connection. """ - isArchived: Boolean! + totalCount: Int! +} +""" +Represents a user or organization who is sponsoring someone in GitHub Sponsors. +""" +type SponsorEdge { """ - Returns whether or not this repository disabled. + A cursor for use in pagination. """ - isDisabled: Boolean! + cursor: String! """ - Identifies if the repository is a fork. + The item at the end of the edge. """ - isFork: Boolean! + node: Sponsor +} +""" +Ordering options for connections to get sponsor entities for GitHub Sponsors. +""" +input SponsorOrder { """ - Indicates if the repository has been locked or not. + The ordering direction. """ - isLocked: Boolean! + direction: OrderDirection! """ - Identifies if the repository is a mirror. + The field to order sponsor entities by. """ - isMirror: Boolean! + field: SponsorOrderField! +} +""" +Properties by which sponsor connections can be ordered. +""" +enum SponsorOrderField { """ - Identifies if the repository is private. + Order sponsorable entities by login (username). """ - isPrivate: Boolean! + LOGIN """ - Identifies if the repository is a template that can be used to generate new repositories. + Order sponsors by their relevance to the viewer. """ - isTemplate: Boolean! + RELEVANCE +} +""" +Entities that can sponsor or be sponsored through GitHub Sponsors. +""" +interface Sponsorable { """ - Returns a single issue from the current repository by number. + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). """ - issue( - """ - The number for the issue to be returned. - """ - number: Int! - ): Issue + estimatedNextSponsorsPayoutInCents: Int! """ - Returns a single issue-like object from the current repository by number. + True if this user/organization has a GitHub Sponsors listing. """ - issueOrPullRequest( - """ - The number for the issue to be returned. - """ - number: Int! - ): IssueOrPullRequest + hasSponsorsListing: Boolean! """ - A list of issues that have been opened in the repository. + Whether the given account is sponsoring this user/organization. """ - issues( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Filtering options for issues returned from the connection. - """ - filterBy: IssueFilters - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - - """ - Returns the last _n_ elements from the list. - """ - last: Int - + isSponsoredBy( """ - Ordering options for issues returned from the connection. + The target account's login. """ - orderBy: IssueOrder + accountLogin: String! + ): Boolean! - """ - A list of states to filter the issues by. - """ - states: [IssueState!] - ): IssueConnection! + """ + True if the viewer is sponsored by this user/organization. + """ + isSponsoringViewer: Boolean! """ - Returns a single label by name + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). """ - label( - """ - Label name - """ - name: String! - ): Label + monthlyEstimatedSponsorsIncomeInCents: Int! """ - A list of labels associated with the repository. + List of users and organizations this entity is sponsoring. """ - labels( + sponsoring( """ Returns the elements in the list that come after the specified cursor. """ @@ -27517,15 +44778,15 @@ type Repository implements Node & ProjectOwner & RegistryPackageOwner & Reposito last: Int """ - If provided, searches labels by name and description. + Ordering options for the users and organizations returned from the connection. """ - query: String - ): LabelConnection + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! """ - A list containing a breakdown of the language composition of the repository. + List of sponsors for this user or organization. """ - languages( + sponsors( """ Returns the elements in the list that come after the specified cursor. """ @@ -27547,65 +44808,26 @@ type Repository implements Node & ProjectOwner & RegistryPackageOwner & Reposito last: Int """ - Order for connection - """ - orderBy: LanguageOrder - ): LanguageConnection - - """ - The license associated with the repository - """ - licenseInfo: License - - """ - The reason the repository has been locked. - """ - lockReason: RepositoryLockReason - - """ - A list of Users that can be mentioned in the context of the repository. - """ - mentionableUsers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. + Ordering options for sponsors returned from the connection. """ - first: Int + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} """ - Returns the last _n_ elements from the list. + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. """ - last: Int - ): UserConnection! - - """ - Whether or not PRs are merged with a merge commit on this repository. - """ - mergeCommitAllowed: Boolean! + tierId: ID + ): SponsorConnection! """ - Returns a single milestone from the current repository by number. + Events involving this sponsorable, such as new sponsorships. """ - milestone( + sponsorsActivities( """ - The number for the milestone to be returned. + Filter activities to only the specified actions. """ - number: Int! - ): Milestone + actions: [SponsorsActivityAction!] = [] - """ - A list of milestones associated with the repository. - """ - milestones( """ Returns the elements in the list that come after the specified cursor. """ @@ -27621,71 +44843,72 @@ type Repository implements Node & ProjectOwner & RegistryPackageOwner & Reposito """ first: Int + """ + Whether to include those events where this sponsorable acted as the sponsor. + Defaults to only including events where this sponsorable was the recipient + of a sponsorship. + """ + includeAsSponsor: Boolean = false + """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for milestones. + Ordering options for activity returned from the connection. """ - orderBy: MilestoneOrder + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} """ - Filter by the state of the milestones. + Filter activities returned to only those that occurred in the most recent + specified time period. Set to ALL to avoid filtering by when the activity + occurred. Will be ignored if `since` or `until` is given. """ - states: [MilestoneState!] - ): MilestoneConnection - - """ - The repository's original mirror URL. - """ - mirrorUrl: URI - - """ - The name of the repository. - """ - name: String! - - """ - The repository's name with owner. - """ - nameWithOwner: String! + period: SponsorsActivityPeriod = MONTH - """ - A Git object in the repository - """ - object( """ - A Git revision expression suitable for rev-parse + Filter activities to those that occurred on or after this time. """ - expression: String + since: DateTime """ - The Git object ID + Filter activities to those that occurred before this time. """ - oid: GitObjectID - ): GitObject + until: DateTime + ): SponsorsActivityConnection! """ - The image used to represent this repository in Open Graph data. + The GitHub Sponsors listing for this user or organization. """ - openGraphImageUrl: URI! + sponsorsListing: SponsorsListing """ - The User owner of the repository. + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - owner: RepositoryOwner! + sponsorshipForViewerAsSponsor( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - The repository parent, if this is a fork. + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - parent: Repository + sponsorshipForViewerAsSponsorable( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - A list of pinned issues for this repository. + List of sponsorship updates sent from this sponsorable to sponsors. """ - pinnedIssues( + sponsorshipNewsletters( """ Returns the elements in the list that come after the specified cursor. """ @@ -27705,27 +44928,23 @@ type Repository implements Node & ProjectOwner & RegistryPackageOwner & Reposito Returns the last _n_ elements from the list. """ last: Int - ): PinnedIssueConnection @preview(toggledBy: "elektra-preview") - """ - The primary language of the repository's code. - """ - primaryLanguage: Language + """ + Ordering options for sponsorship updates returned from the connection. + """ + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - Find project by number. + The sponsorships where this user or organization is the maintainer receiving the funds. """ - project( + sponsorshipsAsMaintainer( """ - The project number to find. + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. """ - number: Int! - ): Project + activeOnly: Boolean = true - """ - A list of projects under the owner. - """ - projects( """ Returns the elements in the list that come after the specified cursor. """ @@ -27742,60 +44961,36 @@ type Repository implements Node & ProjectOwner & RegistryPackageOwner & Reposito first: Int """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for projects returned from the connection + Whether or not to include private sponsorships in the result set """ - orderBy: ProjectOrder + includePrivate: Boolean = false """ - Query to search projects by, currently only searching by name. + Returns the last _n_ elements from the list. """ - search: String + last: Int """ - A list of states to filter the projects by. + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. """ - states: [ProjectState!] - ): ProjectConnection! - - """ - The HTTP path listing the repository's projects - """ - projectsResourcePath: URI! - - """ - The HTTP URL listing the repository's projects - """ - projectsUrl: URI! + orderBy: SponsorshipOrder + ): SponsorshipConnection! """ - Returns a single pull request from the current repository by number. + The sponsorships where this user or organization is the funder. """ - pullRequest( + sponsorshipsAsSponsor( """ - The number for the pull request to be returned. + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. """ - number: Int! - ): PullRequest + activeOnly: Boolean = true - """ - A list of pull requests that have been opened in the repository. - """ - pullRequests( """ Returns the elements in the list that come after the specified cursor. """ after: String - """ - The base ref name to filter the pull requests by. - """ - baseRefName: String - """ Returns the elements in the list that come before the specified cursor. """ @@ -27807,2150 +45002,1889 @@ type Repository implements Node & ProjectOwner & RegistryPackageOwner & Reposito first: Int """ - The head ref name to filter the pull requests by. + Returns the last _n_ elements from the list. """ - headRefName: String + last: Int """ - A list of label names to filter the pull requests by. + Filter sponsorships returned to those for the specified maintainers. That + is, the recipient of the sponsorship is a user or organization with one of + the given logins. """ - labels: [String!] + maintainerLogins: [String!] """ - Returns the last _n_ elements from the list. + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. """ - last: Int + orderBy: SponsorshipOrder + ): SponsorshipConnection! + """ + The amount in United States cents (e.g., 500 = $5.00 USD) that this entity has + spent on GitHub to fund sponsorships. Only returns a value when viewed by the + user themselves or by a user who can manage sponsorships for the requested organization. + """ + totalSponsorshipAmountAsSponsorInCents( """ - Ordering options for pull requests returned from the connection. + Filter payments to those that occurred on or after this time. """ - orderBy: IssueOrder + since: DateTime """ - A list of states to filter the pull requests by. + Filter payments to those made to the users or organizations with the specified usernames. """ - states: [PullRequestState!] - ): PullRequestConnection! + sponsorableLogins: [String!] = [] + + """ + Filter payments to those that occurred before this time. + """ + until: DateTime + ): Int """ - Identifies when the repository was last pushed to. + Whether or not the viewer is able to sponsor this user/organization. """ - pushedAt: DateTime + viewerCanSponsor: Boolean! """ - Whether or not rebase-merging is enabled on this repository. + True if the viewer is sponsoring this user/organization. """ - rebaseMergeAllowed: Boolean! + viewerIsSponsoring: Boolean! +} +""" +Entities that can be sponsored via GitHub Sponsors +""" +union SponsorableItem = Organization | User + +""" +The connection type for SponsorableItem. +""" +type SponsorableItemConnection { """ - Fetch a given ref from the repository + A list of edges. """ - ref( - """ - The ref to retrieve. Fully qualified matches are checked in order - (`refs/heads/master`) before falling back onto checks for short name matches (`master`). - """ - qualifiedName: String! - ): Ref + edges: [SponsorableItemEdge] """ - Fetch a list of refs from the repository + A list of nodes. """ - refs( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - DEPRECATED: use orderBy. The ordering direction. - """ - direction: OrderDirection - - """ - Returns the first _n_ elements from the list. - """ - first: Int + nodes: [SponsorableItem] - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! - """ - Ordering options for refs returned from the connection. - """ - orderBy: RefOrder + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} - """ - A ref name prefix like `refs/heads/`, `refs/tags/`, etc. - """ - refPrefix: String! - ): RefConnection +""" +An edge in a connection. +""" +type SponsorableItemEdge { + """ + A cursor for use in pagination. + """ + cursor: String! """ - A list of registry packages under the owner. + The item at the end of the edge. """ - registryPackages( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + node: SponsorableItem +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Ordering options for connections to get sponsorable entities for GitHub Sponsors. +""" +input SponsorableOrder { + """ + The ordering direction. + """ + direction: OrderDirection! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The field to order sponsorable entities by. + """ + field: SponsorableOrderField! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Properties by which sponsorable connections can be ordered. +""" +enum SponsorableOrderField { + """ + Order sponsorable entities by login (username). + """ + LOGIN +} - """ - Find registry package by name. - """ - name: String +""" +An event related to sponsorship activity. +""" +type SponsorsActivity implements Node { + """ + What action this activity indicates took place. + """ + action: SponsorsActivityAction! + id: ID! - """ - Find registry packages by their names. - """ - names: [String] + """ + The tier that the sponsorship used to use, for tier change events. + """ + previousSponsorsTier: SponsorsTier - """ - Filter registry package by type. - """ - packageType: RegistryPackageType + """ + The user or organization who triggered this activity and was/is sponsoring the sponsorable. + """ + sponsor: Sponsor - """ - Filter registry package by whether it is publicly visible - """ - publicOnly: Boolean = false + """ + The user or organization that is being sponsored, the maintainer. + """ + sponsorable: Sponsorable! - """ - Filter registry package by type (string). - """ - registryPackageType: String + """ + The associated sponsorship tier. + """ + sponsorsTier: SponsorsTier - """ - Find registry packages in a repository. - """ - repositoryId: ID - ): RegistryPackageConnection! + """ + The timestamp of this event. + """ + timestamp: DateTime +} +""" +The possible actions that GitHub Sponsors activities can represent. +""" +enum SponsorsActivityAction { """ - Lookup a single release given various criteria. + The activity was cancelling a sponsorship. """ - release( - """ - The name of the Tag the Release was created from - """ - tagName: String! - ): Release + CANCELLED_SPONSORSHIP """ - List of releases which are dependent on this repository. + The activity was starting a sponsorship. """ - releases( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + NEW_SPONSORSHIP - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The activity was scheduling a downgrade or cancellation. + """ + PENDING_CHANGE - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The activity was funds being refunded to the sponsor or GitHub. + """ + REFUND - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The activity was disabling matching for a previously matched sponsorship. + """ + SPONSOR_MATCH_DISABLED - """ - Order for connection - """ - orderBy: ReleaseOrder - ): ReleaseConnection! + """ + The activity was changing the sponsorship tier, either directly by the sponsor or by a scheduled/pending change. + """ + TIER_CHANGE +} +""" +The connection type for SponsorsActivity. +""" +type SponsorsActivityConnection { """ - A list of applied repository-topic associations for this repository. + A list of edges. """ - repositoryTopics( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + edges: [SponsorsActivityEdge] - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + A list of nodes. + """ + nodes: [SponsorsActivity] - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): RepositoryTopicConnection! + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} +""" +An edge in a connection. +""" +type SponsorsActivityEdge { """ - The HTTP path for this repository + A cursor for use in pagination. """ - resourcePath: URI! + cursor: String! """ - A description of the repository, rendered to HTML without any links in it. + The item at the end of the edge. """ - shortDescriptionHTML( - """ - How many characters to return. - """ - limit: Int = 200 - ): HTML! + node: SponsorsActivity +} +""" +Ordering options for GitHub Sponsors activity connections. +""" +input SponsorsActivityOrder { """ - Whether or not squash-merging is enabled on this repository. + The ordering direction. """ - squashMergeAllowed: Boolean! + direction: OrderDirection! """ - The SSH URL to clone this repository + The field to order activity by. """ - sshUrl: GitSSHRemote! + field: SponsorsActivityOrderField! +} +""" +Properties by which GitHub Sponsors activity connections can be ordered. +""" +enum SponsorsActivityOrderField { """ - A list of users who have starred this starrable. + Order activities by when they happened. """ - stargazers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Order for connection - """ - orderBy: StarOrder - ): StargazerConnection! + TIMESTAMP +} +""" +The possible time periods for which Sponsors activities can be requested. +""" +enum SponsorsActivityPeriod { """ - Temporary authentication token for cloning this repository. + Don't restrict the activity to any date range, include all activity. """ - tempCloneToken: String @preview(toggledBy: "daredevil-preview") + ALL """ - The repository from which this repository was generated, if any. + The previous calendar day. """ - templateRepository: Repository + DAY """ - Identifies the date and time when the object was last updated. + The previous thirty days. """ - updatedAt: DateTime! + MONTH """ - The HTTP URL for this repository + The previous seven days. """ - url: URI! + WEEK +} +""" +Represents countries or regions for billing and residence for a GitHub Sponsors profile. +""" +enum SponsorsCountryOrRegionCode { """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + Andorra """ - usesCustomOpenGraphImage: Boolean! + AD """ - Indicates whether the viewer has admin permissions on this repository. + United Arab Emirates """ - viewerCanAdminister: Boolean! + AE """ - Can the current viewer create new projects on this owner. + Afghanistan """ - viewerCanCreateProjects: Boolean! + AF """ - Check if the viewer is able to change their subscription status for the repository. + Antigua and Barbuda """ - viewerCanSubscribe: Boolean! + AG """ - Indicates whether the viewer can update the topics of this repository. + Anguilla """ - viewerCanUpdateTopics: Boolean! + AI """ - Returns a boolean indicating whether the viewing user has starred this starrable. + Albania """ - viewerHasStarred: Boolean! + AL """ - The users permission level on the repository. Will return null if authenticated as an GitHub App. + Armenia """ - viewerPermission: RepositoryPermission + AM """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + Angola """ - viewerSubscription: SubscriptionState + AO """ - A list of vulnerability alerts that are on this repository. + Antarctica """ - vulnerabilityAlerts( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): RepositoryVulnerabilityAlertConnection @preview(toggledBy: "vixen-preview") + AQ """ - A list of users watching the repository. + Argentina """ - watchers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! -} + AR -""" -The affiliation of a user to a repository -""" -enum RepositoryAffiliation { """ - Repositories that the user has been added to as a collaborator. + American Samoa """ - COLLABORATOR + AS """ - Repositories that the user has access to through being a member of an - organization. This includes every repository on every team that the user is on. + Austria """ - ORGANIZATION_MEMBER + AT """ - Repositories that are owned by the authenticated user. + Australia """ - OWNER -} + AU -""" -Metadata for an audit entry with action repo.* -""" -interface RepositoryAuditEntryData { """ - The repository associated with the action + Aruba """ - repository: Repository + AW """ - The name of the repository + Åland """ - repositoryName: String + AX """ - The HTTP path for the repository + Azerbaijan """ - repositoryResourcePath: URI + AZ """ - The HTTP URL for the repository + Bosnia and Herzegovina """ - repositoryUrl: URI -} + BA -""" -The connection type for User. -""" -type RepositoryCollaboratorConnection { """ - A list of edges. + Barbados """ - edges: [RepositoryCollaboratorEdge] + BB """ - A list of nodes. + Bangladesh """ - nodes: [User] + BD """ - Information to aid in pagination. + Belgium """ - pageInfo: PageInfo! + BE """ - Identifies the total count of items in the connection. + Burkina Faso """ - totalCount: Int! -} + BF -""" -Represents a user who is a collaborator of a repository. -""" -type RepositoryCollaboratorEdge { """ - A cursor for use in pagination. + Bulgaria """ - cursor: String! - node: User! + BG """ - The permission the user has on the repository. + Bahrain """ - permission: RepositoryPermission! + BH """ - A list of sources for the user's access to the repository. + Burundi """ - permissionSources: [PermissionSource!] -} + BI -""" -A list of repositories owned by the subject. -""" -type RepositoryConnection { """ - A list of edges. + Benin """ - edges: [RepositoryEdge] + BJ """ - A list of nodes. + Saint Barthélemy """ - nodes: [Repository] + BL """ - Information to aid in pagination. + Bermuda """ - pageInfo: PageInfo! + BM """ - Identifies the total count of items in the connection. + Brunei Darussalam """ - totalCount: Int! + BN """ - The total size in kilobytes of all repositories in the connection. + Bolivia """ - totalDiskUsage: Int! -} + BO -""" -The reason a repository is listed as 'contributed'. -""" -enum RepositoryContributionType { """ - Created a commit + Bonaire, Sint Eustatius and Saba """ - COMMIT + BQ """ - Created an issue + Brazil """ - ISSUE + BR """ - Created a pull request + Bahamas """ - PULL_REQUEST + BS """ - Reviewed a pull request + Bhutan """ - PULL_REQUEST_REVIEW + BT """ - Created the repository + Bouvet Island """ - REPOSITORY -} + BV -""" -An edge in a connection. -""" -type RepositoryEdge { """ - A cursor for use in pagination. + Botswana """ - cursor: String! + BW """ - The item at the end of the edge. + Belarus """ - node: Repository -} + BY -""" -A subset of repository info. -""" -interface RepositoryInfo { """ - Identifies the date and time when the object was created. + Belize """ - createdAt: DateTime! + BZ """ - The description of the repository. + Canada """ - description: String + CA """ - The description of the repository rendered to HTML. + Cocos (Keeling) Islands """ - descriptionHTML: HTML! + CC """ - Returns how many forks there are of this repository in the whole network. + Congo (Kinshasa) """ - forkCount: Int! + CD """ - Indicates if the repository has issues feature enabled. + Central African Republic """ - hasIssuesEnabled: Boolean! + CF """ - Indicates if the repository has wiki feature enabled. + Congo (Brazzaville) """ - hasWikiEnabled: Boolean! + CG """ - The repository's URL. + Switzerland """ - homepageUrl: URI + CH """ - Indicates if the repository is unmaintained. + Côte d'Ivoire """ - isArchived: Boolean! + CI """ - Identifies if the repository is a fork. + Cook Islands """ - isFork: Boolean! + CK """ - Indicates if the repository has been locked or not. + Chile """ - isLocked: Boolean! + CL """ - Identifies if the repository is a mirror. + Cameroon """ - isMirror: Boolean! + CM """ - Identifies if the repository is private. + China """ - isPrivate: Boolean! + CN """ - Identifies if the repository is a template that can be used to generate new repositories. + Colombia """ - isTemplate: Boolean! + CO """ - The license associated with the repository + Costa Rica """ - licenseInfo: License + CR """ - The reason the repository has been locked. + Cape Verde """ - lockReason: RepositoryLockReason + CV """ - The repository's original mirror URL. + Curaçao """ - mirrorUrl: URI + CW """ - The name of the repository. + Christmas Island """ - name: String! + CX """ - The repository's name with owner. + Cyprus """ - nameWithOwner: String! + CY """ - The image used to represent this repository in Open Graph data. + Czech Republic """ - openGraphImageUrl: URI! + CZ """ - The User owner of the repository. + Germany """ - owner: RepositoryOwner! + DE """ - Identifies when the repository was last pushed to. + Djibouti """ - pushedAt: DateTime + DJ """ - The HTTP path for this repository + Denmark """ - resourcePath: URI! + DK """ - A description of the repository, rendered to HTML without any links in it. + Dominica """ - shortDescriptionHTML( - """ - How many characters to return. - """ - limit: Int = 200 - ): HTML! + DM """ - Identifies the date and time when the object was last updated. + Dominican Republic """ - updatedAt: DateTime! + DO """ - The HTTP URL for this repository + Algeria """ - url: URI! + DZ """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + Ecuador """ - usesCustomOpenGraphImage: Boolean! -} - -""" -An invitation for a user to be added to a repository. -""" -type RepositoryInvitation implements Node { - id: ID! + EC """ - The user who received the invitation. + Estonia """ - invitee: User! + EE """ - The user who created the invitation. + Egypt """ - inviter: User! + EG """ - The permission granted on this repository by this invitation. + Western Sahara """ - permission: RepositoryPermission! + EH """ - The Repository the user is invited to. + Eritrea """ - repository: RepositoryInfo -} + ER -""" -Ordering options for repository invitation connections. -""" -input RepositoryInvitationOrder @preview(toggledBy: "enterprise-accounts-preview") { """ - The ordering direction. + Spain """ - direction: OrderDirection! + ES """ - The field to order repository invitations by. + Ethiopia """ - field: RepositoryInvitationOrderField! -} + ET -""" -Properties by which repository invitation connections can be ordered. -""" -enum RepositoryInvitationOrderField @preview(toggledBy: "enterprise-accounts-preview") { """ - Order repository invitations by creation time + Finland """ - CREATED_AT + FI """ - Order repository invitations by invitee login + Fiji """ - INVITEE_LOGIN -} + FJ -""" -The possible reasons a given repository could be in a locked state. -""" -enum RepositoryLockReason { """ - The repository is locked due to a billing related reason. + Falkland Islands """ - BILLING + FK """ - The repository is locked due to a migration. + Micronesia """ - MIGRATING + FM """ - The repository is locked due to a move. + Faroe Islands """ - MOVING + FO """ - The repository is locked due to a rename. + France """ - RENAME -} + FR -""" -Represents a object that belongs to a repository. -""" -interface RepositoryNode { """ - The repository associated with this node. + Gabon """ - repository: Repository! -} + GA -""" -Ordering options for repository connections -""" -input RepositoryOrder { """ - The ordering direction. + United Kingdom """ - direction: OrderDirection! + GB """ - The field to order repositories by. + Grenada """ - field: RepositoryOrderField! -} + GD -""" -Properties by which repository connections can be ordered. -""" -enum RepositoryOrderField { """ - Order repositories by creation time + Georgia """ - CREATED_AT + GE """ - Order repositories by name + French Guiana """ - NAME + GF """ - Order repositories by push time + Guernsey """ - PUSHED_AT + GG """ - Order repositories by number of stargazers + Ghana """ - STARGAZERS + GH """ - Order repositories by update time + Gibraltar """ - UPDATED_AT -} + GI -""" -Represents an owner of a Repository. -""" -interface RepositoryOwner { """ - A URL pointing to the owner's public avatar. + Greenland """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! - id: ID! + GL """ - The username used to login. + Gambia """ - login: String! + GM """ - A list of repositories this user has pinned to their profile + Guinea """ - pinnedRepositories( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + GN - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + """ + Guadeloupe + """ + GP - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Equatorial Guinea + """ + GQ - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Greece + """ + GR - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean + """ + South Georgia and South Sandwich Islands + """ + GS - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Guatemala + """ + GT - """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder + """ + Guam + """ + GU - """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. - """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + """ + Guinea-Bissau + """ + GW - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! @deprecated(reason: "pinnedRepositories will be removed Use ProfileOwner.pinnedItems instead. Removal on 2019-10-01 UTC.") + """ + Guyana + """ + GY """ - A list of repositories that the user owns. + Hong Kong """ - repositories( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + HK - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + """ + Heard and McDonald Islands + """ + HM - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Honduras + """ + HN - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Croatia + """ + HR - """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean + """ + Haiti + """ + HT - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean + """ + Hungary + """ + HU - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Indonesia + """ + ID - """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder + """ + Ireland + """ + IE - """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. - """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + """ + Israel + """ + IL - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + """ + Isle of Man + """ + IM """ - Find Repository. + India """ - repository( - """ - Name of Repository to find. - """ - name: String! - ): Repository + IN """ - The HTTP URL for the owner. + British Indian Ocean Territory """ - resourcePath: URI! + IO """ - The HTTP URL for the owner. + Iraq """ - url: URI! -} + IQ -""" -The access level to a repository -""" -enum RepositoryPermission { """ - Can read, clone, and push to this repository. Can also manage issues, pull - requests, and repository settings, including adding collaborators + Iran """ - ADMIN + IR """ - Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings + Iceland """ - MAINTAIN + IS """ - Can read and clone this repository. Can also open and comment on issues and pull requests + Italy """ - READ + IT """ - Can read and clone this repository. Can also manage issues and pull requests + Jersey """ - TRIAGE + JE """ - Can read, clone, and push to this repository. Can also manage issues and pull requests + Jamaica """ - WRITE -} + JM -""" -The privacy of a repository -""" -enum RepositoryPrivacy { """ - Private + Jordan """ - PRIVATE + JO """ - Public + Japan """ - PUBLIC -} + JP -""" -A repository-topic connects a repository to a topic. -""" -type RepositoryTopic implements Node & UniformResourceLocatable { - id: ID! + """ + Kenya + """ + KE """ - The HTTP path for this repository-topic. + Kyrgyzstan """ - resourcePath: URI! + KG """ - The topic. + Cambodia """ - topic: Topic! + KH """ - The HTTP URL for this repository-topic. + Kiribati """ - url: URI! -} + KI -""" -The connection type for RepositoryTopic. -""" -type RepositoryTopicConnection { """ - A list of edges. + Comoros """ - edges: [RepositoryTopicEdge] + KM """ - A list of nodes. + Saint Kitts and Nevis """ - nodes: [RepositoryTopic] + KN """ - Information to aid in pagination. + Korea, South """ - pageInfo: PageInfo! + KR """ - Identifies the total count of items in the connection. + Kuwait """ - totalCount: Int! -} + KW -""" -An edge in a connection. -""" -type RepositoryTopicEdge { """ - A cursor for use in pagination. + Cayman Islands """ - cursor: String! + KY """ - The item at the end of the edge. + Kazakhstan """ - node: RepositoryTopic -} + KZ -""" -The repository's visibility level. -""" -enum RepositoryVisibility { """ - The repository is visible only to users in the same business. + Laos """ - INTERNAL + LA """ - The repository is visible only to those with explicit access. + Lebanon """ - PRIVATE + LB """ - The repository is visible to everyone. + Saint Lucia """ - PUBLIC -} + LC -""" -Audit log entry for a repository_visibility_change.disable event. -""" -type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + Liechtenstein """ - action: String! + LI """ - The user who initiated the action + Sri Lanka """ - actor: AuditEntryActor + LK """ - The IP address of the actor + Liberia """ - actorIp: String + LR """ - A readable representation of the actor's location + Lesotho """ - actorLocation: ActorLocation + LS """ - The username of the user who initiated the action + Lithuania """ - actorLogin: String + LT """ - The HTTP path for the actor. + Luxembourg """ - actorResourcePath: URI + LU """ - The HTTP URL for the actor. + Latvia """ - actorUrl: URI + LV """ - The time the action was initiated + Libya """ - createdAt: PreciseDateTime! + LY """ - The HTTP path for this enterprise. + Morocco """ - enterpriseResourcePath: URI + MA """ - The slug of the enterprise. + Monaco """ - enterpriseSlug: String + MC """ - The HTTP URL for this enterprise. + Moldova """ - enterpriseUrl: URI - id: ID! + MD """ - The corresponding operation type for the action + Montenegro """ - operationType: OperationType + ME """ - The Organization associated with the Audit Entry. + Saint Martin (French part) """ - organization: Organization + MF """ - The name of the Organization. + Madagascar """ - organizationName: String + MG """ - The HTTP path for the organization + Marshall Islands """ - organizationResourcePath: URI + MH """ - The HTTP URL for the organization + Macedonia """ - organizationUrl: URI + MK """ - The user affected by the action + Mali """ - user: User + ML """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Myanmar """ - userLogin: String + MM """ - The HTTP path for the user. + Mongolia """ - userResourcePath: URI + MN """ - The HTTP URL for the user. + Macau """ - userUrl: URI -} + MO -""" -Audit log entry for a repository_visibility_change.enable event. -""" -type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + Northern Mariana Islands """ - action: String! + MP """ - The user who initiated the action + Martinique """ - actor: AuditEntryActor + MQ """ - The IP address of the actor + Mauritania """ - actorIp: String + MR """ - A readable representation of the actor's location + Montserrat """ - actorLocation: ActorLocation + MS """ - The username of the user who initiated the action + Malta """ - actorLogin: String + MT """ - The HTTP path for the actor. + Mauritius """ - actorResourcePath: URI + MU """ - The HTTP URL for the actor. + Maldives """ - actorUrl: URI + MV """ - The time the action was initiated + Malawi """ - createdAt: PreciseDateTime! + MW """ - The HTTP path for this enterprise. + Mexico """ - enterpriseResourcePath: URI + MX """ - The slug of the enterprise. + Malaysia """ - enterpriseSlug: String + MY """ - The HTTP URL for this enterprise. + Mozambique """ - enterpriseUrl: URI - id: ID! + MZ """ - The corresponding operation type for the action + Namibia """ - operationType: OperationType + NA """ - The Organization associated with the Audit Entry. + New Caledonia """ - organization: Organization + NC """ - The name of the Organization. + Niger """ - organizationName: String + NE """ - The HTTP path for the organization + Norfolk Island """ - organizationResourcePath: URI + NF """ - The HTTP URL for the organization + Nigeria """ - organizationUrl: URI + NG """ - The user affected by the action + Nicaragua """ - user: User + NI """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Netherlands """ - userLogin: String + NL """ - The HTTP path for the user. + Norway """ - userResourcePath: URI + NO """ - The HTTP URL for the user. + Nepal """ - userUrl: URI -} + NP -""" -A alert for a repository with an affected vulnerability. -""" -type RepositoryVulnerabilityAlert implements Node & RepositoryNode @preview(toggledBy: "vixen-preview") { """ - The affected version + Nauru """ - affectedRange: String! @deprecated(reason: "advisory specific fields are being removed from repositoryVulnerabilityAlert objects Use `securityVulnerability.vulnerableVersionRange` instead. Removal on 2019-10-01 UTC.") + NR """ - The reason the alert was dismissed + Niue """ - dismissReason: String + NU """ - When was the alert dimissed? + New Zealand """ - dismissedAt: DateTime + NZ """ - The user who dismissed the alert + Oman """ - dismisser: User + OM """ - The external identifier for the vulnerability + Panama """ - externalIdentifier: String @deprecated(reason: "advisory specific fields are being removed from repositoryVulnerabilityAlert objects Use `securityAdvisory.identifiers` instead. Removal on 2019-10-01 UTC.") + PA """ - The external reference for the vulnerability + Peru """ - externalReference: String! @deprecated(reason: "advisory specific fields are being removed from repositoryVulnerabilityAlert objects Use `securityAdvisory.references` instead. Removal on 2019-10-01 UTC.") + PE """ - The fixed version + French Polynesia """ - fixedIn: String @deprecated(reason: "advisory specific fields are being removed from repositoryVulnerabilityAlert objects Use `securityVulnerability.firstPatchedVersion` instead. Removal on 2019-10-01 UTC.") - id: ID! + PF """ - The affected package + Papua New Guinea """ - packageName: String! @deprecated(reason: "advisory specific fields are being removed from repositoryVulnerabilityAlert objects Use `securityVulnerability.package` instead. Removal on 2019-10-01 UTC.") + PG """ - The associated repository + Philippines """ - repository: Repository! + PH """ - The associated security advisory + Pakistan """ - securityAdvisory: SecurityAdvisory + PK """ - The associated security vulnerablity + Poland """ - securityVulnerability: SecurityVulnerability + PL """ - The vulnerable manifest filename + Saint Pierre and Miquelon """ - vulnerableManifestFilename: String! + PM """ - The vulnerable manifest path + Pitcairn """ - vulnerableManifestPath: String! + PN """ - The vulnerable requirements + Puerto Rico """ - vulnerableRequirements: String -} + PR -""" -The connection type for RepositoryVulnerabilityAlert. -""" -type RepositoryVulnerabilityAlertConnection @preview(toggledBy: "vixen-preview") { """ - A list of edges. + Palestine """ - edges: [RepositoryVulnerabilityAlertEdge] + PS """ - A list of nodes. + Portugal """ - nodes: [RepositoryVulnerabilityAlert] + PT """ - Information to aid in pagination. + Palau """ - pageInfo: PageInfo! + PW """ - Identifies the total count of items in the connection. + Paraguay """ - totalCount: Int! -} + PY -""" -An edge in a connection. -""" -type RepositoryVulnerabilityAlertEdge @preview(toggledBy: "vixen-preview") { """ - A cursor for use in pagination. + Qatar """ - cursor: String! + QA """ - The item at the end of the edge. + Reunion """ - node: RepositoryVulnerabilityAlert -} + RE -""" -Autogenerated input type of RequestReviews -""" -input RequestReviewsInput { """ - A unique identifier for the client performing the mutation. + Romania """ - clientMutationId: String + RO """ - The Node ID of the pull request to modify. + Serbia """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + RS """ - The Node IDs of the team to request. + Russian Federation """ - teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"]) + RU """ - Add users to the set rather than replace. + Rwanda """ - union: Boolean + RW """ - The Node IDs of the user to request. + Saudi Arabia """ - userIds: [ID!] @possibleTypes(concreteTypes: ["User"]) -} + SA -""" -Autogenerated return type of RequestReviews -""" -type RequestReviewsPayload { """ - A unique identifier for the client performing the mutation. + Solomon Islands """ - clientMutationId: String + SB """ - The pull request that is getting requests. + Seychelles """ - pullRequest: PullRequest + SC """ - The edge from the pull request to the requested reviewers. + Sudan """ - requestedReviewersEdge: UserEdge -} + SD -""" -The possible states that can be requested when creating a check run. -""" -enum RequestableCheckStatusState @preview(toggledBy: "antiope-preview") { """ - The check suite or run has been completed. + Sweden """ - COMPLETED + SE """ - The check suite or run is in progress. + Singapore """ - IN_PROGRESS + SG """ - The check suite or run has been queued. + Saint Helena """ - QUEUED -} + SH -""" -Types that can be requested reviewers. -""" -union RequestedReviewer = Mannequin | Team | User + """ + Slovenia + """ + SI -""" -Autogenerated input type of RerequestCheckSuite -""" -input RerequestCheckSuiteInput @preview(toggledBy: "antiope-preview") { """ - The Node ID of the check suite. + Svalbard and Jan Mayen Islands """ - checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"]) + SJ """ - A unique identifier for the client performing the mutation. + Slovakia """ - clientMutationId: String + SK """ - The Node ID of the repository. + Sierra Leone """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) -} + SL -""" -Autogenerated return type of RerequestCheckSuite -""" -type RerequestCheckSuitePayload @preview(toggledBy: "antiope-preview") { """ - The requested check suite. + San Marino """ - checkSuite: CheckSuite + SM """ - A unique identifier for the client performing the mutation. + Senegal """ - clientMutationId: String -} + SN -""" -Autogenerated input type of ResolveReviewThread -""" -input ResolveReviewThreadInput { """ - A unique identifier for the client performing the mutation. + Somalia """ - clientMutationId: String + SO """ - The ID of the thread to resolve + Suriname """ - threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) -} + SR -""" -Autogenerated return type of ResolveReviewThread -""" -type ResolveReviewThreadPayload { """ - A unique identifier for the client performing the mutation. + South Sudan """ - clientMutationId: String + SS """ - The thread to resolve. + Sao Tome and Principe """ - thread: PullRequestReviewThread -} + ST -""" -Represents a private contribution a user made on GitHub. -""" -type RestrictedContribution implements Contribution { """ - Whether this contribution is associated with a record you do not have access to. For - example, your own 'first issue' contribution may have been made on a repository you can no - longer access. + El Salvador """ - isRestricted: Boolean! + SV """ - When this contribution was made. + Sint Maarten (Dutch part) """ - occurredAt: DateTime! + SX """ - The HTTP path for this contribution. + Swaziland """ - resourcePath: URI! + SZ """ - The HTTP URL for this contribution. + Turks and Caicos Islands """ - url: URI! + TC """ - The user who made this contribution. + Chad """ - user: User! -} + TD -""" -A team or user who has the ability to dismiss a review on a protected branch. -""" -type ReviewDismissalAllowance implements Node { """ - The actor that can dismiss. + French Southern Lands """ - actor: ReviewDismissalAllowanceActor + TF """ - Identifies the branch protection rule associated with the allowed user or team. + Togo """ - branchProtectionRule: BranchProtectionRule - id: ID! -} + TG -""" -Types that can be an actor. -""" -union ReviewDismissalAllowanceActor = Team | User + """ + Thailand + """ + TH -""" -The connection type for ReviewDismissalAllowance. -""" -type ReviewDismissalAllowanceConnection { """ - A list of edges. + Tajikistan """ - edges: [ReviewDismissalAllowanceEdge] + TJ """ - A list of nodes. + Tokelau """ - nodes: [ReviewDismissalAllowance] + TK """ - Information to aid in pagination. + Timor-Leste """ - pageInfo: PageInfo! + TL """ - Identifies the total count of items in the connection. + Turkmenistan """ - totalCount: Int! -} + TM -""" -An edge in a connection. -""" -type ReviewDismissalAllowanceEdge { """ - A cursor for use in pagination. + Tunisia """ - cursor: String! + TN """ - The item at the end of the edge. + Tonga """ - node: ReviewDismissalAllowance -} + TO -""" -Represents a 'review_dismissed' event on a given issue or pull request. -""" -type ReviewDismissedEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + Turkey """ - actor: Actor + TR """ - Identifies the date and time when the object was created. + Trinidad and Tobago """ - createdAt: DateTime! + TT """ - Identifies the primary key from the database. + Tuvalu """ - databaseId: Int + TV """ - Identifies the optional message associated with the 'review_dismissed' event. + Taiwan """ - dismissalMessage: String + TW """ - Identifies the optional message associated with the event, rendered to HTML. + Tanzania """ - dismissalMessageHTML: String - id: ID! + TZ """ - Identifies the previous state of the review with the 'review_dismissed' event. + Ukraine """ - previousReviewState: PullRequestReviewState! + UA """ - PullRequest referenced by event. + Uganda """ - pullRequest: PullRequest! + UG """ - Identifies the commit which caused the review to become stale. + United States Minor Outlying Islands """ - pullRequestCommit: PullRequestCommit + UM """ - The HTTP path for this review dismissed event. + United States of America """ - resourcePath: URI! + US """ - Identifies the review associated with the 'review_dismissed' event. + Uruguay """ - review: PullRequestReview + UY """ - The HTTP URL for this review dismissed event. + Uzbekistan """ - url: URI! -} + UZ -""" -A request for a user to review a pull request. -""" -type ReviewRequest implements Node { """ - Identifies the primary key from the database. + Vatican City """ - databaseId: Int - id: ID! + VA """ - Identifies the pull request associated with this review request. + Saint Vincent and the Grenadines """ - pullRequest: PullRequest! + VC """ - The reviewer that is requested. + Venezuela """ - requestedReviewer: RequestedReviewer -} + VE -""" -The connection type for ReviewRequest. -""" -type ReviewRequestConnection { """ - A list of edges. + Virgin Islands, British """ - edges: [ReviewRequestEdge] + VG """ - A list of nodes. + Virgin Islands, U.S. """ - nodes: [ReviewRequest] + VI """ - Information to aid in pagination. + Vietnam """ - pageInfo: PageInfo! + VN """ - Identifies the total count of items in the connection. + Vanuatu """ - totalCount: Int! -} + VU -""" -An edge in a connection. -""" -type ReviewRequestEdge { """ - A cursor for use in pagination. + Wallis and Futuna Islands """ - cursor: String! + WF """ - The item at the end of the edge. + Samoa """ - node: ReviewRequest -} + WS -""" -Represents an 'review_request_removed' event on a given pull request. -""" -type ReviewRequestRemovedEvent implements Node { """ - Identifies the actor who performed the event. + Yemen """ - actor: Actor + YE """ - Identifies the date and time when the object was created. + Mayotte """ - createdAt: DateTime! - id: ID! + YT """ - PullRequest referenced by event. + South Africa """ - pullRequest: PullRequest! + ZA """ - Identifies the reviewer whose review request was removed. + Zambia """ - requestedReviewer: RequestedReviewer + ZM + + """ + Zimbabwe + """ + ZW } """ -Represents an 'review_requested' event on a given pull request. +A goal associated with a GitHub Sponsors listing, representing a target the sponsored maintainer would like to attain. """ -type ReviewRequestedEvent implements Node { +type SponsorsGoal { """ - Identifies the actor who performed the event. + A description of the goal from the maintainer. """ - actor: Actor + description: String """ - Identifies the date and time when the object was created. + What the objective of this goal is. """ - createdAt: DateTime! - id: ID! + kind: SponsorsGoalKind! """ - PullRequest referenced by event. + The percentage representing how complete this goal is, between 0-100. """ - pullRequest: PullRequest! + percentComplete: Int! """ - Identifies the reviewer whose review was requested. + What the goal amount is. Represents an amount in USD for monthly sponsorship + amount goals. Represents a count of unique sponsors for total sponsors count goals. """ - requestedReviewer: RequestedReviewer + targetValue: Int! + + """ + A brief summary of the kind and target value of this goal. + """ + title: String! } """ -A hovercard context with a message describing the current code review state of the pull -request. +The different kinds of goals a GitHub Sponsors member can have. """ -type ReviewStatusHovercardContext implements HovercardContext { +enum SponsorsGoalKind { """ - A string describing this context + The goal is about getting a certain amount in USD from sponsorships each month. """ - message: String! + MONTHLY_SPONSORSHIP_AMOUNT """ - An octicon to accompany this context + The goal is about reaching a certain number of sponsors. """ - octicon: String! + TOTAL_SPONSORS_COUNT } """ -The possible digest algorithms used to sign SAML requests for an identity provider. +A GitHub Sponsors listing. """ -enum SamlDigestAlgorithm @preview(toggledBy: "enterprise-accounts-preview") { +type SponsorsListing implements Node { """ - SHA1 + The current goal the maintainer is trying to reach with GitHub Sponsors, if any. """ - SHA1 + activeGoal: SponsorsGoal """ - SHA256 + The Stripe Connect account currently in use for payouts for this Sponsors + listing, if any. Will only return a value when queried by the maintainer + themselves, or by an admin of the sponsorable organization. """ - SHA256 + activeStripeConnectAccount: StripeConnectAccount """ - SHA384 + The name of the country or region with the maintainer's bank account or fiscal + host. Will only return a value when queried by the maintainer themselves, or + by an admin of the sponsorable organization. """ - SHA384 + billingCountryOrRegion: String """ - SHA512 + The email address used by GitHub to contact the sponsorable about their GitHub + Sponsors profile. Will only return a value when queried by the maintainer + themselves, or by an admin of the sponsorable organization. """ - SHA512 -} + contactEmailAddress: String -""" -The possible signature algorithms used to sign SAML requests for a Identity Provider. -""" -enum SamlSignatureAlgorithm @preview(toggledBy: "enterprise-accounts-preview") { """ - RSA-SHA1 + Identifies the date and time when the object was created. """ - RSA_SHA1 + createdAt: DateTime! """ - RSA-SHA256 + The HTTP path for the Sponsors dashboard for this Sponsors listing. """ - RSA_SHA256 + dashboardResourcePath: URI! """ - RSA-SHA384 + The HTTP URL for the Sponsors dashboard for this Sponsors listing. """ - RSA_SHA384 + dashboardUrl: URI! """ - RSA-SHA512 + The records featured on the GitHub Sponsors profile. """ - RSA_SHA512 -} + featuredItems( + """ + The types of featured items to return. + """ + featureableTypes: [SponsorsListingFeaturedItemFeatureableType!] = [REPOSITORY, USER] + ): [SponsorsListingFeaturedItem!]! -""" -A Saved Reply is text a user can use to reply quickly. -""" -type SavedReply implements Node { """ - The body of the saved reply. + The fiscal host used for payments, if any. Will only return a value when + queried by the maintainer themselves, or by an admin of the sponsorable organization. """ - body: String! + fiscalHost: Organization """ - The saved reply body rendered to HTML. + The full description of the listing. """ - bodyHTML: HTML! + fullDescription: String! """ - Identifies the primary key from the database. + The full description of the listing rendered to HTML. """ - databaseId: Int + fullDescriptionHTML: HTML! id: ID! """ - The title of the saved reply. + Whether this listing is publicly visible. """ - title: String! + isPublic: Boolean! """ - The user that saved this reply. + The listing's full name. """ - user: Actor -} + name: String! -""" -The connection type for SavedReply. -""" -type SavedReplyConnection { """ - A list of edges. + A future date on which this listing is eligible to receive a payout. """ - edges: [SavedReplyEdge] + nextPayoutDate: Date """ - A list of nodes. + The name of the country or region where the maintainer resides. Will only + return a value when queried by the maintainer themselves, or by an admin of + the sponsorable organization. """ - nodes: [SavedReply] + residenceCountryOrRegion: String """ - Information to aid in pagination. + The HTTP path for this Sponsors listing. """ - pageInfo: PageInfo! + resourcePath: URI! """ - Identifies the total count of items in the connection. + The short description of the listing. """ - totalCount: Int! -} + shortDescription: String! -""" -An edge in a connection. -""" -type SavedReplyEdge { """ - A cursor for use in pagination. + The short name of the listing. """ - cursor: String! + slug: String! """ - The item at the end of the edge. + The entity this listing represents who can be sponsored on GitHub Sponsors. """ - node: SavedReply -} + sponsorable: Sponsorable! -""" -Ordering options for saved reply connections. -""" -input SavedReplyOrder { """ - The ordering direction. + The tiers for this GitHub Sponsors profile. """ - direction: OrderDirection! + tiers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Whether to include tiers that aren't published. Only admins of the Sponsors + listing can see draft tiers. Only admins of the Sponsors listing and viewers + who are currently sponsoring on a retired tier can see those retired tiers. + Defaults to including only published tiers, which are visible to anyone who + can see the GitHub Sponsors profile. + """ + includeUnpublished: Boolean = false - """ - The field to order saved replies by. - """ - field: SavedReplyOrderField! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Sponsors tiers returned from the connection. + """ + orderBy: SponsorsTierOrder = {field: MONTHLY_PRICE_IN_CENTS, direction: ASC} + ): SponsorsTierConnection -""" -Properties by which saved reply connections can be ordered. -""" -enum SavedReplyOrderField { """ - Order saved reply by when they were updated. + The HTTP URL for this Sponsors listing. """ - UPDATED_AT + url: URI! } """ -The results of a search. +A record that can be featured on a GitHub Sponsors profile. """ -union SearchResultItem = App | Issue | MarketplaceListing | Organization | PullRequest | Repository | User +union SponsorsListingFeatureableItem = Repository | User """ -A list of results that matched against a search query. +A record that is promoted on a GitHub Sponsors profile. """ -type SearchResultItemConnection { +type SponsorsListingFeaturedItem implements Node { """ - The number of pieces of code that matched the search query. + Identifies the date and time when the object was created. """ - codeCount: Int! + createdAt: DateTime! """ - A list of edges. + Will either be a description from the sponsorable maintainer about why they + featured this item, or the item's description itself, such as a user's bio + from their GitHub profile page. """ - edges: [SearchResultItemEdge] + description: String """ - The number of issues that matched the search query. + The record that is featured on the GitHub Sponsors profile. """ - issueCount: Int! + featureable: SponsorsListingFeatureableItem! + id: ID! """ - A list of nodes. + The position of this featured item on the GitHub Sponsors profile with a lower + position indicating higher precedence. Starts at 1. """ - nodes: [SearchResultItem] + position: Int! """ - Information to aid in pagination. + The GitHub Sponsors profile that features this record. """ - pageInfo: PageInfo! + sponsorsListing: SponsorsListing! """ - The number of repositories that matched the search query. + Identifies the date and time when the object was last updated. """ - repositoryCount: Int! + updatedAt: DateTime! +} +""" +The different kinds of records that can be featured on a GitHub Sponsors profile page. +""" +enum SponsorsListingFeaturedItemFeatureableType { """ - The number of users that matched the search query. + A repository owned by the user or organization with the GitHub Sponsors profile. """ - userCount: Int! + REPOSITORY """ - The number of wiki pages that matched the search query. + A user who belongs to the organization with the GitHub Sponsors profile. """ - wikiCount: Int! + USER } """ -An edge in a connection. +A GitHub Sponsors tier associated with a GitHub Sponsors listing. """ -type SearchResultItemEdge { +type SponsorsTier implements Node { """ - A cursor for use in pagination. - """ - cursor: String! - + SponsorsTier information only visible to users that can administer the associated Sponsors listing. """ - The item at the end of the edge. - """ - node: SearchResultItem + adminInfo: SponsorsTierAdminInfo """ - Text matches on the result found. + Get a different tier for this tier's maintainer that is at the same frequency + as this tier but with an equal or lesser cost. Returns the published tier with + the monthly price closest to this tier's without going over. """ - textMatches: [TextMatch] -} + closestLesserValueTier: SponsorsTier -""" -Represents the individual results of a search. -""" -enum SearchType { """ - Returns results matching issues in repositories. + Identifies the date and time when the object was created. """ - ISSUE + createdAt: DateTime! """ - Returns results matching repositories. + The description of the tier. """ - REPOSITORY + description: String! """ - Returns results matching users and organizations on GitHub. + The tier description rendered to HTML """ - USER -} + descriptionHTML: HTML! + id: ID! -""" -A GitHub Security Advisory -""" -type SecurityAdvisory implements Node { """ - Identifies the primary key from the database. + Whether this tier was chosen at checkout time by the sponsor rather than + defined ahead of time by the maintainer who manages the Sponsors listing. """ - databaseId: Int + isCustomAmount: Boolean! """ - This is a long plaintext description of the advisory + Whether this tier is only for use with one-time sponsorships. """ - description: String! + isOneTime: Boolean! """ - The GitHub Security Advisory ID + How much this tier costs per month in cents. """ - ghsaId: String! - id: ID! + monthlyPriceInCents: Int! """ - A list of identifiers for this advisory + How much this tier costs per month in USD. """ - identifiers: [SecurityAdvisoryIdentifier!]! + monthlyPriceInDollars: Int! """ - The organization that originated the advisory + The name of the tier. """ - origin: String! + name: String! """ - When the advisory was published + The sponsors listing that this tier belongs to. """ - publishedAt: DateTime! + sponsorsListing: SponsorsListing! """ - A list of references for this advisory + Identifies the date and time when the object was last updated. """ - references: [SecurityAdvisoryReference!]! + updatedAt: DateTime! +} +""" +SponsorsTier information only visible to users that can administer the associated Sponsors listing. +""" +type SponsorsTierAdminInfo { """ - The severity of the advisory + Indicates whether this tier is still a work in progress by the sponsorable and + not yet published to the associated GitHub Sponsors profile. Draft tiers + cannot be used for new sponsorships and will not be in use on existing + sponsorships. Draft tiers cannot be seen by anyone but the admins of the + GitHub Sponsors profile. """ - severity: SecurityAdvisorySeverity! + isDraft: Boolean! """ - A short plaintext summary of the advisory + Indicates whether this tier is published to the associated GitHub Sponsors + profile. Published tiers are visible to anyone who can see the GitHub Sponsors + profile, and are available for use in sponsorships if the GitHub Sponsors + profile is publicly visible. """ - summary: String! + isPublished: Boolean! """ - When the advisory was last updated + Indicates whether this tier has been retired from the associated GitHub + Sponsors profile. Retired tiers are no longer shown on the GitHub Sponsors + profile and cannot be chosen for new sponsorships. Existing sponsorships may + still use retired tiers if the sponsor selected the tier before it was retired. """ - updatedAt: DateTime! + isRetired: Boolean! """ - Vulnerabilities associated with this Advisory + The sponsorships using this tier. """ - vulnerabilities( + sponsorships( """ Returns the elements in the list that come after the specified cursor. """ @@ -29961,56 +46895,43 @@ type SecurityAdvisory implements Node { """ before: String - """ - An ecosystem to filter vulnerabilities by. - """ - ecosystem: SecurityAdvisoryEcosystem - """ Returns the first _n_ elements from the list. """ first: Int """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for the returned topics. + Whether or not to return private sponsorships using this tier. Defaults to + only returning public sponsorships on this tier. """ - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + includePrivate: Boolean = false """ - A package name to filter vulnerabilities by. + Returns the last _n_ elements from the list. """ - package: String + last: Int """ - A list of severities to filter vulnerabilities by. + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. """ - severities: [SecurityAdvisorySeverity!] - ): SecurityVulnerabilityConnection! - - """ - When the advisory was withdrawn, if it has been withdrawn - """ - withdrawnAt: DateTime + orderBy: SponsorshipOrder + ): SponsorshipConnection! } """ -The connection type for SecurityAdvisory. +The connection type for SponsorsTier. """ -type SecurityAdvisoryConnection { +type SponsorsTierConnection { """ A list of edges. """ - edges: [SecurityAdvisoryEdge] + edges: [SponsorsTierEdge] """ A list of nodes. """ - nodes: [SecurityAdvisory] + nodes: [SponsorsTier] """ Information to aid in pagination. @@ -30024,239 +46945,225 @@ type SecurityAdvisoryConnection { } """ -The possible ecosystems of a security vulnerability's package. +An edge in a connection. """ -enum SecurityAdvisoryEcosystem { +type SponsorsTierEdge { """ - Java artifacts hosted at the Maven central repository - """ - MAVEN - - """ - JavaScript packages hosted at npmjs.com + A cursor for use in pagination. """ - NPM + cursor: String! """ - .NET packages hosted at the NuGet Gallery + The item at the end of the edge. """ - NUGET + node: SponsorsTier +} +""" +Ordering options for Sponsors tiers connections. +""" +input SponsorsTierOrder { """ - Python packages hosted at PyPI.org + The ordering direction. """ - PIP + direction: OrderDirection! """ - Ruby gems hosted at RubyGems.org + The field to order tiers by. """ - RUBYGEMS + field: SponsorsTierOrderField! } """ -An edge in a connection. +Properties by which Sponsors tiers connections can be ordered. """ -type SecurityAdvisoryEdge { +enum SponsorsTierOrderField { """ - A cursor for use in pagination. + Order tiers by creation time. """ - cursor: String! + CREATED_AT """ - The item at the end of the edge. + Order tiers by their monthly price in cents """ - node: SecurityAdvisory + MONTHLY_PRICE_IN_CENTS } """ -A GitHub Security Advisory Identifier +A sponsorship relationship between a sponsor and a maintainer """ -type SecurityAdvisoryIdentifier { +type Sponsorship implements Node { """ - The identifier type, e.g. GHSA, CVE + Identifies the date and time when the object was created. """ - type: String! + createdAt: DateTime! + id: ID! """ - The identifier + Whether the sponsorship is active. False implies the sponsor is a past sponsor + of the maintainer, while true implies they are a current sponsor. """ - value: String! -} + isActive: Boolean! -""" -An advisory identifier to filter results on. -""" -input SecurityAdvisoryIdentifierFilter { """ - The identifier type. + Whether this sponsorship represents a one-time payment versus a recurring sponsorship. """ - type: SecurityAdvisoryIdentifierType! + isOneTimePayment: Boolean! """ - The identifier string. Supports exact or partial matching. + Whether the sponsor has chosen to receive sponsorship update emails sent from + the sponsorable. Only returns a non-null value when the viewer has permission to know this. """ - value: String! -} + isSponsorOptedIntoEmail: Boolean -""" -Identifier formats available for advisories. -""" -enum SecurityAdvisoryIdentifierType { """ - Common Vulnerabilities and Exposures Identifier. + The entity that is being sponsored """ - CVE + maintainer: User! + @deprecated( + reason: "`Sponsorship.maintainer` will be removed. Use `Sponsorship.sponsorable` instead. Removal on 2020-04-01 UTC." + ) """ - GitHub Security Advisory ID. + The privacy level for this sponsorship. """ - GHSA -} + privacyLevel: SponsorshipPrivacy! -""" -Ordering options for security advisory connections -""" -input SecurityAdvisoryOrder { """ - The ordering direction. + The user that is sponsoring. Returns null if the sponsorship is private or if sponsor is not a user. """ - direction: OrderDirection! + sponsor: User + @deprecated( + reason: "`Sponsorship.sponsor` will be removed. Use `Sponsorship.sponsorEntity` instead. Removal on 2020-10-01 UTC." + ) """ - The field to order security advisories by. + The user or organization that is sponsoring, if you have permission to view them. """ - field: SecurityAdvisoryOrderField! -} + sponsorEntity: Sponsor -""" -Properties by which security advisory connections can be ordered. -""" -enum SecurityAdvisoryOrderField { """ - Order advisories by publication time + The entity that is being sponsored """ - PUBLISHED_AT + sponsorable: Sponsorable! """ - Order advisories by update time + The associated sponsorship tier """ - UPDATED_AT + tier: SponsorsTier + + """ + Identifies the date and time when the current tier was chosen for this sponsorship. + """ + tierSelectedAt: DateTime } """ -An individual package +The connection type for Sponsorship. """ -type SecurityAdvisoryPackage { +type SponsorshipConnection { """ - The ecosystem the package belongs to, e.g. RUBYGEMS, NPM + A list of edges. """ - ecosystem: SecurityAdvisoryEcosystem! + edges: [SponsorshipEdge] """ - The package name + A list of nodes. """ - name: String! -} + nodes: [Sponsorship] -""" -An individual package version -""" -type SecurityAdvisoryPackageVersion { """ - The package name or version + Information to aid in pagination. """ - identifier: String! -} + pageInfo: PageInfo! -""" -A GitHub Security Advisory Reference -""" -type SecurityAdvisoryReference { """ - A publicly accessible reference + Identifies the total count of items in the connection. """ - url: URI! -} + totalCount: Int! -""" -Severity of the vulnerability. -""" -enum SecurityAdvisorySeverity { """ - Critical. + The total amount in cents of all recurring sponsorships in the connection + whose amount you can view. Does not include one-time sponsorships. """ - CRITICAL + totalRecurringMonthlyPriceInCents: Int! """ - High. + The total amount in USD of all recurring sponsorships in the connection whose + amount you can view. Does not include one-time sponsorships. """ - HIGH + totalRecurringMonthlyPriceInDollars: Int! +} +""" +An edge in a connection. +""" +type SponsorshipEdge { """ - Low. + A cursor for use in pagination. """ - LOW + cursor: String! """ - Moderate. + The item at the end of the edge. """ - MODERATE + node: Sponsorship } """ -An individual vulnerability within an Advisory +An update sent to sponsors of a user or organization on GitHub Sponsors. """ -type SecurityVulnerability { +type SponsorshipNewsletter implements Node { """ - The Advisory associated with this Vulnerability + The author of the newsletter. """ - advisory: SecurityAdvisory! + author: User """ - The first version containing a fix for the vulnerability + The contents of the newsletter, the message the sponsorable wanted to give. """ - firstPatchedVersion: SecurityAdvisoryPackageVersion + body: String! """ - A description of the vulnerable package + Identifies the date and time when the object was created. """ - package: SecurityAdvisoryPackage! + createdAt: DateTime! + id: ID! """ - The severity of the vulnerability within this package + Indicates if the newsletter has been made available to sponsors. """ - severity: SecurityAdvisorySeverity! + isPublished: Boolean! """ - When the vulnerability was last updated + The user or organization this newsletter is from. """ - updatedAt: DateTime! + sponsorable: Sponsorable! """ - A string that describes the vulnerable package versions. - This string follows a basic syntax with a few forms. - + `= 0.2.0` denotes a single vulnerable version. - + `<= 1.0.8` denotes a version range up to and including the specified version - + `< 0.1.11` denotes a version range up to, but excluding, the specified version - + `>= 4.3.0, < 4.3.5` denotes a version range with a known minimum and maximum version. - + `>= 0.0.1` denotes a version range with a known minimum, but no known maximum + The subject of the newsletter, what it's about. """ - vulnerableVersionRange: String! + subject: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! } """ -The connection type for SecurityVulnerability. +The connection type for SponsorshipNewsletter. """ -type SecurityVulnerabilityConnection { +type SponsorshipNewsletterConnection { """ A list of edges. """ - edges: [SecurityVulnerabilityEdge] + edges: [SponsorshipNewsletterEdge] """ A list of nodes. """ - nodes: [SecurityVulnerability] + nodes: [SponsorshipNewsletter] """ Information to aid in pagination. @@ -30272,7 +47179,7 @@ type SecurityVulnerabilityConnection { """ An edge in a connection. """ -type SecurityVulnerabilityEdge { +type SponsorshipNewsletterEdge { """ A cursor for use in pagination. """ @@ -30281,257 +47188,153 @@ type SecurityVulnerabilityEdge { """ The item at the end of the edge. """ - node: SecurityVulnerability + node: SponsorshipNewsletter } """ -Ordering options for security vulnerability connections +Ordering options for sponsorship newsletter connections. """ -input SecurityVulnerabilityOrder { +input SponsorshipNewsletterOrder { """ The ordering direction. """ direction: OrderDirection! """ - The field to order security vulnerabilities by. + The field to order sponsorship newsletters by. """ - field: SecurityVulnerabilityOrderField! + field: SponsorshipNewsletterOrderField! } """ -Properties by which security vulnerability connections can be ordered. +Properties by which sponsorship update connections can be ordered. """ -enum SecurityVulnerabilityOrderField { +enum SponsorshipNewsletterOrderField { """ - Order vulnerability by update time + Order sponsorship newsletters by when they were created. """ - UPDATED_AT + CREATED_AT } """ -Represents an S/MIME signature on a Commit or Tag. +Ordering options for sponsorship connections. """ -type SmimeSignature implements GitSignature { - """ - Email used to sign this object. - """ - email: String! - - """ - True if the signature is valid and verified by GitHub. - """ - isValid: Boolean! - - """ - Payload for GPG signing object. Raw ODB object without the signature header. - """ - payload: String! - - """ - ASCII-armored signature header from object. - """ - signature: String! - +input SponsorshipOrder { """ - GitHub user corresponding to the email signing this commit. + The ordering direction. """ - signer: User + direction: OrderDirection! """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + The field to order sponsorship by. """ - state: GitSignatureState! + field: SponsorshipOrderField! +} +""" +Properties by which sponsorship connections can be ordered. +""" +enum SponsorshipOrderField { """ - True if the signature was made with GitHub's signing key. + Order sponsorship by creation time. """ - wasSignedByGitHub: Boolean! + CREATED_AT } """ -Entities that can be sponsored through GitHub Sponsors +The privacy of a sponsorship """ -interface Sponsorable { +enum SponsorshipPrivacy { """ - This object's sponsorships as the maintainer. + Private """ - sponsorshipsAsMaintainer( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Whether or not to include private sponsorships in the result set - """ - includePrivate: Boolean = false - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for sponsorships returned from this connection. If left - blank, the sponsorships will be ordered based on relevancy to the viewer. - """ - orderBy: SponsorshipOrder - ): SponsorshipConnection! + PRIVATE """ - This object's sponsorships as the sponsor. + Public """ - sponsorshipsAsSponsor( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for sponsorships returned from this connection. If left - blank, the sponsorships will be ordered based on relevancy to the viewer. - """ - orderBy: SponsorshipOrder - ): SponsorshipConnection! + PUBLIC } """ -A GitHub Sponsors listing. +The possible default commit messages for squash merges. """ -type SponsorsListing implements Node { +enum SquashMergeCommitMessage { """ - The full description of the listing. + Default to a blank commit message. """ - fullDescription: String! - id: ID! + BLANK """ - The short description of the listing. + Default to the branch's commit messages. """ - shortDescription: String! + COMMIT_MESSAGES """ - The short name of the listing. + Default to the pull request's body. """ - slug: String! + PR_BODY } """ -A sponsorship relationship between a sponsor and a maintainer +The possible default commit titles for squash merges. """ -type Sponsorship implements Node { - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - id: ID! - - """ - The entity that is being sponsored - """ - maintainer: User! - +enum SquashMergeCommitTitle { """ - The privacy level for this sponsorship. + Default to the commit's title (if only one commit) or the pull request's title (when more than one commit). """ - privacyLevel: SponsorshipPrivacy! + COMMIT_OR_PR_TITLE """ - The entity that is sponsoring. Returns null if the sponsorship is private + Default to the pull request's title. """ - sponsor: User + PR_TITLE } """ -The connection type for Sponsorship. +Represents an SSH signature on a Commit or Tag. """ -type SponsorshipConnection { - """ - A list of edges. - """ - edges: [SponsorshipEdge] - +type SshSignature implements GitSignature { """ - A list of nodes. + Email used to sign this object. """ - nodes: [Sponsorship] + email: String! """ - Information to aid in pagination. + True if the signature is valid and verified by GitHub. """ - pageInfo: PageInfo! + isValid: Boolean! """ - Identifies the total count of items in the connection. + Hex-encoded fingerprint of the key that signed this object. """ - totalCount: Int! -} + keyFingerprint: String -""" -An edge in a connection. -""" -type SponsorshipEdge { """ - A cursor for use in pagination. + Payload for GPG signing object. Raw ODB object without the signature header. """ - cursor: String! + payload: String! """ - The item at the end of the edge. + ASCII-armored signature header from object. """ - node: Sponsorship -} + signature: String! -""" -Ordering options for sponsorship connections. -""" -input SponsorshipOrder { """ - The ordering direction. + GitHub user corresponding to the email signing this commit. """ - direction: OrderDirection! -} + signer: User -""" -The privacy of a sponsorship -""" -enum SponsorshipPrivacy { """ - Private + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. """ - PRIVATE + state: GitSignatureState! """ - Public + True if the signature was made with GitHub's signing key. """ - PUBLIC + wasSignedByGitHub: Boolean! } """ @@ -30606,6 +47409,11 @@ Things that can be starred. interface Starrable { id: ID! + """ + Returns a count of how many stargazers there are on this object + """ + stargazerCount: Int! + """ A list of users who have starred this starrable. """ @@ -30651,6 +47459,11 @@ type StarredRepositoryConnection { """ edges: [StarredRepositoryEdge] + """ + Is the list of stars for this user truncated? This is true for users that have many stars. + """ + isOverLimit: Boolean! + """ A list of nodes. """ @@ -30683,10 +47496,165 @@ type StarredRepositoryEdge { starredAt: DateTime! } +""" +Autogenerated input type of StartOrganizationMigration +""" +input StartOrganizationMigrationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The migration source access token. + """ + sourceAccessToken: String! + + """ + The URL of the organization to migrate. + """ + sourceOrgUrl: URI! + + """ + The ID of the enterprise the target organization belongs to. + """ + targetEnterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The name of the target organization. + """ + targetOrgName: String! +} + +""" +Autogenerated return type of StartOrganizationMigration +""" +type StartOrganizationMigrationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new organization migration. + """ + orgMigration: OrganizationMigration +} + +""" +Autogenerated input type of StartRepositoryMigration +""" +input StartRepositoryMigrationInput { + """ + The migration source access token. + """ + accessToken: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Whether to continue the migration on error. Defaults to `false`. + """ + continueOnError: Boolean + + """ + The signed URL to access the user-uploaded git archive. + """ + gitArchiveUrl: String + + """ + The GitHub personal access token of the user importing to the target repository. + """ + githubPat: String + + """ + Whether to lock the source repository. + """ + lockSource: Boolean + + """ + The signed URL to access the user-uploaded metadata archive. + """ + metadataArchiveUrl: String + + """ + The ID of the organization that will own the imported repository. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The name of the imported repository. + """ + repositoryName: String! + + """ + Whether to skip migrating releases for the repository. + """ + skipReleases: Boolean + + """ + The ID of the migration source. + """ + sourceId: ID! @possibleTypes(concreteTypes: ["MigrationSource"]) + + """ + The URL of the source repository. + """ + sourceRepositoryUrl: URI! + + """ + The visibility of the imported repository. + """ + targetRepoVisibility: String +} + +""" +Autogenerated return type of StartRepositoryMigration +""" +type StartRepositoryMigrationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new repository migration. + """ + repositoryMigration: RepositoryMigration +} + """ Represents a commit status. """ type Status implements Node { + """ + A list of status contexts and check runs for this commit. + """ + combinedContexts( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): StatusCheckRollupContextConnection! + """ The commit this status is attached to. """ @@ -30714,10 +47682,116 @@ type Status implements Node { state: StatusState! } +""" +Represents the rollup for both the check runs and status for a commit. +""" +type StatusCheckRollup implements Node { + """ + The commit the status and check runs are attached to. + """ + commit: Commit + + """ + A list of status contexts and check runs for this commit. + """ + contexts( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): StatusCheckRollupContextConnection! + id: ID! + + """ + The combined status for the commit. + """ + state: StatusState! +} + +""" +Types that can be inside a StatusCheckRollup context. +""" +union StatusCheckRollupContext = CheckRun | StatusContext + +""" +The connection type for StatusCheckRollupContext. +""" +type StatusCheckRollupContextConnection { + """ + The number of check runs in this rollup. + """ + checkRunCount: Int! + + """ + Counts of check runs by state. + """ + checkRunCountsByState: [CheckRunStateCount!] + + """ + A list of edges. + """ + edges: [StatusCheckRollupContextEdge] + + """ + A list of nodes. + """ + nodes: [StatusCheckRollupContext] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + The number of status contexts in this rollup. + """ + statusContextCount: Int! + + """ + Counts of status contexts by state. + """ + statusContextCountsByState: [StatusContextStateCount!] + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type StatusCheckRollupContextEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: StatusCheckRollupContext +} + """ Represents an individual commit status context """ -type StatusContext implements Node { +type StatusContext implements Node & RequirableByPullRequest { """ The avatar of the OAuth application or the user that created the status """ @@ -30754,6 +47828,21 @@ type StatusContext implements Node { description: String id: ID! + """ + Whether this is required to pass before merging for a specific pull request. + """ + isRequired( + """ + The id of the pull request this is required for + """ + pullRequestId: ID + + """ + The number of the pull request this is required for + """ + pullRequestNumber: Int + ): Boolean! + """ The state of this status context. """ @@ -30765,6 +47854,21 @@ type StatusContext implements Node { targetUrl: URI } +""" +Represents a count of the state of a status context. +""" +type StatusContextStateCount { + """ + The number of statuses with this state. + """ + count: Int! + + """ + The state of a status context. + """ + state: StatusState! +} + """ The possible commit status states. """ @@ -30795,6 +47899,46 @@ enum StatusState { SUCCESS } +""" +A Stripe Connect account for receiving sponsorship funds from GitHub Sponsors. +""" +type StripeConnectAccount { + """ + The account number used to identify this Stripe Connect account. + """ + accountId: String! + + """ + The name of the country or region of an external account, such as a bank + account, tied to the Stripe Connect account. Will only return a value when + queried by the maintainer of the associated GitHub Sponsors profile + themselves, or by an admin of the sponsorable organization. + """ + billingCountryOrRegion: String + + """ + The name of the country or region of the Stripe Connect account. Will only + return a value when queried by the maintainer of the associated GitHub + Sponsors profile themselves, or by an admin of the sponsorable organization. + """ + countryOrRegion: String + + """ + Whether this Stripe Connect account is currently in use for the associated GitHub Sponsors profile. + """ + isActive: Boolean! + + """ + The GitHub Sponsors profile associated with this Stripe Connect account. + """ + sponsorsListing: SponsorsListing! + + """ + The URL to access this Stripe Connect account on Stripe's website. + """ + stripeDashboardUrl: URI! +} + """ Autogenerated input type of SubmitPullRequestReview """ @@ -30814,10 +47958,15 @@ input SubmitPullRequestReviewInput { """ event: PullRequestReviewEvent! + """ + The Pull Request ID to submit any pending reviews. + """ + pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"]) + """ The Pull Request Review ID to submit. """ - pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) + pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) } """ @@ -30835,6 +47984,86 @@ type SubmitPullRequestReviewPayload { pullRequestReview: PullRequestReview } +""" +A pointer to a repository at a specific revision embedded inside another repository. +""" +type Submodule { + """ + The branch of the upstream submodule for tracking updates + """ + branch: String + + """ + The git URL of the submodule repository + """ + gitUrl: URI! + + """ + The name of the submodule in .gitmodules + """ + name: String! + + """ + The name of the submodule in .gitmodules (Base64-encoded) + """ + nameRaw: Base64String! + + """ + The path in the superproject that this submodule is located in + """ + path: String! + + """ + The path in the superproject that this submodule is located in (Base64-encoded) + """ + pathRaw: Base64String! + + """ + The commit revision of the subproject repository being tracked by the submodule + """ + subprojectCommitOid: GitObjectID +} + +""" +The connection type for Submodule. +""" +type SubmoduleConnection { + """ + A list of edges. + """ + edges: [SubmoduleEdge] + + """ + A list of nodes. + """ + nodes: [Submodule] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type SubmoduleEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Submodule +} + """ Entities that can be subscribed to for web and email notifications. """ @@ -31053,6 +48282,11 @@ type Team implements MemberStatusable & Node & Subscribable { """ createdAt: DateTime! + """ + Identifies the primary key from the database. + """ + databaseId: Int + """ The description of the team. """ @@ -31066,7 +48300,7 @@ type Team implements MemberStatusable & Node & Subscribable { The sequence number of the discussion to find. """ number: Int! - ): TeamDiscussion @preview(toggledBy: "echo-preview") + ): TeamDiscussion """ A list of team discussions. @@ -31101,17 +48335,17 @@ type Team implements MemberStatusable & Node & Subscribable { Order for connection """ orderBy: TeamDiscussionOrder - ): TeamDiscussionConnection! @preview(toggledBy: "echo-preview") + ): TeamDiscussionConnection! """ The HTTP path for team discussions """ - discussionsResourcePath: URI! @preview(toggledBy: "echo-preview") + discussionsResourcePath: URI! """ The HTTP URL for team discussions """ - discussionsUrl: URI! @preview(toggledBy: "echo-preview") + discussionsUrl: URI! """ The HTTP path for editing this team @@ -31264,6 +48498,56 @@ type Team implements MemberStatusable & Node & Subscribable { """ privacy: TeamPrivacy! + """ + Finds and returns the project according to the provided project number. + """ + projectV2( + """ + The Project number. + """ + number: Int! + ): ProjectV2 + + """ + List of projects this team has collaborator access to. + """ + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for projects returned from this connection + """ + filterBy: ProjectV2Filters = {} + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + The query to search projects by. + """ + query: String = "" + ): ProjectV2Connection! + """ A list of repositories this team has access to. """ @@ -31294,7 +48578,7 @@ type Team implements MemberStatusable & Node & Subscribable { orderBy: TeamRepositoryOrder """ - The search string to look for. + The search string to look for. Repositories will be returned where the name contains your search string. """ query: String ): TeamRepositoryConnection! @@ -31314,6 +48598,26 @@ type Team implements MemberStatusable & Node & Subscribable { """ resourcePath: URI! + """ + What algorithm is used for review assignment for this team + """ + reviewRequestDelegationAlgorithm: TeamReviewAssignmentAlgorithm @preview(toggledBy: "stone-crop-preview") + + """ + True if review assignment is enabled for this team + """ + reviewRequestDelegationEnabled: Boolean! @preview(toggledBy: "stone-crop-preview") + + """ + How many team members are required for review assignment for this team + """ + reviewRequestDelegationMemberCount: Int @preview(toggledBy: "stone-crop-preview") + + """ + When assigning team members via delegation, whether the entire team should be notified as well. + """ + reviewRequestDelegationNotifyTeam: Boolean! @preview(toggledBy: "stone-crop-preview") + """ The slug corresponding to the team. """ @@ -31816,7 +49120,7 @@ type TeamConnection { """ A team discussion. """ -type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment @preview(toggledBy: "echo-preview") { +type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ The actor who authored the comment. """ @@ -31833,7 +49137,7 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib body: String! """ - The discussion body rendered to HTML. + The body rendered to HTML. """ bodyHTML: HTML! @@ -32077,7 +49381,7 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib """ A comment on a team discussion. """ -type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & UniformResourceLocatable & Updatable & UpdatableComment @preview(toggledBy: "echo-preview") { +type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & UniformResourceLocatable & Updatable & UpdatableComment { """ The actor who authored the comment. """ @@ -32094,7 +49398,7 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U body: String! """ - The comment body rendered to HTML. + The body rendered to HTML. """ bodyHTML: HTML! @@ -32263,7 +49567,7 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U """ The connection type for TeamDiscussionComment. """ -type TeamDiscussionCommentConnection @preview(toggledBy: "echo-preview") { +type TeamDiscussionCommentConnection { """ A list of edges. """ @@ -32288,7 +49592,7 @@ type TeamDiscussionCommentConnection @preview(toggledBy: "echo-preview") { """ An edge in a connection. """ -type TeamDiscussionCommentEdge @preview(toggledBy: "echo-preview") { +type TeamDiscussionCommentEdge { """ A cursor for use in pagination. """ @@ -32303,7 +49607,7 @@ type TeamDiscussionCommentEdge @preview(toggledBy: "echo-preview") { """ Ways in which team discussion comment connections can be ordered. """ -input TeamDiscussionCommentOrder @preview(toggledBy: "echo-preview") { +input TeamDiscussionCommentOrder { """ The direction in which to order nodes. """ @@ -32318,7 +49622,7 @@ input TeamDiscussionCommentOrder @preview(toggledBy: "echo-preview") { """ Properties by which team discussion comment connections can be ordered. """ -enum TeamDiscussionCommentOrderField @preview(toggledBy: "echo-preview") { +enum TeamDiscussionCommentOrderField { """ Allows sequential ordering of team discussion comments (which is equivalent to chronological ordering). """ @@ -32328,7 +49632,7 @@ enum TeamDiscussionCommentOrderField @preview(toggledBy: "echo-preview") { """ The connection type for TeamDiscussion. """ -type TeamDiscussionConnection @preview(toggledBy: "echo-preview") { +type TeamDiscussionConnection { """ A list of edges. """ @@ -32353,7 +49657,7 @@ type TeamDiscussionConnection @preview(toggledBy: "echo-preview") { """ An edge in a connection. """ -type TeamDiscussionEdge @preview(toggledBy: "echo-preview") { +type TeamDiscussionEdge { """ A cursor for use in pagination. """ @@ -32368,7 +49672,7 @@ type TeamDiscussionEdge @preview(toggledBy: "echo-preview") { """ Ways in which team discussion connections can be ordered. """ -input TeamDiscussionOrder @preview(toggledBy: "echo-preview") { +input TeamDiscussionOrder { """ The direction in which to order nodes. """ @@ -32383,7 +49687,7 @@ input TeamDiscussionOrder @preview(toggledBy: "echo-preview") { """ Properties by which team discussion connections can be ordered. """ -enum TeamDiscussionOrderField @preview(toggledBy: "echo-preview") { +enum TeamDiscussionOrderField { """ Allows chronological ordering of team discussions. """ @@ -32904,6 +50208,21 @@ enum TeamRepositoryOrderField { UPDATED_AT } +""" +The possible team review assignment algorithms +""" +enum TeamReviewAssignmentAlgorithm @preview(toggledBy: "stone-crop-preview") { + """ + Balance review load across the entire team + """ + LOAD_BALANCE + + """ + Alternate reviews between each team member + """ + ROUND_ROBIN +} + """ The role of a user on a team. """ @@ -32981,6 +50300,70 @@ type Topic implements Node & Starrable { first: Int = 3 ): [Topic!]! + """ + A list of repositories. + """ + repositories( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder + + """ + Array of owner's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + organization or user being viewed owns. + """ + ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + + """ + If true, only repositories whose owner can be sponsored via GitHub Sponsors will be returned. + """ + sponsorableOnly: Boolean = false + ): RepositoryConnection! + + """ + Returns a count of how many stargazers there are on this object + """ + stargazerCount: Int! + """ A list of users who have starred this starrable. """ @@ -33033,68 +50416,78 @@ interface TopicAuditEntryData { } """ -The connection type for Topic. +Reason that the suggested topic is declined. """ -type TopicConnection { +enum TopicSuggestionDeclineReason { """ - A list of edges. + The suggested topic is not relevant to the repository. """ - edges: [TopicEdge] + NOT_RELEVANT """ - A list of nodes. + The viewer does not like the suggested topic. """ - nodes: [Topic] + PERSONAL_PREFERENCE """ - Information to aid in pagination. + The suggested topic is too general for the repository. """ - pageInfo: PageInfo! + TOO_GENERAL """ - Identifies the total count of items in the connection. + The suggested topic is too specific for the repository (e.g. #ruby-on-rails-version-4-2-1). """ - totalCount: Int! + TOO_SPECIFIC } """ -An edge in a connection. +The possible states of a tracked issue. """ -type TopicEdge { +enum TrackedIssueStates { """ - A cursor for use in pagination. + The tracked issue is closed """ - cursor: String! + CLOSED """ - The item at the end of the edge. + The tracked issue is open """ - node: Topic + OPEN } """ -Reason that the suggested topic is declined. +Autogenerated input type of TransferEnterpriseOrganization """ -enum TopicSuggestionDeclineReason { +input TransferEnterpriseOrganizationInput { """ - The suggested topic is not relevant to the repository. + A unique identifier for the client performing the mutation. """ - NOT_RELEVANT + clientMutationId: String """ - The viewer does not like the suggested topic. + The ID of the enterprise where the organization should be transferred. """ - PERSONAL_PREFERENCE + destinationEnterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The suggested topic is too general for the repository. + The ID of the organization to transfer. """ - TOO_GENERAL + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} +""" +Autogenerated return type of TransferEnterpriseOrganization +""" +type TransferEnterpriseOrganizationPayload { """ - The suggested topic is too specific for the repository (e.g. #ruby-on-rails-version-4-2-1). + A unique identifier for the client performing the mutation. """ - TOO_SPECIFIC + clientMutationId: String + + """ + The organization for which a transfer was initiated. + """ + organization: Organization } """ @@ -33106,6 +50499,11 @@ input TransferIssueInput { """ clientMutationId: String + """ + Whether to create labels if they don't exist in the target repository (matched by name) + """ + createLabelsIfMissing: Boolean = false + """ The Node ID of the issue to be transferred """ @@ -33198,6 +50596,26 @@ type Tree implements GitObject & Node { Represents a Git tree entry. """ type TreeEntry { + """ + The extension of the file + """ + extension: String + + """ + Whether or not this tree entry is generated + """ + isGenerated: Boolean! + + """ + The programming language this file is written in. + """ + language: Language + + """ + Number of lines in the file. + """ + lineCount: Int + """ Entry file mode. """ @@ -33208,6 +50626,11 @@ type TreeEntry { """ name: String! + """ + Entry file name. (Base64-encoded) + """ + nameRaw: Base64String! + """ Entry file object. """ @@ -33218,11 +50641,31 @@ type TreeEntry { """ oid: GitObjectID! + """ + The full path of the file. + """ + path: String + + """ + The full path of the file. (Base64-encoded) + """ + pathRaw: Base64String + """ The Repository the tree entry belongs to """ repository: Repository! + """ + Entry byte size + """ + size: Int! + + """ + If the TreeEntry is for a directory occupied by a submodule project, this returns the corresponding submodule + """ + submodule: Submodule + """ Entry file type. """ @@ -33234,6 +50677,71 @@ An RFC 3986, RFC 3987, and RFC 6570 (level 4) compliant URI string. """ scalar URI +""" +Autogenerated input type of UnarchiveProjectV2Item +""" +input UnarchiveProjectV2ItemInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the ProjectV2Item to unarchive. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project to archive the item from. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UnarchiveProjectV2Item +""" +type UnarchiveProjectV2ItemPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item unarchived from the project. + """ + item: ProjectV2Item +} + +""" +Autogenerated input type of UnarchiveRepository +""" +input UnarchiveRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the repository to unarchive. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of UnarchiveRepository +""" +type UnarchiveRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository that was unarchived. + """ + repository: Repository +} + """ Represents an 'unassigned' event on any assignable object. """ @@ -33262,7 +50770,68 @@ type UnassignedEvent implements Node { """ Identifies the subject (user) who was unassigned. """ - user: User @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") + user: User + @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") +} + +""" +Autogenerated input type of UnfollowOrganization +""" +input UnfollowOrganizationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the organization to unfollow. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of UnfollowOrganization +""" +type UnfollowOrganizationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organization that was unfollowed. + """ + organization: Organization +} + +""" +Autogenerated input type of UnfollowUser +""" +input UnfollowUserInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the user to unfollow. + """ + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} + +""" +Autogenerated return type of UnfollowUser +""" +type UnfollowUserPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The user that was unfollowed. + """ + user: User } """ @@ -33347,6 +50916,76 @@ type UnlabeledEvent implements Node { labelable: Labelable! } +""" +Autogenerated input type of UnlinkProjectV2FromRepository +""" +input UnlinkProjectV2FromRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to unlink from the repository. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the repository to unlink from the project. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of UnlinkProjectV2FromRepository +""" +type UnlinkProjectV2FromRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository the project is no longer linked to. + """ + repository: Repository +} + +""" +Autogenerated input type of UnlinkProjectV2FromTeam +""" +input UnlinkProjectV2FromTeamInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to unlink from the team. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the team to unlink from the project. + """ + teamId: ID! @possibleTypes(concreteTypes: ["Team"]) +} + +""" +Autogenerated return type of UnlinkProjectV2FromTeam +""" +type UnlinkProjectV2FromTeamPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The team the project is unlinked from + """ + team: Team +} + """ Autogenerated input type of UnlinkRepositoryFromProject """ @@ -33397,15 +51036,20 @@ input UnlockLockableInput { clientMutationId: String """ - ID of the issue or pull request to be unlocked. + ID of the item to be unlocked. """ - lockableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Lockable") + lockableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Lockable") } """ Autogenerated return type of UnlockLockable """ type UnlockLockablePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + """ A unique identifier for the client performing the mutation. """ @@ -33438,6 +51082,71 @@ type UnlockedEvent implements Node { lockable: Lockable! } +""" +Autogenerated input type of UnmarkDiscussionCommentAsAnswer +""" +input UnmarkDiscussionCommentAsAnswerInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion comment to unmark as an answer. + """ + id: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of UnmarkDiscussionCommentAsAnswer +""" +type UnmarkDiscussionCommentAsAnswerPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that includes the comment. + """ + discussion: Discussion +} + +""" +Autogenerated input type of UnmarkFileAsViewed +""" +input UnmarkFileAsViewedInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The path of the file to mark as unviewed + """ + path: String! + + """ + The Node ID of the pull request. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of UnmarkFileAsViewed +""" +type UnmarkFileAsViewedPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated pull request. + """ + pullRequest: PullRequest +} + """ Autogenerated input type of UnmarkIssueAsDuplicate """ @@ -33473,6 +51182,37 @@ type UnmarkIssueAsDuplicatePayload { duplicate: IssueOrPullRequest } +""" +Represents an 'unmarked_as_duplicate' event on a given issue or pull request. +""" +type UnmarkedAsDuplicateEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + The authoritative issue or pull request which has been duplicated by another. + """ + canonical: IssueOrPullRequest + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The issue or pull request which has been marked as a duplicate of another. + """ + duplicate: IssueOrPullRequest + id: ID! + + """ + Canonical and duplicate belong to different repositories. + """ + isCrossRepository: Boolean! +} + """ Autogenerated input type of UnminimizeComment """ @@ -33485,7 +51225,11 @@ input UnminimizeCommentInput { """ The Node ID of the subject to modify. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "GistComment", "IssueComment", "PullRequestReviewComment"], abstractType: "Minimizable") + subjectId: ID! + @possibleTypes( + concreteTypes: ["CommitComment", "DiscussionComment", "GistComment", "IssueComment", "PullRequestReviewComment"] + abstractType: "Minimizable" + ) } """ @@ -33629,11 +51373,36 @@ interface UpdatableComment { Autogenerated input type of UpdateBranchProtectionRule """ input UpdateBranchProtectionRuleInput { + """ + Can this branch be deleted. + """ + allowsDeletions: Boolean + + """ + Are force pushes allowed on this branch. + """ + allowsForcePushes: Boolean + + """ + Is branch creation a protected operation. + """ + blocksCreations: Boolean + """ The global relay id of the branch protection rule to be updated. """ branchProtectionRuleId: ID! @possibleTypes(concreteTypes: ["BranchProtectionRule"]) + """ + A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. + """ + bypassForcePushActorIds: [ID!] + + """ + A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. + """ + bypassPullRequestActorIds: [ID!] + """ A unique identifier for the client performing the mutation. """ @@ -33649,26 +51418,52 @@ input UpdateBranchProtectionRuleInput { """ isAdminEnforced: Boolean + """ + Whether users can pull changes from upstream when the branch is locked. Set to + `true` to allow fork syncing. Set to `false` to prevent fork syncing. + """ + lockAllowsFetchAndMerge: Boolean + + """ + Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. + """ + lockBranch: Boolean + """ The glob-like pattern used to determine matching branches. """ pattern: String """ - A list of User, Team or App IDs allowed to push to matching branches. + A list of User, Team, or App IDs allowed to push to matching branches. """ pushActorIds: [ID!] + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: Boolean + """ Number of approving reviews required to update matching branches. """ requiredApprovingReviewCount: Int + """ + The list of required deployment environments + """ + requiredDeploymentEnvironments: [String!] + """ List of required status check contexts that must pass for commits to be accepted to matching branches. """ requiredStatusCheckContexts: [String!] + """ + The list of required status checks + """ + requiredStatusChecks: [RequiredStatusCheckInput!] + """ Are approving reviews required to update matching branches. """ @@ -33684,6 +51479,21 @@ input UpdateBranchProtectionRuleInput { """ requiresCommitSignatures: Boolean + """ + Are conversations required to be resolved before merging. + """ + requiresConversationResolution: Boolean + + """ + Are successful deployments required before merging. + """ + requiresDeployments: Boolean + + """ + Are merge commits prohibited from being pushed to this branch. + """ + requiresLinearHistory: Boolean + """ Are status checks required to update matching branches. """ @@ -33705,7 +51515,7 @@ input UpdateBranchProtectionRuleInput { restrictsReviewDismissals: Boolean """ - A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches. + A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches. """ reviewDismissalActorIds: [ID!] } @@ -33728,7 +51538,7 @@ type UpdateBranchProtectionRulePayload { """ Autogenerated input type of UpdateCheckRun """ -input UpdateCheckRunInput @preview(toggledBy: "antiope-preview") { +input UpdateCheckRunInput { """ Possible further actions the integrator can perform, which a user may trigger. """ @@ -33793,7 +51603,7 @@ input UpdateCheckRunInput @preview(toggledBy: "antiope-preview") { """ Autogenerated return type of UpdateCheckRun """ -type UpdateCheckRunPayload @preview(toggledBy: "antiope-preview") { +type UpdateCheckRunPayload { """ The updated check run. """ @@ -33808,7 +51618,7 @@ type UpdateCheckRunPayload @preview(toggledBy: "antiope-preview") { """ Autogenerated input type of UpdateCheckSuitePreferences """ -input UpdateCheckSuitePreferencesInput @preview(toggledBy: "antiope-preview") { +input UpdateCheckSuitePreferencesInput { """ The check suite preferences to modify. """ @@ -33828,7 +51638,7 @@ input UpdateCheckSuitePreferencesInput @preview(toggledBy: "antiope-preview") { """ Autogenerated return type of UpdateCheckSuitePreferences """ -type UpdateCheckSuitePreferencesPayload @preview(toggledBy: "antiope-preview") { +type UpdateCheckSuitePreferencesPayload { """ A unique identifier for the client performing the mutation. """ @@ -33841,13 +51651,13 @@ type UpdateCheckSuitePreferencesPayload @preview(toggledBy: "antiope-preview") { } """ -Autogenerated input type of UpdateEnterpriseActionExecutionCapabilitySetting +Autogenerated input type of UpdateDiscussionComment """ -input UpdateEnterpriseActionExecutionCapabilitySettingInput { +input UpdateDiscussionCommentInput { """ - The value for the action execution capability setting on the enterprise. + The new contents of the comment body. """ - capability: ActionExecutionCapabilitySetting! + body: String! """ A unique identifier for the client performing the mutation. @@ -33855,29 +51665,69 @@ input UpdateEnterpriseActionExecutionCapabilitySettingInput { clientMutationId: String """ - The ID of the enterprise on which to set the members can create repositories setting. + The Node ID of the discussion comment to update. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + commentId: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) } """ -Autogenerated return type of UpdateEnterpriseActionExecutionCapabilitySetting +Autogenerated return type of UpdateDiscussionComment """ -type UpdateEnterpriseActionExecutionCapabilitySettingPayload { +type UpdateDiscussionCommentPayload { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The enterprise with the updated action execution capability setting. + The modified discussion comment. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + comment: DiscussionComment +} +""" +Autogenerated input type of UpdateDiscussion +""" +input UpdateDiscussionInput { """ - A message confirming the result of updating the action execution capability setting. + The new contents of the discussion body. """ - message: String + body: String + + """ + The Node ID of a discussion category within the same repository to change this discussion to. + """ + categoryId: ID @possibleTypes(concreteTypes: ["DiscussionCategory"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion to update. + """ + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) + + """ + The new discussion title. + """ + title: String +} + +""" +Autogenerated return type of UpdateDiscussion +""" +type UpdateDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The modified discussion. + """ + discussion: Discussion } """ @@ -33934,6 +51784,11 @@ input UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput { """ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + """ + The value for the allow private repository forking policy on the enterprise. + """ + policyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue + """ The value for the allow private repository forking setting on the enterprise. """ @@ -33952,7 +51807,7 @@ type UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload { """ The enterprise with the updated allow private repository forking setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the allow private repository forking setting. @@ -33970,12 +51825,12 @@ input UpdateEnterpriseDefaultRepositoryPermissionSettingInput { clientMutationId: String """ - The ID of the enterprise on which to set the default repository permission setting. + The ID of the enterprise on which to set the base repository permission setting. """ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The value for the default repository permission setting on the enterprise. + The value for the base repository permission setting on the enterprise. """ settingValue: EnterpriseDefaultRepositoryPermissionSettingValue! } @@ -33990,12 +51845,12 @@ type UpdateEnterpriseDefaultRepositoryPermissionSettingPayload { clientMutationId: String """ - The enterprise with the updated default repository permission setting. + The enterprise with the updated base repository permission setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ - A message confirming the result of updating the default repository permission setting. + A message confirming the result of updating the base repository permission setting. """ message: String } @@ -34032,7 +51887,7 @@ type UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload { """ The enterprise with the updated members can change repository visibility setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can change repository visibility setting. @@ -34055,9 +51910,30 @@ input UpdateEnterpriseMembersCanCreateRepositoriesSettingInput { enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The value for the members can create repositories setting on the enterprise. + Allow members to create internal repositories. Defaults to current value. + """ + membersCanCreateInternalRepositories: Boolean + + """ + Allow members to create private repositories. Defaults to current value. + """ + membersCanCreatePrivateRepositories: Boolean + + """ + Allow members to create public repositories. Defaults to current value. + """ + membersCanCreatePublicRepositories: Boolean + """ - settingValue: EnterpriseMembersCanCreateRepositoriesSettingValue! + When false, allow member organizations to set their own repository creation member privileges. + """ + membersCanCreateRepositoriesPolicyEnabled: Boolean + + """ + Value for the members can create repositories setting on the enterprise. This + or the granular public/private/internal allowed fields (but not both) must be provided. + """ + settingValue: EnterpriseMembersCanCreateRepositoriesSettingValue } """ @@ -34072,7 +51948,7 @@ type UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload { """ The enterprise with the updated members can create repositories setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can create repositories setting. @@ -34112,7 +51988,7 @@ type UpdateEnterpriseMembersCanDeleteIssuesSettingPayload { """ The enterprise with the updated members can delete issues setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can delete issues setting. @@ -34152,7 +52028,7 @@ type UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload { """ The enterprise with the updated members can delete repositories setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can delete repositories setting. @@ -34192,7 +52068,7 @@ type UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload { """ The enterprise with the updated members can invite collaborators setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can invite collaborators setting. @@ -34232,7 +52108,7 @@ type UpdateEnterpriseMembersCanMakePurchasesSettingPayload { """ The enterprise with the updated members can make purchases setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can make purchases setting. @@ -34272,7 +52148,7 @@ type UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload { """ The enterprise with the updated members can update protected branches setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can update protected branches setting. @@ -34312,7 +52188,7 @@ type UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload { """ The enterprise with the updated members can view dependency insights setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the members can view dependency insights setting. @@ -34352,7 +52228,7 @@ type UpdateEnterpriseOrganizationProjectsSettingPayload { """ The enterprise with the updated organization projects setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the organization projects setting. @@ -34360,6 +52236,46 @@ type UpdateEnterpriseOrganizationProjectsSettingPayload { message: String } +""" +Autogenerated input type of UpdateEnterpriseOwnerOrganizationRole +""" +input UpdateEnterpriseOwnerOrganizationRoleInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Enterprise which the owner belongs to. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the organization for membership change. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The role to assume in the organization. + """ + organizationRole: RoleInOrganization! +} + +""" +Autogenerated return type of UpdateEnterpriseOwnerOrganizationRole +""" +type UpdateEnterpriseOwnerOrganizationRolePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of changing the owner's organization role. + """ + message: String +} + """ Autogenerated input type of UpdateEnterpriseProfile """ @@ -34407,7 +52323,7 @@ type UpdateEnterpriseProfilePayload { """ The updated enterprise. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise } """ @@ -34442,7 +52358,7 @@ type UpdateEnterpriseRepositoryProjectsSettingPayload { """ The enterprise with the updated repository projects setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the repository projects setting. @@ -34482,7 +52398,7 @@ type UpdateEnterpriseTeamDiscussionsSettingPayload { """ The enterprise with the updated team discussions setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the team discussions setting. @@ -34522,7 +52438,7 @@ type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload { """ The enterprise with the updated two factor authentication required setting. """ - enterprise: Enterprise @preview(toggledBy: "enterprise-accounts-preview") + enterprise: Enterprise """ A message confirming the result of updating the two factor authentication required setting. @@ -34530,6 +52446,161 @@ type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload { message: String } +""" +Autogenerated input type of UpdateEnvironment +""" +input UpdateEnvironmentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The node ID of the environment. + """ + environmentId: ID! @possibleTypes(concreteTypes: ["Environment"]) + + """ + The ids of users or teams that can approve deployments to this environment + """ + reviewers: [ID!] + + """ + The wait timer in minutes. + """ + waitTimer: Int +} + +""" +Autogenerated return type of UpdateEnvironment +""" +type UpdateEnvironmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated environment. + """ + environment: Environment +} + +""" +Autogenerated input type of UpdateIpAllowListEnabledSetting +""" +input UpdateIpAllowListEnabledSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the owner on which to set the IP allow list enabled setting. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") + + """ + The value for the IP allow list enabled setting. + """ + settingValue: IpAllowListEnabledSettingValue! +} + +""" +Autogenerated return type of UpdateIpAllowListEnabledSetting +""" +type UpdateIpAllowListEnabledSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IP allow list owner on which the setting was updated. + """ + owner: IpAllowListOwner +} + +""" +Autogenerated input type of UpdateIpAllowListEntry +""" +input UpdateIpAllowListEntryInput { + """ + An IP address or range of addresses in CIDR notation. + """ + allowListValue: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the IP allow list entry to update. + """ + ipAllowListEntryId: ID! @possibleTypes(concreteTypes: ["IpAllowListEntry"]) + + """ + Whether the IP allow list entry is active when an IP allow list is enabled. + """ + isActive: Boolean! + + """ + An optional name for the IP allow list entry. + """ + name: String +} + +""" +Autogenerated return type of UpdateIpAllowListEntry +""" +type UpdateIpAllowListEntryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IP allow list entry that was updated. + """ + ipAllowListEntry: IpAllowListEntry +} + +""" +Autogenerated input type of UpdateIpAllowListForInstalledAppsEnabledSetting +""" +input UpdateIpAllowListForInstalledAppsEnabledSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the owner. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") + + """ + The value for the IP allow list configuration for installed GitHub Apps setting. + """ + settingValue: IpAllowListForInstalledAppsEnabledSettingValue! +} + +""" +Autogenerated return type of UpdateIpAllowListForInstalledAppsEnabledSetting +""" +type UpdateIpAllowListForInstalledAppsEnabledSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IP allow list owner on which the setting was updated. + """ + owner: IpAllowListOwner +} + """ Autogenerated input type of UpdateIssueComment """ @@ -34619,6 +52690,11 @@ input UpdateIssueInput { Autogenerated return type of UpdateIssue """ type UpdateIssuePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + """ A unique identifier for the client performing the mutation. """ @@ -34675,6 +52751,121 @@ type UpdateLabelPayload @preview(toggledBy: "bane-preview") { label: Label } +""" +Autogenerated input type of UpdateNotificationRestrictionSetting +""" +input UpdateNotificationRestrictionSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the owner on which to set the restrict notifications setting. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "VerifiableDomainOwner") + + """ + The value for the restrict notifications setting. + """ + settingValue: NotificationRestrictionSettingValue! +} + +""" +Autogenerated return type of UpdateNotificationRestrictionSetting +""" +type UpdateNotificationRestrictionSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The owner on which the setting was updated. + """ + owner: VerifiableDomainOwner +} + +""" +Autogenerated input type of UpdateOrganizationAllowPrivateRepositoryForkingSetting +""" +input UpdateOrganizationAllowPrivateRepositoryForkingSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Enable forking of private repositories in the organization? + """ + forkingEnabled: Boolean! + + """ + The ID of the organization on which to set the allow private repository forking setting. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of UpdateOrganizationAllowPrivateRepositoryForkingSetting +""" +type UpdateOrganizationAllowPrivateRepositoryForkingSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of updating the allow private repository forking setting. + """ + message: String + + """ + The organization with the updated allow private repository forking setting. + """ + organization: Organization +} + +""" +Autogenerated input type of UpdateOrganizationWebCommitSignoffSetting +""" +input UpdateOrganizationWebCommitSignoffSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the organization on which to set the web commit signoff setting. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + Enable signoff on web-based commits for repositories in the organization? + """ + webCommitSignoffRequired: Boolean! +} + +""" +Autogenerated return type of UpdateOrganizationWebCommitSignoffSetting +""" +type UpdateOrganizationWebCommitSignoffSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of updating the web commit signoff setting. + """ + message: String + + """ + The organization with the updated web commit signoff setting. + """ + organization: Organization +} + """ Autogenerated input type of UpdateProjectCard """ @@ -34800,10 +52991,259 @@ type UpdateProjectPayload { project: Project } +""" +Autogenerated input type of UpdateProjectV2DraftIssue +""" +input UpdateProjectV2DraftIssueInput { + """ + The IDs of the assignees of the draft issue. + """ + assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"]) + + """ + The body of the draft issue. + """ + body: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the draft issue to update. + """ + draftIssueId: ID! @possibleTypes(concreteTypes: ["DraftIssue"]) + + """ + The title of the draft issue. + """ + title: String +} + +""" +Autogenerated return type of UpdateProjectV2DraftIssue +""" +type UpdateProjectV2DraftIssuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The draft issue updated in the project. + """ + draftIssue: DraftIssue +} + +""" +Autogenerated input type of UpdateProjectV2 +""" +input UpdateProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Set the project to closed or open. + """ + closed: Boolean + + """ + The ID of the Project to update. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + Set the project to public or private. + """ + public: Boolean + + """ + Set the readme description of the project. + """ + readme: String + + """ + Set the short description of the project. + """ + shortDescription: String + + """ + Set the title of the project. + """ + title: String +} + +""" +Autogenerated input type of UpdateProjectV2ItemFieldValue +""" +input UpdateProjectV2ItemFieldValueInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the field to be updated. + """ + fieldId: ID! + @possibleTypes( + concreteTypes: ["ProjectV2Field", "ProjectV2IterationField", "ProjectV2SingleSelectField"] + abstractType: "ProjectV2FieldConfiguration" + ) + + """ + The ID of the item to be updated. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The value which will be set on the field. + """ + value: ProjectV2FieldValue! +} + +""" +Autogenerated return type of UpdateProjectV2ItemFieldValue +""" +type UpdateProjectV2ItemFieldValuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated item. + """ + projectV2Item: ProjectV2Item +} + +""" +Autogenerated input type of UpdateProjectV2ItemPosition +""" +input UpdateProjectV2ItemPositionInput { + """ + The ID of the item to position this item after. If omitted or set to null the item will be moved to top. + """ + afterId: ID @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the item to be moved. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UpdateProjectV2ItemPosition +""" +type UpdateProjectV2ItemPositionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The items in the new order + """ + items( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ItemConnection +} + +""" +Autogenerated return type of UpdateProjectV2 +""" +type UpdateProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated Project. + """ + projectV2: ProjectV2 +} + +""" +Autogenerated input type of UpdatePullRequestBranch +""" +input UpdatePullRequestBranchInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The head ref oid for the upstream branch. + """ + expectedHeadOid: GitObjectID + + """ + The Node ID of the pull request. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of UpdatePullRequestBranch +""" +type UpdatePullRequestBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated pull request. + """ + pullRequest: PullRequest +} + """ Autogenerated input type of UpdatePullRequest """ input UpdatePullRequestInput { + """ + An array of Node IDs of users for this pull request. + """ + assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"]) + """ The name of the branch you want your changes pulled into. This should be an existing branch on the current repository. @@ -34820,16 +53260,36 @@ input UpdatePullRequestInput { """ clientMutationId: String + """ + An array of Node IDs of labels for this pull request. + """ + labelIds: [ID!] @possibleTypes(concreteTypes: ["Label"]) + """ Indicates whether maintainers can modify the pull request. """ maintainerCanModify: Boolean + """ + The Node ID of the milestone for this pull request. + """ + milestoneId: ID @possibleTypes(concreteTypes: ["Milestone"]) + + """ + An array of Node IDs for projects associated with this pull request. + """ + projectIds: [ID!] + """ The Node ID of the pull request. """ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + """ + The target state of the pull request. + """ + state: PullRequestUpdateState + """ The title of the pull request. """ @@ -34840,6 +53300,11 @@ input UpdatePullRequestInput { Autogenerated return type of UpdatePullRequest """ type UpdatePullRequestPayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + """ A unique identifier for the client performing the mutation. """ @@ -34961,6 +53426,36 @@ type UpdateRefPayload { ref: Ref } +""" +Autogenerated input type of UpdateRefs +""" +input UpdateRefsInput @preview(toggledBy: "update-refs-preview") { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A list of ref updates. + """ + refUpdates: [RefUpdate!]! + + """ + The Node ID of the repository. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of UpdateRefs +""" +type UpdateRefsPayload @preview(toggledBy: "update-refs-preview") { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + """ Autogenerated input type of UpdateRepository """ @@ -34975,6 +53470,11 @@ input UpdateRepositoryInput { """ description: String + """ + Indicates if the repository should have the discussions feature enabled. + """ + hasDiscussionsEnabled: Boolean + """ Indicates if the repository should have the issues feature enabled. """ @@ -35027,6 +53527,104 @@ type UpdateRepositoryPayload { repository: Repository } +""" +Autogenerated input type of UpdateRepositoryWebCommitSignoffSetting +""" +input UpdateRepositoryWebCommitSignoffSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the repository to update. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + + """ + Indicates if the repository should require signoff on web-based commits. + """ + webCommitSignoffRequired: Boolean! +} + +""" +Autogenerated return type of UpdateRepositoryWebCommitSignoffSetting +""" +type UpdateRepositoryWebCommitSignoffSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of updating the web commit signoff setting. + """ + message: String + + """ + The updated repository. + """ + repository: Repository +} + +""" +Autogenerated input type of UpdateSponsorshipPreferences +""" +input UpdateSponsorshipPreferencesInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Specify whether others should be able to see that the sponsor is sponsoring + the sponsorable. Public visibility still does not reveal which tier is used. + """ + privacyLevel: SponsorshipPrivacy = PUBLIC + + """ + Whether the sponsor should receive email updates from the sponsorable. + """ + receiveEmails: Boolean = true + + """ + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. + """ + sponsorId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsor") + + """ + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. + """ + sponsorLogin: String + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String +} + +""" +Autogenerated return type of UpdateSponsorshipPreferences +""" +type UpdateSponsorshipPreferencesPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The sponsorship that was updated. + """ + sponsorship: Sponsorship +} + """ Autogenerated input type of UpdateSubscription """ @@ -35044,7 +53642,11 @@ input UpdateSubscriptionInput { """ The Node ID of the subscribable object to modify. """ - subscribableId: ID! @possibleTypes(concreteTypes: ["Commit", "Issue", "PullRequest", "Repository", "Team", "TeamDiscussion"], abstractType: "Subscribable") + subscribableId: ID! + @possibleTypes( + concreteTypes: ["Commit", "Discussion", "Issue", "PullRequest", "Repository", "Team", "TeamDiscussion"] + abstractType: "Subscribable" + ) } """ @@ -35065,7 +53667,7 @@ type UpdateSubscriptionPayload { """ Autogenerated input type of UpdateTeamDiscussionComment """ -input UpdateTeamDiscussionCommentInput @preview(toggledBy: "echo-preview") { +input UpdateTeamDiscussionCommentInput { """ The updated text of the comment. """ @@ -35090,7 +53692,7 @@ input UpdateTeamDiscussionCommentInput @preview(toggledBy: "echo-preview") { """ Autogenerated return type of UpdateTeamDiscussionComment """ -type UpdateTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") { +type UpdateTeamDiscussionCommentPayload { """ A unique identifier for the client performing the mutation. """ @@ -35105,7 +53707,7 @@ type UpdateTeamDiscussionCommentPayload @preview(toggledBy: "echo-preview") { """ Autogenerated input type of UpdateTeamDiscussion """ -input UpdateTeamDiscussionInput @preview(toggledBy: "echo-preview") { +input UpdateTeamDiscussionInput { """ The updated text of the discussion. """ @@ -35141,7 +53743,7 @@ input UpdateTeamDiscussionInput @preview(toggledBy: "echo-preview") { """ Autogenerated return type of UpdateTeamDiscussion """ -type UpdateTeamDiscussionPayload @preview(toggledBy: "echo-preview") { +type UpdateTeamDiscussionPayload { """ A unique identifier for the client performing the mutation. """ @@ -35153,6 +53755,106 @@ type UpdateTeamDiscussionPayload @preview(toggledBy: "echo-preview") { teamDiscussion: TeamDiscussion } +""" +Autogenerated input type of UpdateTeamReviewAssignment +""" +input UpdateTeamReviewAssignmentInput @preview(toggledBy: "stone-crop-preview") { + """ + The algorithm to use for review assignment + """ + algorithm: TeamReviewAssignmentAlgorithm = ROUND_ROBIN + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Turn on or off review assignment + """ + enabled: Boolean! + + """ + An array of team member IDs to exclude + """ + excludedTeamMemberIds: [ID!] @possibleTypes(concreteTypes: ["User"]) + + """ + The Node ID of the team to update review assignments of + """ + id: ID! @possibleTypes(concreteTypes: ["Team"]) + + """ + Notify the entire team of the PR if it is delegated + """ + notifyTeam: Boolean = true + + """ + The number of team members to assign + """ + teamMemberCount: Int = 1 +} + +""" +Autogenerated return type of UpdateTeamReviewAssignment +""" +type UpdateTeamReviewAssignmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The team that was modified + """ + team: Team +} + +""" +Autogenerated input type of UpdateTeamsRepository +""" +input UpdateTeamsRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Permission that should be granted to the teams. + """ + permission: RepositoryPermission! + + """ + Repository ID being granted access to. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + + """ + A list of teams being granted access. Limit: 10 + """ + teamIds: [ID!]! @possibleTypes(concreteTypes: ["Team"]) +} + +""" +Autogenerated return type of UpdateTeamsRepository +""" +type UpdateTeamsRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository that was updated. + """ + repository: Repository + + """ + The teams granted permission on the repository. + """ + teams: [Team!] +} + """ Autogenerated input type of UpdateTopics """ @@ -35196,7 +53898,7 @@ type UpdateTopicsPayload { """ A user is an individual's account on GitHub that owns repositories and can make new content. """ -type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackageOwner & RegistryPackageSearch & RepositoryOwner & Sponsorable & UniformResourceLocatable { +type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & Sponsorable & UniformResourceLocatable { """ Determine if this repository owner has any items that can be pinned to their profile. """ @@ -35227,6 +53929,16 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ bioHTML: HTML! + """ + Could this user receive email notifications, if the organization had notification restrictions enabled? + """ + canReceiveOrganizationEmailsWhenNotificationsRestricted( + """ + The login of the organization to check. + """ + login: String! + ): Boolean! + """ A list of commit comments made by this user. """ @@ -35277,8 +53989,9 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag organizationID: ID """ - Only contributions made before and up to and including this time will be - counted. If omitted, defaults to the current time. + Only contributions made before and up to (including) this time will be + counted. If omitted, defaults to the current time or one year from the + provided from argument. """ to: DateTime ): ContributionsCollection! @@ -35298,6 +54011,11 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ email: String! + """ + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). + """ + estimatedNextSponsorsPayoutInCents: Int! + """ A list of users the given user is followed by. """ @@ -35418,6 +54136,11 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag privacy: GistPrivacy ): GistConnection! + """ + True if this user/organization has a GitHub Sponsors listing. + """ + hasSponsorsListing: Boolean! + """ The hovercard information for this user in a given context """ @@ -35429,6 +54152,11 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag ): Hovercard! id: ID! + """ + The interaction ability settings for this user. + """ + interactionAbility: RepositoryInteractionAbility + """ Whether or not this user is a participant in the GitHub Security Bug Bounty. """ @@ -35449,6 +54177,16 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ isEmployee: Boolean! + """ + Whether or not this user is following the viewer. Inverse of viewer_is_following + """ + isFollowingViewer: Boolean! + + """ + Whether or not this user is a member of the GitHub Stars Program. + """ + isGitHubStar: Boolean! + """ Whether or not the user has marked themselves as for hire. """ @@ -35459,6 +54197,21 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ isSiteAdmin: Boolean! + """ + Whether the given account is sponsoring this user/organization. + """ + isSponsoredBy( + """ + The target account's login. + """ + accountLogin: String! + ): Boolean! + + """ + True if the viewer is sponsored by this user/organization. + """ + isSponsoringViewer: Boolean! + """ Whether or not this user is the viewing user. """ @@ -35487,6 +54240,11 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag Returns the last _n_ elements from the list. """ last: Int + + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder ): IssueCommentConnection! """ @@ -35550,6 +54308,11 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ login: String! + """ + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). + """ + monthlyEstimatedSponsorsIncomeInCents: Int! + """ The user's public profile name. """ @@ -35565,6 +54328,16 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag login: String! ): Organization + """ + Verified email addresses that match verified domains for a specified organization the user is a member of. + """ + organizationVerifiedDomainEmails( + """ + The login of the organization to match verified domains from. + """ + login: String! + ): [String!]! + """ A list of organizations the user belongs to. """ @@ -35588,8 +54361,58 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag Returns the last _n_ elements from the list. """ last: Int + + """ + Ordering options for the User's organizations. + """ + orderBy: OrganizationOrder = null ): OrganizationConnection! + """ + A list of packages under the owner. + """ + packages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Find packages by their names. + """ + names: [String] + + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter registry package by type. + """ + packageType: PackageType + + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! + """ A list of repositories and gists this profile owner can pin to their profile. """ @@ -35656,15 +54479,220 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag pinnedItemsRemaining: Int! """ - A list of repositories this user has pinned to their profile + Find project by number. + """ + project( + """ + The project number to find. + """ + number: Int! + ): Project + + """ + Find a project by number. + """ + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 + + """ + A list of projects under the owner. + """ + projects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder + + """ + Query to search projects by, currently only searching by name. + """ + search: String + + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! + + """ + The HTTP path listing user's projects + """ + projectsResourcePath: URI! + + """ + The HTTP URL listing user's projects + """ + projectsUrl: URI! + + """ + A list of projects under the owner. + """ + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! + + """ + A list of public keys associated with this user. + """ + publicKeys( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PublicKeyConnection! + + """ + A list of pull requests associated with this user. + """ + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! + + """ + Recent projects that this user has modified in the context of the owner. + """ + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! + + """ + A list of repositories that the user owns. """ - pinnedRepositories( + repositories( """ Array of viewer's affiliation options for repositories returned from the connection. For example, OWNER will include only repositories that the current viewer owns. """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + affiliations: [RepositoryAffiliation] """ Returns the elements in the list that come after the specified cursor. @@ -35681,6 +54709,11 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ first: Int + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean + """ If non-null, filters repositories according to whether they have been locked """ @@ -35707,22 +54740,12 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag If non-null, filters repositories according to privacy """ privacy: RepositoryPrivacy - ): RepositoryConnection! @deprecated(reason: "pinnedRepositories will be removed Use ProfileOwner.pinnedItems instead. Removal on 2019-10-01 UTC.") - - """ - Find project by number. - """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + ): RepositoryConnection! """ - A list of projects under the owner. + A list of repositories that the user recently contributed to. """ - projects( + repositoriesContributedTo( """ Returns the elements in the list that come after the specified cursor. """ @@ -35733,46 +54756,62 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ before: String + """ + If non-null, include only the specified types of contributions. The + GitHub.com UI uses [COMMIT, ISSUE, PULL_REQUEST, REPOSITORY] + """ + contributionTypes: [RepositoryContributionType] + """ Returns the first _n_ elements from the list. """ first: Int """ - Returns the last _n_ elements from the list. + If true, include user repositories """ - last: Int + includeUserRepositories: Boolean """ - Ordering options for projects returned from the connection + If non-null, filters repositories according to whether they have been locked """ - orderBy: ProjectOrder + isLocked: Boolean """ - Query to search projects by, currently only searching by name. + Returns the last _n_ elements from the list. """ - search: String + last: Int """ - A list of states to filter the projects by. + Ordering options for repositories returned from the connection """ - states: [ProjectState!] - ): ProjectConnection! + orderBy: RepositoryOrder - """ - The HTTP path listing user's projects - """ - projectsResourcePath: URI! + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - The HTTP URL listing user's projects + Find Repository. """ - projectsUrl: URI! + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + + """ + Name of Repository to find. + """ + name: String! + ): Repository """ - A list of public keys associated with this user. + Discussion comments this user has authored. """ - publicKeys( + repositoryDiscussionComments( """ Returns the elements in the list that come after the specified cursor. """ @@ -35792,21 +54831,32 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag Returns the last _n_ elements from the list. """ last: Int - ): PublicKeyConnection! + + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! """ - A list of pull requests associated with this user. + Discussions this user has started. """ - pullRequests( + repositoryDiscussions( """ Returns the elements in the list that come after the specified cursor. """ after: String """ - The base ref name to filter the pull requests by. + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. """ - baseRefName: String + answered: Boolean = null """ Returns the elements in the list that come before the specified cursor. @@ -35818,36 +54868,31 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ first: Int - """ - The head ref name to filter the pull requests by. - """ - headRefName: String - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for pull requests returned from the connection. + Ordering options for discussions returned from the connection. """ - orderBy: IssueOrder + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} """ - A list of states to filter the pull requests by. + Filter discussions to only those in a specific repository. """ - states: [PullRequestState!] - ): PullRequestConnection! + repositoryId: ID + ): DiscussionConnection! + + """ + The HTTP path for this user + """ + resourcePath: URI! """ - A list of registry packages under the owner. + Replies this user has saved """ - registryPackages( + savedReplies( """ Returns the elements in the list that come after the specified cursor. """ @@ -35869,40 +54914,40 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag last: Int """ - Find registry package by name. - """ - name: String - - """ - Find registry packages by their names. + The field to order saved replies by. """ - names: [String] + orderBy: SavedReplyOrder = {field: UPDATED_AT, direction: DESC} + ): SavedReplyConnection + """ + The user's social media accounts, ordered as they appear on the user's profile. + """ + socialAccounts( """ - Filter registry package by type. + Returns the elements in the list that come after the specified cursor. """ - packageType: RegistryPackageType + after: String """ - Filter registry package by whether it is publicly visible + Returns the elements in the list that come before the specified cursor. """ - publicOnly: Boolean = false + before: String """ - Filter registry package by type (string). + Returns the first _n_ elements from the list. """ - registryPackageType: String + first: Int """ - Find registry packages in a repository. + Returns the last _n_ elements from the list. """ - repositoryId: ID - ): RegistryPackageConnection! + last: Int + ): SocialAccountConnection! """ - A list of registry packages for a particular search query. + List of users and organizations this entity is sponsoring. """ - registryPackagesForQuery( + sponsoring( """ Returns the elements in the list that come after the specified cursor. """ @@ -35924,27 +54969,15 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag last: Int """ - Filter registry package by type. - """ - packageType: RegistryPackageType - - """ - Find registry package by search query. + Ordering options for the users and organizations returned from the connection. """ - query: String - ): RegistryPackageConnection! + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! """ - A list of repositories that the user owns. + List of sponsors for this user or organization. """ - repositories( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] - + sponsors( """ Returns the elements in the list that come after the specified cursor. """ @@ -35960,43 +54993,32 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ first: Int - """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean - - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean - """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for repositories returned from the connection + Ordering options for sponsors returned from the connection. """ - orderBy: RepositoryOrder + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + tierId: ID + ): SponsorConnection! + """ + Events involving this sponsorable, such as new sponsorships. + """ + sponsorsActivities( """ - If non-null, filters repositories according to privacy + Filter activities to only the specified actions. """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + actions: [SponsorsActivityAction!] = [] - """ - A list of repositories that the user recently contributed to. - """ - repositoriesContributedTo( """ Returns the elements in the list that come after the specified cursor. """ @@ -36008,61 +55030,76 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag before: String """ - If non-null, include only the specified types of contributions. The - GitHub.com UI uses [COMMIT, ISSUE, PULL_REQUEST, REPOSITORY] + Returns the first _n_ elements from the list. """ - contributionTypes: [RepositoryContributionType] + first: Int """ - Returns the first _n_ elements from the list. + Whether to include those events where this sponsorable acted as the sponsor. + Defaults to only including events where this sponsorable was the recipient + of a sponsorship. """ - first: Int + includeAsSponsor: Boolean = false """ - If true, include user repositories + Returns the last _n_ elements from the list. """ - includeUserRepositories: Boolean + last: Int """ - If non-null, filters repositories according to whether they have been locked + Ordering options for activity returned from the connection. """ - isLocked: Boolean + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} """ - Returns the last _n_ elements from the list. + Filter activities returned to only those that occurred in the most recent + specified time period. Set to ALL to avoid filtering by when the activity + occurred. Will be ignored if `since` or `until` is given. """ - last: Int + period: SponsorsActivityPeriod = MONTH """ - Ordering options for repositories returned from the connection + Filter activities to those that occurred on or after this time. """ - orderBy: RepositoryOrder + since: DateTime """ - If non-null, filters repositories according to privacy + Filter activities to those that occurred before this time. """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + until: DateTime + ): SponsorsActivityConnection! """ - Find Repository. + The GitHub Sponsors listing for this user or organization. """ - repository( + sponsorsListing: SponsorsListing + + """ + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. + """ + sponsorshipForViewerAsSponsor( """ - Name of Repository to find. + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. """ - name: String! - ): Repository + activeOnly: Boolean = true + ): Sponsorship """ - The HTTP path for this user + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - resourcePath: URI! + sponsorshipForViewerAsSponsorable( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - Replies this user has saved + List of sponsorship updates sent from this sponsorable to sponsors. """ - savedReplies( + sponsorshipNewsletters( """ Returns the elements in the list that come after the specified cursor. """ @@ -36084,15 +55121,21 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag last: Int """ - The field to order saved replies by. + Ordering options for sponsorship updates returned from the connection. """ - orderBy: SavedReplyOrder = {field: UPDATED_AT, direction: DESC} - ): SavedReplyConnection + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - This object's sponsorships as the maintainer. + The sponsorships where this user or organization is the maintainer receiving the funds. """ sponsorshipsAsMaintainer( + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true + """ Returns the elements in the list that come after the specified cursor. """ @@ -36126,9 +55169,14 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag ): SponsorshipConnection! """ - This object's sponsorships as the sponsor. + The sponsorships where this user or organization is the funder. """ sponsorshipsAsSponsor( + """ + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. + """ + activeOnly: Boolean = true + """ Returns the elements in the list that come after the specified cursor. """ @@ -36149,6 +55197,13 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag """ last: Int + """ + Filter sponsorships returned to those for the specified maintainers. That + is, the recipient of the sponsorship is a user or organization with one of + the given logins. + """ + maintainerLogins: [String!] + """ Ordering options for sponsorships returned from this connection. If left blank, the sponsorships will be ordered based on relevancy to the viewer. @@ -36231,6 +55286,33 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag since: DateTime ): RepositoryConnection! + """ + The amount in United States cents (e.g., 500 = $5.00 USD) that this entity has + spent on GitHub to fund sponsorships. Only returns a value when viewed by the + user themselves or by a user who can manage sponsorships for the requested organization. + """ + totalSponsorshipAmountAsSponsorInCents( + """ + Filter payments to those that occurred on or after this time. + """ + since: DateTime + + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] + + """ + Filter payments to those that occurred before this time. + """ + until: DateTime + ): Int + + """ + The user's Twitter username. + """ + twitterUsername: String + """ Identifies the date and time when the object was last updated. """ @@ -36257,18 +55339,30 @@ type User implements Actor & Node & ProfileOwner & ProjectOwner & RegistryPackag viewerCanFollow: Boolean! """ - Whether or not this user is followed by the viewer. + Whether or not the viewer is able to sponsor this user/organization. + """ + viewerCanSponsor: Boolean! + + """ + Whether or not this user is followed by the viewer. Inverse of is_following_viewer. """ viewerIsFollowing: Boolean! + """ + True if the viewer is sponsoring this user/organization. + """ + viewerIsSponsoring: Boolean! + """ A list of repositories the given user is watching. """ watching( """ - Affiliation options for repositories returned from the connection + Affiliation options for repositories returned from the connection. If none + specified, the results will include repositories for which the current + viewer is an owner or collaborator, or member. """ - affiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR, ORGANIZATION_MEMBER] + affiliations: [RepositoryAffiliation] """ Returns the elements in the list that come after the specified cursor. @@ -36496,6 +55590,26 @@ type UserEdge { node: User } +""" +Email attributes from External Identity +""" +type UserEmailMetadata { + """ + Boolean to identify primary emails + """ + primary: Boolean + + """ + Type of email + """ + type: String + + """ + Email id + """ + value: String! +} + """ The user's description of what they're currently doing. """ @@ -36519,10 +55633,6 @@ type UserStatus implements Node { If set, the status will not be shown after this date. """ expiresAt: DateTime - - """ - ID of the object. - """ id: ID! """ @@ -36616,6 +55726,187 @@ enum UserStatusOrderField { UPDATED_AT } +""" +A domain that can be verified or approved for an organization or an enterprise. +""" +type VerifiableDomain implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The DNS host name that should be used for verification. + """ + dnsHostName: URI + + """ + The unicode encoded domain. + """ + domain: URI! + + """ + Whether a TXT record for verification with the expected host name was found. + """ + hasFoundHostName: Boolean! + + """ + Whether a TXT record for verification with the expected verification token was found. + """ + hasFoundVerificationToken: Boolean! + id: ID! + + """ + Whether or not the domain is approved. + """ + isApproved: Boolean! + + """ + Whether this domain is required to exist for an organization or enterprise policy to be enforced. + """ + isRequiredForPolicyEnforcement: Boolean! + + """ + Whether or not the domain is verified. + """ + isVerified: Boolean! + + """ + The owner of the domain. + """ + owner: VerifiableDomainOwner! + + """ + The punycode encoded domain. + """ + punycodeEncodedDomain: URI! + + """ + The time that the current verification token will expire. + """ + tokenExpirationTime: DateTime + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The current verification token for the domain. + """ + verificationToken: String +} + +""" +The connection type for VerifiableDomain. +""" +type VerifiableDomainConnection { + """ + A list of edges. + """ + edges: [VerifiableDomainEdge] + + """ + A list of nodes. + """ + nodes: [VerifiableDomain] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type VerifiableDomainEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: VerifiableDomain +} + +""" +Ordering options for verifiable domain connections. +""" +input VerifiableDomainOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order verifiable domains by. + """ + field: VerifiableDomainOrderField! +} + +""" +Properties by which verifiable domain connections can be ordered. +""" +enum VerifiableDomainOrderField { + """ + Order verifiable domains by their creation date. + """ + CREATED_AT + + """ + Order verifiable domains by the domain name. + """ + DOMAIN +} + +""" +Types that can own a verifiable domain. +""" +union VerifiableDomainOwner = Enterprise | Organization + +""" +Autogenerated input type of VerifyVerifiableDomain +""" +input VerifyVerifiableDomainInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the verifiable domain to verify. + """ + id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"]) +} + +""" +Autogenerated return type of VerifyVerifiableDomain +""" +type VerifyVerifiableDomainPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The verifiable domain that was verified. + """ + domain: VerifiableDomain +} + """ A hovercard context with a message describing how the viewer is related. """ @@ -36636,7 +55927,249 @@ type ViewerHovercardContext implements HovercardContext { viewer: User! } +""" +A subject that may be upvoted. +""" +interface Votable { + """ + Number of upvotes that this subject has received. + """ + upvoteCount: Int! + + """ + Whether or not the current user can add or remove an upvote on this subject. + """ + viewerCanUpvote: Boolean! + + """ + Whether or not the current user has already upvoted this subject. + """ + viewerHasUpvoted: Boolean! +} + +""" +A workflow contains meta information about an Actions workflow file. +""" +type Workflow implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + The name of the workflow. + """ + name: String! + + """ + The runs of the workflow. + """ + runs( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the connection + """ + orderBy: WorkflowRunOrder = {field: CREATED_AT, direction: DESC} + ): WorkflowRunConnection! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +A workflow run. +""" +type WorkflowRun implements Node & UniformResourceLocatable { + """ + The check suite this workflow run belongs to. + """ + checkSuite: CheckSuite! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The log of deployment reviews + """ + deploymentReviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentReviewConnection! + + """ + The event that triggered the workflow run + """ + event: String! + id: ID! + + """ + The pending deployment requests of all check runs in this workflow run + """ + pendingDeploymentRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentRequestConnection! + + """ + The HTTP path for this workflow run + """ + resourcePath: URI! + + """ + A number that uniquely identifies this workflow run in its parent workflow. + """ + runNumber: Int! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this workflow run + """ + url: URI! + + """ + The workflow executed in this workflow run. + """ + workflow: Workflow! +} + +""" +The connection type for WorkflowRun. +""" +type WorkflowRunConnection { + """ + A list of edges. + """ + edges: [WorkflowRunEdge] + + """ + A list of nodes. + """ + nodes: [WorkflowRun] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type WorkflowRunEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: WorkflowRun +} + +""" +Ways in which lists of workflow runs can be ordered upon return. +""" +input WorkflowRunOrder { + """ + The direction in which to order workflow runs by the specified field. + """ + direction: OrderDirection! + + """ + The field by which to order workflows. + """ + field: WorkflowRunOrderField! +} + +""" +Properties by which workflow run connections can be ordered. +""" +enum WorkflowRunOrderField { + """ + Order workflow runs by most recently created + """ + CREATED_AT +} + """ A valid x509 certificate string """ -scalar X509Certificate \ No newline at end of file +scalar X509Certificate diff --git a/src/providers/graphql/gitlab/schema.json b/src/providers/graphql/gitlab/schema.json index 205036a..7f59b94 100644 --- a/src/providers/graphql/gitlab/schema.json +++ b/src/providers/graphql/gitlab/schema.json @@ -14062,4 +14062,4 @@ ] } } -} \ No newline at end of file +}