diff --git a/CHANGELOG.md b/CHANGELOG.md index 7471a5a1..b096e904 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,10 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html - Using `#[cynic(spread)]` more than once no longer results in rust compile errors. +- The generator won't output an incorrect comma in between attributes in + certain circumstances. +- The generator now uses the same re-casing as codegen - leading to less bugs. +- The generator will now rename more QueryFragment fields that require it. ## v3.2.2 - 2023-06-26 diff --git a/cynic-codegen/src/idents/old_ident.rs b/cynic-codegen/src/idents/old_ident.rs index 8f67493a..6985dc05 100644 --- a/cynic-codegen/src/idents/old_ident.rs +++ b/cynic-codegen/src/idents/old_ident.rs @@ -107,6 +107,7 @@ pub fn to_pascal_case(s: &str) -> String { prev_is_upper = true; } else if c == '_' { prev_is_underscore = true; + prev_is_upper = false; } else { if prev_is_upper { buf.extend(c.to_lowercase()) @@ -177,6 +178,7 @@ mod tests { assert_eq!(to_pascal_case("_another_one"), "_anotherOne"); assert_eq!(to_pascal_case("RepeatedUPPERCASE"), "RepeatedUppercase"); assert_eq!(to_pascal_case("UUID"), "Uuid"); + assert_eq!(to_pascal_case("CREATED_AT"), "CreatedAt"); assert_eq!(to_pascal_case("__typename"), "__typename"); } diff --git a/cynic-querygen/src/casings.rs b/cynic-querygen/src/casings.rs index 4cb291ef..fc7eb4a5 100644 --- a/cynic-querygen/src/casings.rs +++ b/cynic-querygen/src/casings.rs @@ -34,13 +34,73 @@ impl CasingExt for &str { } fn to_camel_case(&self) -> String { - // Might be nice to not use inflector for this but cba writing it just now - inflector::cases::camelcase::to_camel_case(self) + let s = self.to_pascal_case(); + + let mut buf = String::with_capacity(s.len()); + let mut chars = s.chars(); + + if let Some(first_char) = chars.next() { + buf.extend(first_char.to_lowercase()); + } + + buf.extend(chars); + + buf } fn to_pascal_case(&self) -> std::string::String { - // Might be nice to not use inflector for this but cba writing it just now - inflector::cases::pascalcase::to_pascal_case(self) + let mut buf = String::with_capacity(self.len()); + let mut first_char = true; + let mut prev_is_upper = false; + let mut prev_is_underscore = false; + let mut chars = self.chars().peekable(); + loop { + let c = chars.next(); + if c.is_none() { + break; + } + let c = c.unwrap(); + if first_char { + if c == '_' { + // keep leading underscores + buf.push('_'); + while let Some('_') = chars.peek() { + buf.push(chars.next().unwrap()); + } + } else if c.is_uppercase() { + prev_is_upper = true; + buf.push(c); + } else { + buf.extend(c.to_uppercase()); + } + first_char = false; + continue; + } + + if c.is_uppercase() { + if prev_is_upper { + buf.extend(c.to_lowercase()); + } else { + buf.push(c); + } + prev_is_upper = true; + } else if c == '_' { + prev_is_underscore = true; + prev_is_upper = false; + } else { + if prev_is_upper { + buf.extend(c.to_lowercase()) + } else if prev_is_underscore { + buf.extend(c.to_uppercase()); + } else { + buf.push(c); + } + prev_is_upper = false; + prev_is_underscore = false; + } + } + + buf } } diff --git a/cynic-querygen/src/output/inline_fragments.rs b/cynic-querygen/src/output/inline_fragments.rs index ada7c0c8..f6c5fe35 100644 --- a/cynic-querygen/src/output/inline_fragments.rs +++ b/cynic-querygen/src/output/inline_fragments.rs @@ -25,9 +25,6 @@ impl std::fmt::Display for InlineFragments { } if let Some(name) = &self.variable_struct_name { - if self.target_type != self.name { - write!(f, ", ")?; - } attributes.push(format!("variables = \"{name}\"")); } diff --git a/cynic-querygen/src/query_parsing/mod.rs b/cynic-querygen/src/query_parsing/mod.rs index 928d1b1d..0945c8ee 100644 --- a/cynic-querygen/src/query_parsing/mod.rs +++ b/cynic-querygen/src/query_parsing/mod.rs @@ -15,6 +15,7 @@ pub use normalisation::Variable; pub use value::{LiteralContext, TypedValue}; use crate::{ + casings::CasingExt, naming::Namer, output::{self, Output}, Error, TypeIndex, @@ -109,7 +110,10 @@ fn make_query_fragment<'text>( OutputField { name: field.alias.unwrap_or(schema_field.name), - rename: field.alias.map(|_| schema_field.name), + rename: field.alias.map(|_| schema_field.name).or_else(|| { + (schema_field.name.to_snake_case().to_camel_case() != schema_field.name) + .then_some(schema_field.name) + }), field_type: RustOutputFieldType::from_schema_type( &schema_field.value_type, type_name_override, diff --git a/cynic-querygen/tests/github-tests.rs b/cynic-querygen/tests/github-tests.rs index 2abb421a..f086e315 100644 --- a/cynic-querygen/tests/github-tests.rs +++ b/cynic-querygen/tests/github-tests.rs @@ -28,5 +28,11 @@ test_query!( inline_fragment_with_arguments, "inline-fragment-with-arguments.graphql" ); +test_query!( + inline_fragment_with_renames, + "inline-fragment-with-renames.graphql" +); test_query!(field_on_interface, "field-on-interface.graphql"); test_query!(queries_with_typename, "queries-with-typename.graphql"); + +test_query!(issue_786, "issue-786.graphql"); diff --git a/cynic-querygen/tests/queries/github/inline-fragment-with-renames.graphql b/cynic-querygen/tests/queries/github/inline-fragment-with-renames.graphql new file mode 100644 index 00000000..3a231fa7 --- /dev/null +++ b/cynic-querygen/tests/queries/github/inline-fragment-with-renames.graphql @@ -0,0 +1,32 @@ +query RepoIssues($first: Int!) { + repository(owner: "obmarg", name: "cynic") { + one: issueOrPullRequest(number: 100) { + ... on Issue { + body + assignees(first: $first) { + totalCount + } + } + ... on PullRequest { + body + assignees(first: $first) { + totalCount + } + } + } + two: issueOrPullRequest(number: 200) { + ... on Issue { + closed + assignees(first: $first) { + totalCount + } + } + ... on PullRequest { + changedFiles + assignees(first: $first) { + totalCount + } + } + } + } +} diff --git a/cynic-querygen/tests/queries/github/issue-786.graphql b/cynic-querygen/tests/queries/github/issue-786.graphql new file mode 100644 index 00000000..74c8577d --- /dev/null +++ b/cynic-querygen/tests/queries/github/issue-786.graphql @@ -0,0 +1,45 @@ +query ProjectMetadataQuery($id: ID!, $after: String) { + node(id: $id) { + ... on ProjectV2 { + id + title + number + public + readme + shortDescription + url + fields(first: 100) { + totalCount + pageInfo { + hasNextPage + endCursor + hasPreviousPage + startCursor + } + nodes { + ... on ProjectV2SingleSelectField { + name + dataType + options { + id + name + nameHTML + } + } + ... on ProjectV2Field { + name + dataType + } + ... on ProjectV2IterationField { + name + dataType + configuration { + duration + startDay + } + } + } + } + } + } + } diff --git a/cynic-querygen/tests/snapshots/github_tests__inline_fragment_with_renames.snap b/cynic-querygen/tests/snapshots/github_tests__inline_fragment_with_renames.snap new file mode 100644 index 00000000..1357c0a9 --- /dev/null +++ b/cynic-querygen/tests/snapshots/github_tests__inline_fragment_with_renames.snap @@ -0,0 +1,83 @@ +--- +source: cynic-querygen/tests/github-tests.rs +expression: "document_to_fragment_structs(query, schema,\n &QueryGenOptions::default()).expect(\"QueryGen Failed\")" +--- +#[derive(cynic::QueryVariables, Debug)] +pub struct RepoIssuesVariables { + pub first: i32, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(graphql_type = "Query", variables = "RepoIssuesVariables")] +pub struct RepoIssues { + #[arguments(owner: "obmarg", name: "cynic")] + pub repository: Option, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(variables = "RepoIssuesVariables")] +pub struct Repository { + #[arguments(number: 100)] + #[cynic(rename = "issueOrPullRequest")] + pub one: Option, + #[arguments(number: 200)] + #[cynic(rename = "issueOrPullRequest")] + pub two: Option, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(variables = "RepoIssuesVariables")] +pub struct PullRequest { + pub changed_files: i32, + #[arguments(first: $first)] + pub assignees: UserConnection, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(graphql_type = "PullRequest", variables = "RepoIssuesVariables")] +pub struct PullRequest2 { + pub body: String, + #[arguments(first: $first)] + pub assignees: UserConnection, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(variables = "RepoIssuesVariables")] +pub struct Issue { + pub closed: bool, + #[arguments(first: $first)] + pub assignees: UserConnection, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(graphql_type = "Issue", variables = "RepoIssuesVariables")] +pub struct Issue2 { + pub body: String, + #[arguments(first: $first)] + pub assignees: UserConnection, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct UserConnection { + pub total_count: i32, +} + +#[derive(cynic::InlineFragments, Debug)] +#[cynic(variables = "RepoIssuesVariables")] +pub enum IssueOrPullRequest { + Issue2(Issue2), + PullRequest2(PullRequest2), + #[cynic(fallback)] + Unknown +} + +#[derive(cynic::InlineFragments, Debug)] +#[cynic(graphql_type = "IssueOrPullRequest", variables = "RepoIssuesVariables")] +pub enum IssueOrPullRequest2 { + Issue(Issue), + PullRequest(PullRequest), + #[cynic(fallback)] + Unknown +} + + diff --git a/cynic-querygen/tests/snapshots/github_tests__issue_786.snap b/cynic-querygen/tests/snapshots/github_tests__issue_786.snap new file mode 100644 index 00000000..dadb1e18 --- /dev/null +++ b/cynic-querygen/tests/snapshots/github_tests__issue_786.snap @@ -0,0 +1,117 @@ +--- +source: cynic-querygen/tests/github-tests.rs +expression: "document_to_fragment_structs(query, schema,\n &QueryGenOptions::default()).expect(\"QueryGen Failed\")" +--- +#[derive(cynic::QueryVariables, Debug)] +pub struct ProjectMetadataQueryVariables<'a> { + pub id: &'a cynic::Id, +} + +#[derive(cynic::QueryFragment, Debug)] +#[cynic(graphql_type = "Query", variables = "ProjectMetadataQueryVariables")] +pub struct ProjectMetadataQuery { + #[arguments(id: $id)] + pub node: Option, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2SingleSelectField { + pub name: String, + pub data_type: ProjectV2FieldType, + pub options: Vec, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2SingleSelectFieldOption { + pub id: String, + pub name: String, + #[cynic(rename = "nameHTML")] + pub name_html: String, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2IterationField { + pub name: String, + pub data_type: ProjectV2FieldType, + pub configuration: ProjectV2IterationFieldConfiguration, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2IterationFieldConfiguration { + pub duration: i32, + pub start_day: i32, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2Field { + pub name: String, + pub data_type: ProjectV2FieldType, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2 { + pub id: cynic::Id, + pub title: String, + pub number: i32, + pub public: bool, + pub readme: Option, + pub short_description: Option, + pub url: Uri, + #[arguments(first: 100)] + pub fields: ProjectV2FieldConfigurationConnection, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct ProjectV2FieldConfigurationConnection { + pub total_count: i32, + pub page_info: PageInfo, + pub nodes: Option>>, +} + +#[derive(cynic::QueryFragment, Debug)] +pub struct PageInfo { + pub has_next_page: bool, + pub end_cursor: Option, + pub has_previous_page: bool, + pub start_cursor: Option, +} + +#[derive(cynic::InlineFragments, Debug)] +pub enum Node { + ProjectV2(ProjectV2), + #[cynic(fallback)] + Unknown +} + +#[derive(cynic::InlineFragments, Debug)] +pub enum ProjectV2FieldConfiguration { + ProjectV2SingleSelectField(ProjectV2SingleSelectField), + ProjectV2Field(ProjectV2Field), + ProjectV2IterationField(ProjectV2IterationField), + #[cynic(fallback)] + Unknown +} + +#[derive(cynic::Enum, Clone, Copy, Debug)] +pub enum ProjectV2FieldType { + Assignees, + Date, + Iteration, + Labels, + LinkedPullRequests, + Milestone, + Number, + Repository, + Reviewers, + SingleSelect, + Text, + Title, + TrackedBy, + Tracks, +} + +#[derive(cynic::Scalar, Debug, Clone)] +#[cynic(graphql_type = "URI")] +pub struct Uri(pub String); + + diff --git a/schemas/github.graphql b/schemas/github.graphql index 37790ba3..fa81e87b 100644 --- a/schemas/github.graphql +++ b/schemas/github.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. """ - toggledBy: String! -) on SCALAR | OBJECT | FIELD_DEFINITION | ARGUMENT_DEFINITION | INTERFACE | UNION | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION + clientMutationId: String + + """ + 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 @@ -93,31 +127,6 @@ type AcceptTopicSuggestionPayload { topic: Topic } -""" -The possible capabilities for action executions setting. -""" -enum ActionExecutionCapabilitySetting { - """ - 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,14 +552,100 @@ 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 """ input AddPullRequestReviewCommentInput { """ - The text of the comment. + The text of the comment. This field is required + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `body` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ - body: String! + body: String """ A unique identifier for the client performing the mutation. @@ -394,31 +654,57 @@ input AddPullRequestReviewCommentInput { """ The SHA of the commit to comment on. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `commitOID` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ commitOID: GitObjectID """ The comment id to reply to. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `inReplyTo` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ inReplyTo: ID @possibleTypes(concreteTypes: ["PullRequestReviewComment"]) """ The relative path of the file to comment on. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `path` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ path: String """ The line index in the diff to comment on. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `position` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ position: Int """ The node ID of the pull request reviewing + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `pullRequestId` will be removed. use + addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"]) """ The Node ID of the review to modify. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `pullRequestReviewId` will be removed. use + addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) } @@ -459,6 +745,10 @@ input AddPullRequestReviewInput { """ The review line comments. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `comments` will be removed. use the `threads` argument instead + **Reason:** We are deprecating comment fields that use diff-relative positioning """ comments: [DraftPullRequestReviewComment] @@ -518,19 +808,25 @@ input AddPullRequestReviewThreadInput { clientMutationId: String """ - The line of the blob to which the thread refers. The end of the line range for multi-line comments. + The line of the blob to which the thread refers, required for line-level + threads. The end of the line range for multi-line comments. """ - line: Int! + 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"]) + 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. @@ -546,6 +842,11 @@ input AddPullRequestReviewThreadInput { The side of the diff on which the start line resides. """ startSide: DiffSide = RIGHT + + """ + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file + """ + subjectType: PullRequestReviewThreadSubjectType = LINE } """ @@ -563,6 +864,46 @@ type AddPullRequestReviewThreadPayload { thread: PullRequestReviewThread } +""" +Autogenerated input type of AddPullRequestReviewThreadReply +""" +input AddPullRequestReviewThreadReplyInput { + """ + The text of the reply. + """ + body: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the pending review to which the reply will belong. + """ + pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) + + """ + The Node ID of the thread to which this reply is being written. + """ + pullRequestReviewThreadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) +} + +""" +Autogenerated return type of AddPullRequestReviewThreadReply +""" +type AddPullRequestReviewThreadReplyPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created reply. + """ + comment: PullRequestReviewComment +} + """ Autogenerated input type of AddReaction """ @@ -580,7 +921,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" + ) } """ @@ -597,6 +954,11 @@ type AddReactionPayload { """ reaction: Reaction + """ + The reaction groups for the subject. + """ + reactionGroups: [ReactionGroup!] + """ The reactable subject. """ @@ -633,6 +995,102 @@ 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 an 'added_to_merge_queue' event on a given pull request. +""" +type AddedToMergeQueueEvent 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 added this Pull Request to the merge queue + """ + enqueuer: User + id: ID! + + """ + The merge queue where this pull request was added to. + """ + mergeQueue: MergeQueue + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest +} + """ Represents a 'added_to_project' event on a given issue or pull request. """ @@ -669,6 +1127,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. """ @@ -689,6 +1167,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. """ @@ -725,6 +1233,111 @@ 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 """ @@ -813,7 +1426,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.") } """ @@ -921,6 +1535,163 @@ enum AuditLogOrderField { CREATED_AT } +""" +Represents a 'auto_merge_disabled' event on a given pull request. +""" +type AutoMergeDisabledEvent 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 disabled auto-merge for this Pull Request + """ + disabler: User + id: ID! + + """ + PullRequest referenced by event + """ + pullRequest: PullRequest + + """ + The reason auto-merge was disabled + """ + reason: String + + """ + The reason_code relating to why auto-merge was disabled + """ + 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! + + """ + The user who enabled auto-merge for this Pull Request + """ + enabler: User + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest +} + +""" +Represents an auto-merge request for a pull request +""" +type AutoMergeRequest { + """ + The email address of the author of this auto-merge request. + """ + 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. """ @@ -983,6 +1754,11 @@ type AutomaticBaseChangeSucceededEvent implements Node { pullRequest: PullRequest! } +""" +A (potentially binary) string encoded using base64. +""" +scalar Base64String + """ Represents a 'base_ref_changed' event on a given issue or pull request. """ @@ -997,11 +1773,52 @@ type BaseRefChangedEvent implements Node { """ 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 } """ @@ -1040,6 +1857,12 @@ type BaseRefForcePushedEvent implements Node { ref: Ref } +""" +Represents non-fractional signed whole numeric values. Since the value may +exceed the size of a 32-bit integer, it's encoded as a string. +""" +scalar BigInt + """ Represents a Git blame. """ @@ -1104,13 +1927,9 @@ type Blob implements GitObject & Node { id: ID! """ - Indicates whether the Blob is binary or text - - **Upcoming Change on 2019-07-01 UTC** - **Description:** Type for `isBinary` will change from `Boolean!` to `Boolean`. - **Reason:** The `isBinary` field may return `null` when it cannot determine if a Blob is binary. + 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 @@ -1179,10 +1998,80 @@ type Bot implements Actor & Node & UniformResourceLocatable { url: URI! } +""" +Types which can be actors for `BranchActorAllowance` objects. +""" +union BranchActorAllowanceActor = App | Team | User + +""" +Parameters to be used for the branch_name_pattern rule +""" +type BranchNamePatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the branch_name_pattern rule +""" +input BranchNamePatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + """ 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 """ @@ -1208,6 +2097,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. """ @@ -1229,6 +2168,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 """ @@ -1294,16 +2244,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. """ @@ -1319,6 +2284,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. """ @@ -1466,66 +2446,327 @@ type BranchProtectionRuleEdge { } """ -Autogenerated input type of CancelEnterpriseAdminInvitation +Information about a sponsorship to make for a user or organization with a GitHub +Sponsors profile, as part of sponsoring many users or organizations at once. """ -input CancelEnterpriseAdminInvitationInput { +input BulkSponsorship { """ - A unique identifier for the client performing the mutation. + The amount to pay to the sponsorable in US dollars. Valid values: 1-12000. """ - clientMutationId: String + amount: Int! """ - The Node ID of the pending enterprise administrator invitation. + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. """ - invitationId: ID! @possibleTypes(concreteTypes: ["EnterpriseAdministratorInvitation"]) + 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 CancelEnterpriseAdminInvitation +Types that can represent a repository ruleset bypass actor. """ -type CancelEnterpriseAdminInvitationPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String +union BypassActor = App | Team +""" +A user, team, or app who has the ability to bypass a force push requirement on a protected branch. +""" +type BypassForcePushAllowance implements Node { """ - The invitation that was canceled. + The actor that can force push. """ - invitation: EnterpriseAdministratorInvitation + actor: BranchActorAllowanceActor """ - A message confirming the result of canceling an administrator invitation. + Identifies the branch protection rule associated with the allowed user, team, or app. """ - message: String + branchProtectionRule: BranchProtectionRule + id: ID! } """ -Autogenerated input type of ChangeUserStatus +The connection type for BypassForcePushAllowance. """ -input ChangeUserStatusInput { +type BypassForcePushAllowanceConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [BypassForcePushAllowanceEdge] """ - The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :grinning:. + A list of nodes. """ - emoji: String + nodes: [BypassForcePushAllowance] """ - If set, the user status will not be shown after this date. + Information to aid in pagination. """ - expiresAt: DateTime + pageInfo: PageInfo! """ - Whether this status should indicate you are not fully available on GitHub, e.g., you are away. + Identifies the total count of items in the connection. """ - limitedAvailability: Boolean = false + totalCount: Int! +} +""" +An edge in a connection. +""" +type BypassForcePushAllowanceEdge { """ - A short description of your current status. + 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 +""" +input CancelEnterpriseAdminInvitationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the pending enterprise administrator invitation. + """ + invitationId: ID! @possibleTypes(concreteTypes: ["EnterpriseAdministratorInvitation"]) +} + +""" +Autogenerated return type of CancelEnterpriseAdminInvitation +""" +type CancelEnterpriseAdminInvitationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The invitation that was canceled. + """ + invitation: EnterpriseAdministratorInvitation + + """ + A message confirming the result of canceling an administrator invitation. + """ + 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 +""" +input ChangeUserStatusInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :grinning:. + """ + emoji: String + + """ + If set, the user status will not be shown after this date. + """ + expiresAt: DateTime + + """ + Whether this status should indicate you are not fully available on GitHub, e.g., you are away. + """ + limitedAvailability: Boolean = false + + """ + A short description of your current status. """ message: String @@ -1554,7 +2795,7 @@ type ChangeUserStatusPayload { """ A single check annotation. """ -type CheckAnnotation @preview(toggledBy: "antiope-preview") { +type CheckAnnotation { """ The annotation's severity level. """ @@ -1608,7 +2849,7 @@ type CheckAnnotationConnection { """ A list of nodes. """ - nodes: [CheckAnnotation] @preview(toggledBy: "antiope-preview") + nodes: [CheckAnnotation] """ Information to aid in pagination. @@ -1624,7 +2865,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 """ @@ -1668,13 +2909,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. """ @@ -1694,7 +2935,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). """ @@ -1709,7 +2950,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. """ @@ -1734,7 +2975,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). """ @@ -1749,7 +2990,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. """ @@ -1780,6 +3021,11 @@ enum CheckConclusionState @preview(toggledBy: "antiope-preview") { """ STALE + """ + The check suite or run has failed at startup. + """ + STARTUP_FAILURE + """ The check suite or run has succeeded. """ @@ -1794,7 +3040,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 """ @@ -1840,6 +3086,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. """ @@ -1851,11 +3102,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. """ @@ -1881,6 +3152,36 @@ type CheckRun implements Node & UniformResourceLocatable @preview(toggledBy: "an """ status: CheckStatusState! + """ + 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 """ @@ -1905,7 +3206,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. """ @@ -1934,7 +3235,7 @@ type CheckRunConnection { """ A list of nodes. """ - nodes: [CheckRun] @preview(toggledBy: "antiope-preview") + nodes: [CheckRun] """ Information to aid in pagination. @@ -1959,13 +3260,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. """ @@ -1982,15 +3283,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. """ @@ -2020,7 +3331,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. """ @@ -2037,10 +3348,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. """ @@ -2055,7 +3456,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. """ @@ -2066,6 +3467,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. """ @@ -2075,12 +3481,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. """ @@ -2136,6 +3632,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. """ @@ -2221,12 +3722,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. """ @@ -2250,7 +3756,7 @@ type CheckSuiteConnection { """ A list of nodes. """ - nodes: [CheckSuite] @preview(toggledBy: "antiope-preview") + nodes: [CheckSuite] """ Information to aid in pagination. @@ -2275,13 +3781,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. """ @@ -2293,6 +3799,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 """ @@ -2305,7 +3816,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") } """ @@ -2323,6 +3834,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 """ @@ -2444,7 +3999,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! @@ -2452,6 +4007,51 @@ interface Closable { Identifies the date and time when the object was closed. """ closedAt: DateTime + + """ + Indicates if the object can be closed by the viewer. + """ + viewerCanClose: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: Boolean! +} + +""" +Autogenerated input type of CloseDiscussion +""" +input CloseDiscussionInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the discussion to be closed. + """ + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) + + """ + The reason why the discussion is being closed. + """ + reason: DiscussionCloseReason = RESOLVED +} + +""" +Autogenerated return type of CloseDiscussion +""" +type CloseDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that was closed. + """ + discussion: Discussion } """ @@ -2467,6 +4067,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 } """ @@ -2544,6 +4149,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. """ @@ -2726,6 +4336,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. """ @@ -2800,6 +4415,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! } @@ -2818,7 +4438,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( """ @@ -2862,6 +4484,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. """ @@ -2873,9 +4521,21 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl ): Blame! """ - The number of changed files in this commit. + We recommend using the `changedFilesIfAvailable` 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. @@ -2905,7 +4565,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. @@ -2948,12 +4608,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 @@ -2997,6 +4657,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`. """ @@ -3106,7 +4776,7 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl """ The datetime when this commit was pushed. """ - pushedDate: DateTime + pushedDate: DateTime @deprecated(reason: "`pushedDate` is no longer supported. Removal on 2023-07-01 UTC.") """ The Repository this commit belongs to @@ -3217,6 +4887,56 @@ input CommitAuthor { id: ID } +""" +Parameters to be used for the commit_author_email_pattern rule +""" +type CommitAuthorEmailPatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the commit_author_email_pattern rule +""" +input CommitAuthorEmailPatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + """ Represents a comment on a given Commit. """ @@ -3288,7 +5008,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 @@ -3659,6 +5381,272 @@ type CommitHistoryConnection { totalCount: Int! } +""" +A message to include with a new commit +""" +input CommitMessage { + """ + The body of the message. + """ + body: String + + """ + The headline of the message. + """ + headline: String! +} + +""" +Parameters to be used for the commit_message_pattern rule +""" +type CommitMessagePatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the commit_message_pattern rule +""" +input CommitMessagePatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: 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 { + """ + 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 +} + +""" +Parameters to be used for the committer_email_pattern rule +""" +type CommitterEmailPatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the committer_email_pattern rule +""" +input CommitterEmailPatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: 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. + """ + headTarget: GitObject! + id: ID! + + """ + The status of this comparison. + """ + status: ComparisonStatus! +} + +""" +The connection type for Commit. +""" +type ComparisonCommitConnection { + """ + 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. + """ + DIVERGED + + """ + The head ref and base ref are identical. + """ + IDENTICAL +} + """ Represents a 'connected' event on a given issue or pull request. """ @@ -3691,45 +5679,23 @@ type ConnectedEvent implements Node { } """ -A content attachment +The Contributing Guidelines for a repository. """ -type ContentAttachment { +type ContributingGuidelines { """ - The body text of the content attachment. This parameter supports markdown. + The body of the Contributing Guidelines. """ - body: String! - - """ - The content reference that the content attachment is attached to. - """ - contentReference: ContentReference! - - """ - Identifies the primary key from the database. - """ - databaseId: Int! - id: ID! + body: String """ - The title of the content attachment. - """ - title: String! -} - -""" -A content reference -""" -type ContentReference { + The HTTP path for the Contributing Guidelines. """ - Identifies the primary key from the database. - """ - databaseId: Int! - id: ID! + resourcePath: URI """ - The reference of the content reference. + The HTTP URL for the Contributing Guidelines. """ - reference: String! + url: URI } """ @@ -3808,6 +5774,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. """ @@ -3859,6 +5831,36 @@ type ContributionCalendarWeek { firstDay: Date! } +""" +Varying levels of contributions from none to many. +""" +enum ContributionLevel { + """ + Lowest 25% of days of contributions. + """ + FIRST_QUARTILE + + """ + Highest 25% of days of contributions. More contributions than the third quartile. + """ + FOURTH_QUARTILE + + """ + 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 +} + """ Ordering options for contribution connections. """ @@ -4112,7 +6114,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( """ @@ -4338,6 +6341,36 @@ 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. """ @@ -4405,10 +6438,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. """ @@ -4424,13 +6598,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!] @@ -4439,16 +6624,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. """ @@ -4464,6 +6664,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. """ @@ -4485,7 +6700,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!] } @@ -4508,7 +6723,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. """ @@ -4573,7 +6788,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. """ @@ -4588,7 +6803,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. """ @@ -4608,7 +6823,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. """ @@ -4621,13 +6836,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. @@ -4635,29 +6850,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. + """ + commit: Commit + """ - contentAttachment: ContentAttachment + The ref which has been updated to point to the new commit. + """ + ref: Ref } """ @@ -4795,6 +7020,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 """ @@ -4850,6 +7120,41 @@ 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 """ @@ -4877,7 +7182,7 @@ input CreateIpAllowListEntryInput { """ The ID of the owner for which to create the new IP allow list entry. """ - ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "IpAllowListOwner") + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") } """ @@ -4914,6 +7219,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. """ @@ -5000,6 +7310,111 @@ 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 issue that was linked to. + """ + issue: Issue + + """ + 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 """ @@ -5050,6 +7465,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 """ @@ -5082,6 +7587,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. """ @@ -5225,14 +7735,360 @@ type CreateRepositoryPayload { repository: Repository } +""" +Autogenerated input type of CreateRepositoryRuleset +""" +input CreateRepositoryRulesetInput { + """ + A list of actors that are allowed to bypass rules in this ruleset. + """ + bypassActors: [RepositoryRulesetBypassActorInput!] + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The set of conditions for this ruleset + """ + conditions: RepositoryRuleConditionsInput! + + """ + The enforcement level for this ruleset + """ + enforcement: RuleEnforcement! + + """ + The name of the ruleset. + """ + name: String! + + """ + The list of rules for this ruleset + """ + rules: [RepositoryRuleInput!] + + """ + The global relay id of the source in which a new ruleset should be created in. + """ + sourceId: ID! @possibleTypes(concreteTypes: ["Organization", "Repository"], abstractType: "RuleSource") + + """ + The target of the ruleset. + """ + target: RepositoryRulesetTarget +} + +""" +Autogenerated return type of CreateRepositoryRuleset +""" +type CreateRepositoryRulesetPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created Ruleset. + """ + ruleset: RepositoryRuleset +} + +""" +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 CreateSponsorships +""" +input CreateSponsorshipsInput { + """ + 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 sponsorables. Public visibility still does not reveal the dollar value of + the sponsorship. + """ + privacyLevel: SponsorshipPrivacy = PUBLIC + + """ + Whether the sponsor should receive email updates from the sponsorables. + """ + receiveEmails: Boolean = false + + """ + The username of the user or organization who is acting as the sponsor, paying for the sponsorships. + """ + sponsorLogin: String! + + """ + The list of maintainers to sponsor and for how much apiece. + """ + sponsorships: [BulkSponsorship!]! +} + +""" +Autogenerated return type of CreateSponsorships +""" +type CreateSponsorshipsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The users and organizations who received a sponsorship. + """ + sponsorables: [Sponsorable!] +} + """ Autogenerated input type of CreateTeamDiscussionComment """ input CreateTeamDiscussionCommentInput { """ - The content of the comment. + The content of the comment. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `body` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - body: String! + body: String """ A unique identifier for the client performing the mutation. @@ -5240,9 +8096,15 @@ input CreateTeamDiscussionCommentInput { clientMutationId: String """ - The ID of the discussion to which the comment belongs. + The ID of the discussion to which the comment belongs. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `discussionId` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - discussionId: ID! @possibleTypes(concreteTypes: ["TeamDiscussion"]) + discussionId: ID @possibleTypes(concreteTypes: ["TeamDiscussion"]) } """ @@ -5258,6 +8120,9 @@ type CreateTeamDiscussionCommentPayload { The new comment. """ teamDiscussionComment: TeamDiscussionComment + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) } """ @@ -5265,9 +8130,15 @@ Autogenerated input type of CreateTeamDiscussion """ input CreateTeamDiscussionInput { """ - The content of the discussion. + The content of the discussion. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `body` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - body: String! + body: String """ A unique identifier for the client performing the mutation. @@ -5275,21 +8146,39 @@ input CreateTeamDiscussionInput { 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. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `private` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ private: Boolean """ - The ID of the team to which the discussion belongs. + The ID of the team to which the discussion belongs. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `teamId` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - teamId: ID! @possibleTypes(concreteTypes: ["Team"]) + teamId: ID @possibleTypes(concreteTypes: ["Team"]) """ - The title of the discussion. + The title of the discussion. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `title` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - title: String! + title: String } """ @@ -5305,6 +8194,9 @@ type CreateTeamDiscussionPayload { The new discussion. """ teamDiscussion: TeamDiscussion + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) } """ @@ -5824,7 +8716,7 @@ type DeclineTopicSuggestionPayload { } """ -The possible default permissions for repositories. +The possible base permissions for repositories. """ enum DefaultRepositoryPermissionField { """ @@ -5908,6 +8800,91 @@ type DeleteDeploymentPayload { 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 """ @@ -6018,6 +8995,36 @@ 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 """ @@ -6148,6 +9155,140 @@ 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 DeleteProjectV2Workflow +""" +input DeleteProjectV2WorkflowInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the workflow to be removed. + """ + workflowId: ID! @possibleTypes(concreteTypes: ["ProjectV2Workflow"]) +} + +""" +Autogenerated return type of DeleteProjectV2Workflow +""" +type DeleteProjectV2WorkflowPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the deleted workflow. + """ + deletedWorkflowId: ID + + """ + The project the deleted workflow was in. + """ + projectV2: ProjectV2 +} + """ Autogenerated input type of DeletePullRequestReviewComment """ @@ -6176,6 +9317,11 @@ type DeletePullRequestReviewCommentPayload { The pull request review the deleted comment belonged to. """ pullRequestReview: PullRequestReview + + """ + The deleted pull request review comment. + """ + pullRequestReviewComment: PullRequestReviewComment } """ @@ -6233,6 +9379,31 @@ type DeleteRefPayload { clientMutationId: String } +""" +Autogenerated input type of DeleteRepositoryRuleset +""" +input DeleteRepositoryRulesetInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The global relay id of the repository ruleset to be deleted. + """ + repositoryRulesetId: ID! @possibleTypes(concreteTypes: ["RepositoryRuleset"]) +} + +""" +Autogenerated return type of DeleteRepositoryRuleset +""" +type DeleteRepositoryRulesetPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + """ Autogenerated input type of DeleteTeamDiscussionComment """ @@ -6283,6 +9454,36 @@ type DeleteTeamDiscussionPayload { 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. """ @@ -6309,6 +9510,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 """ @@ -6318,13 +9559,21 @@ 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. """ packageName: String! @@ -6379,6 +9628,66 @@ 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 + + """ + Swift packages + """ + SWIFT +} + """ Dependency manifest for a repository """ @@ -6789,6 +10098,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. """ @@ -6837,6 +10487,16 @@ enum DeploymentState { The deployment has queued """ QUEUED + + """ + The deployment was successful. + """ + SUCCESS + + """ + The deployment is waiting. + """ + WAITING } """ @@ -6968,193 +10628,192 @@ enum DeploymentStatusState { The deployment was successful. """ SUCCESS + + """ + The deployment is waiting. + """ + WAITING } """ -The possible sides of a diff. +Autogenerated input type of DequeuePullRequest """ -enum DiffSide { +input DequeuePullRequestInput { """ - The left side of the diff. + A unique identifier for the client performing the mutation. """ - LEFT + clientMutationId: String """ - The right side of the diff. + The ID of the pull request to be dequeued. """ - RIGHT + id: ID! @possibleTypes(concreteTypes: ["PullRequest"]) } """ -Represents a 'disconnected' event on a given issue or pull request. +Autogenerated return type of DequeuePullRequest """ -type DisconnectedEvent implements Node { - """ - Identifies the actor who performed the event. - """ - actor: Actor - +type DequeuePullRequestPayload { """ - Identifies the date and time when the object was created. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime! - id: ID! + clientMutationId: String """ - Reference originated in a different repository. + The merge queue entry of the dequeued pull request. """ - isCrossRepository: Boolean! + mergeQueueEntry: MergeQueueEntry +} +""" +The possible sides of a diff. +""" +enum DiffSide { """ - Issue or pull request from which the issue was disconnected. + The left side of the diff. """ - source: ReferencedSubject! + LEFT """ - Issue or pull request which was disconnected. + The right side of the diff. """ - subject: ReferencedSubject! + RIGHT } """ -Autogenerated input type of DismissPullRequestReview +Autogenerated input type of DisablePullRequestAutoMerge """ -input DismissPullRequestReviewInput { +input DisablePullRequestAutoMergeInput { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The contents of the pull request review dismissal message. - """ - message: String! - + ID of the pull request to disable auto merge on. """ - The Node ID of the pull request review to modify. - """ - 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! -""" -Specifies a review comment thread to be left with a Pull Request Review. -""" -input DraftPullRequestReviewThread { """ - Body of the comment to leave. + Issue or pull request from which the issue was disconnected. """ - body: String! + source: ReferencedSubject! """ - The line of the blob to which the thread refers. The end of the line range for multi-line comments. + Issue or pull request which was disconnected. """ - line: Int! + subject: ReferencedSubject! +} +""" +A discussion in a repository. +""" +type Discussion implements Closable & Comment & Deletable & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & Updatable & Votable { """ - Path to the file being commented on. + Reason that the conversation was locked. """ - path: String! + activeLockReason: LockReason """ - 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. + The comment chosen as this discussion's answer, if any. """ - side: DiffSide = RIGHT + answer: DiscussionComment """ - The first line of the range to which the comment refers. + The time when a user chose this discussion's answer, if answered. """ - startLine: Int + answerChosenAt: DateTime """ - The side of the diff on which the start line resides. + The user who chose this discussion's answer, if answered. """ - startSide: DiffSide = RIGHT -} + answerChosenBy: Actor -""" -An account to manage multiple organizations with consolidated policy and billing. -""" -type Enterprise implements Node { """ - A URL pointing to the enterprise's public avatar. + The actor who authored the comment. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + author: Actor """ - Enterprise billing information visible to enterprise billing managers. + Author's association with the subject of the comment. """ - billingInfo: EnterpriseBillingInfo + authorAssociation: CommentAuthorAssociation! """ - Identifies the date and time when the object was created. + The main text of the discussion post. """ - createdAt: DateTime! + body: String! """ - Identifies the primary key from the database. + The body rendered to HTML. """ - databaseId: Int + bodyHTML: HTML! """ - The description of the enterprise. + The body rendered to text. """ - description: String + bodyText: String! """ - The description of the enterprise as HTML. + The category for this discussion. """ - descriptionHTML: HTML! - id: ID! + category: DiscussionCategory! """ - The location of the enterprise. + Indicates if the object is closed (definition of closed may depend on type) """ - location: String + closed: Boolean! """ - A list of users who are members of this enterprise. + Identifies the date and time when the object was closed. """ - members( + closedAt: DateTime + + """ + The replies to the discussion. + """ + comments( """ Returns the elements in the list that come after the specified cursor. """ @@ -7165,11 +10824,6 @@ type Enterprise implements Node { """ before: String - """ - Only return members within the selected GitHub Enterprise deployment - """ - deployment: EnterpriseUserDeployment - """ Returns the first _n_ elements from the list. """ @@ -7179,37 +10833,43 @@ type Enterprise implements Node { 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. + Only return answered/unanswered discussions """ - organizations( + isAnswered: Boolean + + """ + A list of labels associated with the object. + """ + labels( """ Returns the elements in the list that come after the specified cursor. """ @@ -7231,40 +10891,45 @@ type Enterprise implements Node { 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 URL-friendly identifier for the enterprise. + The poll associated with this discussion, if one exists. """ - slug: String! + poll: DiscussionPoll """ - The HTTP URL for this enterprise. + Identifies when the comment was published at. """ - url: URI! + publishedAt: DateTime """ - A list of user accounts on this enterprise. + A list of reactions grouped by content left on the subject. + """ + reactionGroups: [ReactionGroup!] + """ - userAccounts( + A list of Reactions left on the Issue. + """ + reactions( """ Returns the elements in the list that come after the specified cursor. """ @@ -7275,6 +10940,11 @@ type Enterprise implements Node { """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -7284,113 +10954,188 @@ type Enterprise implements Node { Returns the last _n_ elements from the list. """ last: Int - ): EnterpriseUserAccountConnection! + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - Is the current viewer an admin of this enterprise? + The repository associated with this node. """ - viewerIsAdmin: Boolean! + repository: Repository! """ - The URL of the enterprise website. + The path for this discussion. """ - websiteUrl: URI -} + resourcePath: URI! -""" -The connection type for User. -""" -type EnterpriseAdministratorConnection { """ - A list of edges. + Identifies the reason for the discussion's state. """ - edges: [EnterpriseAdministratorEdge] + stateReason: DiscussionStateReason """ - 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 { """ - 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. + Indicates if the object can be closed by the viewer. """ - role: EnterpriseAdministratorRole! + viewerCanClose: Boolean! + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: 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 { +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] + nodes: [DiscussionCategory] """ Information to aid in pagination. @@ -7406,7 +11151,7 @@ type EnterpriseAdministratorInvitationConnection { """ An edge in a connection. """ -type EnterpriseAdministratorInvitationEdge { +type DiscussionCategoryEdge { """ A cursor for use in pagination. """ @@ -7415,217 +11160,215 @@ type EnterpriseAdministratorInvitationEdge { """ The item at the end of the edge. """ - node: EnterpriseAdministratorInvitation + node: DiscussionCategory } """ -Ordering options for enterprise administrator invitation connections +The possible reasons for closing a discussion. """ -input EnterpriseAdministratorInvitationOrder { +enum DiscussionCloseReason { """ - The ordering direction. + The discussion is a duplicate of another """ - direction: OrderDirection! + DUPLICATE """ - The field to order enterprise administrator invitations by. + The discussion is no longer relevant """ - field: EnterpriseAdministratorInvitationOrderField! -} + OUTDATED -""" -Properties by which enterprise administrator invitation connections can be ordered. -""" -enum EnterpriseAdministratorInvitationOrderField { """ - Order enterprise administrator member invitations by creation time + The discussion has been resolved """ - CREATED_AT + RESOLVED } """ -The possible administrator roles in an enterprise account. +A comment on a discussion. """ -enum EnterpriseAdministratorRole { +type DiscussionComment implements Comment & Deletable & Minimizable & Node & Reactable & Updatable & UpdatableComment & Votable { """ - Represents a billing manager of the enterprise account. + The actor who authored the comment. """ - BILLING_MANAGER + author: Actor """ - Represents an owner of the enterprise account. + Author's association with the subject of the comment. """ - OWNER -} + authorAssociation: CommentAuthorAssociation! -""" -Metadata for an audit entry containing enterprise account information. -""" -interface EnterpriseAuditEntryData { """ - The HTTP path for this enterprise. + The body as Markdown. """ - enterpriseResourcePath: URI + body: String! """ - The slug of the enterprise. + The body rendered to HTML. """ - enterpriseSlug: String + bodyHTML: HTML! """ - The HTTP URL for this enterprise. + The body rendered to text. """ - enterpriseUrl: URI -} + bodyText: String! -""" -Enterprise billing information visible to enterprise billing managers and owners. -""" -type EnterpriseBillingInfo { """ - The number of licenseable users/emails across the enterprise. + Identifies the date and time when the object was created. """ - allLicensableUsersCount: Int! + createdAt: DateTime! """ - The number of data packs used by all organizations owned by the enterprise. + Check if this comment was created via an email reply. """ - assetPacks: Int! + createdViaEmail: Boolean! """ - The number of available seats across all owned organizations based on the unique number of billable users. + Identifies the primary key from the database. """ - availableSeats: Int! @deprecated(reason: "`availableSeats` will be replaced with `totalAvailableLicenses` to provide more clarity on the value being returned Use EnterpriseBillingInfo.totalAvailableLicenses instead. Removal on 2020-01-01 UTC.") + databaseId: Int """ - The bandwidth quota in GB for all organizations owned by the enterprise. + The time when this replied-to comment was deleted """ - bandwidthQuota: Float! + deletedAt: DateTime """ - The bandwidth usage in GB for all organizations owned by the enterprise. + The discussion this comment was created in """ - bandwidthUsage: Float! + discussion: Discussion """ - The bandwidth usage as a percentage of the bandwidth quota. + The actor who edited the comment. """ - bandwidthUsagePercentage: Int! + editor: Actor + id: ID! """ - The total seats across all organizations owned by the enterprise. + Check if this comment was edited and includes an edit with the creation data """ - seats: Int! @deprecated(reason: "`seats` will be replaced with `totalLicenses` to provide more clarity on the value being returned Use EnterpriseBillingInfo.totalLicenses instead. Removal on 2020-01-01 UTC.") + includesCreatedEdit: Boolean! """ - The storage quota in GB for all organizations owned by the enterprise. + Has this comment been chosen as the answer of its discussion? """ - storageQuota: Float! + isAnswer: Boolean! """ - The storage usage in GB for all organizations owned by the enterprise. + Returns whether or not a comment has been minimized. """ - storageUsage: Float! + isMinimized: Boolean! """ - The storage usage as a percentage of the storage quota. + The moment the editor made the last edit """ - storageUsagePercentage: Int! + lastEditedAt: DateTime """ - The number of available licenses across all owned organizations based on the unique number of billable users. + 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. """ - totalAvailableLicenses: Int! + minimizedReason: String """ - The total number of licenses allocated. + Identifies when the comment was published at. """ - totalLicenses: Int! -} + publishedAt: DateTime -""" -The possible values for the enterprise default repository permission setting. -""" -enum EnterpriseDefaultRepositoryPermissionSettingValue { """ - Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. + A list of reactions grouped by content left on the subject. """ - ADMIN + reactionGroups: [ReactionGroup!] """ - Organization members will only be able to clone and pull public repositories. + A list of Reactions left on the Issue. """ - NONE + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Organizations in the enterprise choose default repository permissions for their members. - """ - NO_POLICY + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Organization members will be able to clone and pull all organization repositories. - """ - READ + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent - """ - Organization members will be able to clone, pull, and push all organization repositories. - """ - WRITE -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The possible values for an enabled/disabled enterprise setting. -""" -enum EnterpriseEnabledDisabledSettingValue { - """ - The setting is disabled for organizations in the enterprise. - """ - DISABLED + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + 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 { """ - 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 { """ - 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. """ @@ -7645,53 +11388,72 @@ type EnterpriseIdentityProvider implements Node { 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 = 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 { +type DiscussionCommentConnection { """ A list of edges. """ - edges: [EnterpriseMemberEdge] + edges: [DiscussionCommentEdge] """ A list of nodes. """ - nodes: [EnterpriseMember] + nodes: [DiscussionComment] """ Information to aid in pagination. @@ -7705,113 +11467,191 @@ type EnterpriseMemberConnection { } """ -A User who is a member of an enterprise through one or more organizations. +An edge in a connection. """ -type EnterpriseMemberEdge { +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 { +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 { +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 { +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! """ - Members will be able to create only public repositories. + Indicates if the viewer has permission to vote in this poll. """ - PUBLIC + viewerCanVote: Boolean! + + """ + Indicates if the viewer has voted for any option in this poll. + """ + viewerHasVoted: Boolean! } """ -The possible values for the members can make purchases setting. +An option for a discussion poll. """ -enum EnterpriseMembersCanMakePurchasesSettingValue { +type DiscussionPollOption implements Node { + id: ID! + """ - The setting is disabled for organizations in the enterprise. + The text for this option. """ - DISABLED + option: String! """ - The setting is enabled for organizations in the enterprise. + The discussion poll that this option belongs to. """ - ENABLED + 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 { +type DiscussionPollOptionConnection { """ A list of edges. """ - edges: [EnterpriseOrganizationMembershipEdge] + edges: [DiscussionPollOptionEdge] """ A list of nodes. """ - nodes: [Organization] + nodes: [DiscussionPollOption] """ Information to aid in pagination. @@ -7825,9 +11665,9 @@ type EnterpriseOrganizationMembershipConnection { } """ -An enterprise organization that a user is a member of. +An edge in a connection. """ -type EnterpriseOrganizationMembershipEdge { +type DiscussionPollOptionEdge { """ A cursor for use in pagination. """ @@ -7836,167 +11676,187 @@ type EnterpriseOrganizationMembershipEdge { """ The item at the end of the edge. """ - node: Organization - - """ - The role of the user in the enterprise membership. - """ - role: EnterpriseUserAccountMembershipRole! + node: DiscussionPollOption } """ -The connection type for User. +Ordering options for discussion poll option connections. """ -type EnterpriseOutsideCollaboratorConnection { +input DiscussionPollOptionOrder { """ - A list of edges. + The ordering direction. """ - edges: [EnterpriseOutsideCollaboratorEdge] + direction: OrderDirection! """ - A list of nodes. + The field to order poll options by. """ - nodes: [User] + field: DiscussionPollOptionOrderField! +} +""" +Properties by which discussion poll option connections can be ordered. +""" +enum DiscussionPollOptionOrderField { """ - Information to aid in pagination. + Order poll options by the order that the poll author specified when creating the poll. """ - pageInfo: PageInfo! + AUTHORED_ORDER """ - Identifies the total count of items in the connection. + Order poll options by the number of votes it has. """ - totalCount: Int! + VOTE_COUNT } """ -A User who is an outside collaborator of an enterprise through one or more organizations. +The possible states of a discussion. """ -type EnterpriseOutsideCollaboratorEdge { +enum DiscussionState { """ - A cursor for use in pagination. + A discussion that has been closed """ - cursor: String! + CLOSED """ - Whether the outside collaborator does not have a license for the enterprise. + A discussion that is open """ - isUnlicensed: Boolean! + OPEN +} +""" +The possible state reasons of a discussion. +""" +enum DiscussionStateReason { """ - The item at the end of the edge. + The discussion is a duplicate of another """ - node: User + DUPLICATE """ - The enterprise organization repositories this user is a member of. + The discussion is no longer relevant """ - repositories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + OUTDATED - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The discussion was reopened + """ + REOPENED - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The discussion has been resolved + """ + RESOLVED +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Autogenerated input type of DismissPullRequestReview +""" +input DismissPullRequestReviewInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Ordering options for repositories. - """ - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! + """ + The contents of the pull request review dismissal message. + """ + message: String! + + """ + The Node ID of the pull request review to modify. + """ + pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) } """ -Enterprise information only visible to enterprise owners. +Autogenerated return type of DismissPullRequestReview """ -type EnterpriseOwnerInfo { +type DismissPullRequestReviewPayload { """ - A list of enterprise organizations configured with the provided action execution capabilities setting value. + A unique identifier for the client performing the mutation. """ - actionExecutionCapabilitySettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + clientMutationId: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The dismissed pull request review. + """ + pullRequestReview: PullRequestReview +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +The possible reasons that a Dependabot alert was dismissed. +""" +enum DismissReason { + """ + A fix has already been started + """ + FIX_STARTED - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + This alert is inaccurate or incorrect + """ + INACCURATE - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """ + Vulnerable code is not actually used + """ + NOT_USED """ - A list of all of the administrators for this enterprise. + No bandwidth to fix this """ - admins( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + NO_BANDWIDTH - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Risk is tolerable to this project + """ + TOLERABLE_RISK +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Autogenerated input type of DismissRepositoryVulnerabilityAlert +""" +input DismissRepositoryVulnerabilityAlertInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The reason the Dependabot alert is being dismissed. + """ + dismissReason: DismissReason! - """ - Ordering options for administrators returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + """ + The Dependabot alert ID to dismiss. + """ + repositoryVulnerabilityAlertId: ID! @possibleTypes(concreteTypes: ["RepositoryVulnerabilityAlert"]) +} - """ - The search string to look for. - """ - query: String +""" +Autogenerated return type of DismissRepositoryVulnerabilityAlert +""" +type DismissRepositoryVulnerabilityAlertPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - The role to filter by. - """ - role: EnterpriseAdministratorRole - ): EnterpriseAdministratorConnection! + """ + The Dependabot alert that was dismissed + """ + repositoryVulnerabilityAlert: RepositoryVulnerabilityAlert +} +""" +A draft issue within a project. +""" +type DraftIssue implements Node { """ - A list of users in the enterprise who currently have two-factor authentication disabled. + A list of users to assigned to this draft issue. """ - affiliatedUsersWithTwoFactorDisabled( + assignees( """ Returns the elements in the list that come after the specified cursor. """ @@ -8019,19 +11879,35 @@ type EnterpriseOwnerInfo { ): UserConnection! """ - Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + The body of the draft issue. """ - affiliatedUsersWithTwoFactorDisabledExist: Boolean! + body: String! """ - The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. + The body of the draft issue rendered to HTML. """ - allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! + bodyHTML: HTML! """ - A list of enterprise organizations configured with the provided private repository forking setting value. + The body of the draft issue rendered to text. """ - allowPrivateRepositoryForkingSettingOrganizations( + bodyText: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The actor who created this draft issue. + """ + creator: Actor + id: ID! + + """ + List of items linked with the draft issue (currently draft issue can be linked to only one item). + """ + projectV2Items( """ Returns the elements in the list that come after the specified cursor. """ @@ -8051,27 +11927,12 @@ type EnterpriseOwnerInfo { 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 base repository permissions for organizations in this enterprise. - """ - defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! + ): ProjectV2ItemConnection! """ - A list of enterprise organizations configured with the provided default repository permission. + Projects that link to this draft issue (currently draft issue can be linked to only one project). """ - defaultRepositoryPermissionSettingOrganizations( + projectsV2( """ Returns the elements in the list that come after the specified cursor. """ @@ -8091,203 +11952,243 @@ type EnterpriseOwnerInfo { Returns the last _n_ elements from the list. """ last: Int + ): ProjectV2Connection! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The title of the draft issue + """ + title: String! - """ - The permission to find organizations for. - """ - value: DefaultRepositoryPermissionField! - ): OrganizationConnection! + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} +""" +Specifies a review comment to be left with a Pull Request Review. +""" +input DraftPullRequestReviewComment { """ - Enterprise Server installations owned by the enterprise. + Body of the comment to leave. """ - enterpriseServerInstallations( - """ - 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 + """ + Path to the file being commented on. + """ + path: String! - """ - Whether or not to only return installations discovered via GitHub Connect. - """ - connectedOnly: Boolean = false + """ + Position in the file to leave a comment on. + """ + position: Int! +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Specifies a review comment thread to be left with a Pull Request Review. +""" +input DraftPullRequestReviewThread { + """ + Body of the comment to leave. + """ + body: String! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The line of the blob to which the thread refers. The end of the line range for multi-line comments. + """ + line: Int! - """ - Ordering options for Enterprise Server installations returned. - """ - orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} - ): EnterpriseServerInstallationConnection! + """ + Path to the file being commented on. + """ + path: String! """ - The setting value for whether the enterprise has an IP allow list enabled. + 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. """ - ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + side: DiffSide = RIGHT """ - The IP addresses that are allowed to access resources owned by the enterprise. + The first line of the range to which the comment refers. """ - ipAllowListEntries( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + startLine: Int - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + 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 IP allow list entries returned. - """ - orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} - ): IpAllowListEntryConnection! + """ + 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} +""" +Autogenerated input type of EnqueuePullRequest +""" +input EnqueuePullRequestInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The expected head OID of the pull request. + """ + expectedHeadOid: GitObjectID """ - The setting value for whether members of organizations in the enterprise can create internal repositories. + Add the pull request to the front of the queue. """ - membersCanCreateInternalRepositoriesSetting: Boolean + jump: Boolean """ - The setting value for whether members of organizations in the enterprise can create private repositories. + The ID of the pull request to enqueue. """ - membersCanCreatePrivateRepositoriesSetting: Boolean + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} +""" +Autogenerated return type of EnqueuePullRequest +""" +type EnqueuePullRequestPayload { """ - The setting value for whether members of organizations in the enterprise can create public repositories. + A unique identifier for the client performing the mutation. """ - membersCanCreatePublicRepositoriesSetting: Boolean + clientMutationId: String """ - The setting value for whether members of organizations in the enterprise can create repositories. + The merge queue entry for the enqueued pull request. """ - membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue + mergeQueueEntry: MergeQueueEntry +} +""" +An account to manage multiple organizations with consolidated policy and billing. +""" +type Enterprise implements AnnouncementBanner & Node { """ - A list of enterprise organizations configured with the provided repository creation setting value. + The text of the announcement """ - membersCanCreateRepositoriesSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + announcement: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The expiration date of the announcement, if any + """ + announcementExpiresAt: DateTime - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Whether the announcement can be dismissed by the user + """ + announcementUserDismissible: Boolean + """ + A URL pointing to the enterprise's public avatar. + """ + avatarUrl( """ - Returns the last _n_ elements from the list. + The size of the resulting square image. """ - last: Int + size: Int + ): URI! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + Enterprise billing information visible to enterprise billing managers. + """ + billingInfo: EnterpriseBillingInfo - """ - The setting to find organizations for. - """ - value: OrganizationMembersCanCreateRepositoriesSettingValue! - ): OrganizationConnection! + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! """ - The setting value for whether members with admin permissions for repositories can delete issues. + Identifies the primary key from the database. """ - membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! + databaseId: Int """ - A list of enterprise organizations configured with the provided members can delete issues setting value. + The description of the enterprise. """ - membersCanDeleteIssuesSettingOrganizations( + description: String + + """ + The description of the enterprise as HTML. + """ + descriptionHTML: HTML! + id: ID! + + """ + The location of the enterprise. + """ + location: String + + """ + A list of users who are members of this enterprise. + """ + members( """ Returns the elements in the list that come after the specified cursor. """ @@ -8298,36 +12199,57 @@ type EnterpriseOwnerInfo { """ before: String + """ + Only return members within the selected GitHub Enterprise deployment + """ + deployment: EnterpriseUserDeployment + """ Returns the first _n_ elements from the list. """ first: Int + """ + Only return members with this two-factor authentication status. Does not + include members who only have an account on a GitHub Enterprise Server instance. + """ + hasTwoFactorEnabled: Boolean = null + """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for organizations with this setting. + Ordering options for members returned from the connection. """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} """ - The setting value to find organizations for. + Only return members within the organizations with these logins """ - value: Boolean! - ): OrganizationConnection! + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + + """ + The role of the user in the enterprise organization or server. + """ + role: EnterpriseUserAccountMembershipRole + ): EnterpriseMemberConnection! """ - The setting value for whether members with admin permissions for repositories can delete or transfer repositories. + The name of the enterprise. """ - membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! + name: String! """ - A list of enterprise organizations configured with the provided members can delete repositories setting value. + A list of organizations that belong to this enterprise. """ - membersCanDeleteRepositoriesSettingOrganizations( + organizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -8349,185 +12271,494 @@ type EnterpriseOwnerInfo { 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! """ - The setting value for whether members of organizations in the enterprise can invite outside collaborators. + Enterprise information visible to enterprise owners or enterprise owners' + personal access tokens (classic) with read:enterprise or admin:enterprise scope. """ - membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! + ownerInfo: EnterpriseOwnerInfo """ - A list of enterprise organizations configured with the provided members can invite collaborators setting value. + The HTTP path for this enterprise. """ - membersCanInviteCollaboratorsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + resourcePath: URI! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The URL-friendly identifier for the enterprise. + """ + slug: String! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP URL for this enterprise. + """ + url: URI! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Is the current viewer an admin of this enterprise? + """ + viewerIsAdmin: Boolean! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The URL of the enterprise website. + """ + websiteUrl: URI +} - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! +""" +The connection type for User. +""" +type EnterpriseAdministratorConnection { + """ + A list of edges. + """ + edges: [EnterpriseAdministratorEdge] """ - Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. + A list of nodes. """ - membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! + nodes: [User] """ - The setting value for whether members with admin permissions for repositories can update protected branches. + Information to aid in pagination. """ - membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! + pageInfo: PageInfo! """ - A list of enterprise organizations configured with the provided members can update protected branches setting value. + Identifies the total count of items in the connection. """ - membersCanUpdateProtectedBranchesSettingOrganizations( - """ - 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 members can view dependency insights. + The enterprise the invitation is for. """ - membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! + enterprise: Enterprise! + id: ID! """ - A list of enterprise organizations configured with the provided members can view dependency insights setting value. + The user who was invited to the enterprise. """ - membersCanViewDependencyInsightsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + invitee: User - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The user who created the invitation. + """ + inviter: User - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The invitee's pending role in the enterprise (owner or billing_manager). + """ + role: EnterpriseAdministratorRole! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +The connection type for EnterpriseAdministratorInvitation. +""" +type EnterpriseAdministratorInvitationConnection { + """ + A list of edges. + """ + edges: [EnterpriseAdministratorInvitationEdge] - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + A list of nodes. + """ + nodes: [EnterpriseAdministratorInvitation] - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! """ - The setting value for whether organization projects are enabled for organizations in this enterprise. + Identifies the total count of items in the connection. """ - organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue! + totalCount: Int! +} +""" +An edge in a connection. +""" +type EnterpriseAdministratorInvitationEdge { """ - A list of enterprise organizations configured with the provided organization projects setting value. + A cursor for use in pagination. """ - organizationProjectsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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: EnterpriseAdministratorInvitation +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Ordering options for enterprise administrator invitation connections +""" +input EnterpriseAdministratorInvitationOrder { + """ + The ordering direction. + """ + direction: OrderDirection! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The field to order enterprise administrator invitations by. + """ + field: EnterpriseAdministratorInvitationOrderField! +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +Properties by which enterprise administrator invitation connections can be ordered. +""" +enum EnterpriseAdministratorInvitationOrderField { + """ + Order enterprise administrator member invitations by creation time + """ + CREATED_AT +} - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! +""" +The possible administrator roles in an enterprise account. +""" +enum EnterpriseAdministratorRole { + """ + Represents a billing manager of the enterprise account. + """ + BILLING_MANAGER """ - A list of outside collaborators across the repositories in the enterprise. + Represents an owner of the enterprise account. """ - outsideCollaborators( + OWNER +} + +""" +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 + + """ + Members can fork a repository to their enterprise-managed user account or an organization inside this enterprise. + """ + ENTERPRISE_ORGANIZATIONS_USER_ACCOUNTS + + """ + Members can fork a repository to their user account or an organization, either inside or outside of this enterprise. + """ + EVERYWHERE + + """ + Members can fork a repository only within the same organization (intra-org). + """ + SAME_ORGANIZATION + + """ + Members can fork a repository to their user account or within the same organization. + """ + SAME_ORGANIZATION_USER_ACCOUNTS + + """ + Members can fork a repository to their user account. + """ + USER_ACCOUNTS +} + +""" +Metadata for an audit entry containing enterprise account information. +""" +interface EnterpriseAuditEntryData { + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI +} + +""" +Enterprise billing information visible to enterprise billing managers and owners. +""" +type EnterpriseBillingInfo { + """ + The number of licenseable users/emails across the enterprise. + """ + allLicensableUsersCount: Int! + + """ + The number of data packs used by all organizations owned by the enterprise. + """ + assetPacks: Int! + + """ + The bandwidth quota in GB for all organizations owned by the enterprise. + """ + bandwidthQuota: Float! + + """ + The bandwidth usage in GB for all organizations owned by the enterprise. + """ + bandwidthUsage: Float! + + """ + The bandwidth usage as a percentage of the bandwidth quota. + """ + bandwidthUsagePercentage: Int! + + """ + The storage quota in GB for all organizations owned by the enterprise. + """ + storageQuota: Float! + + """ + The storage usage in GB for all organizations owned by the enterprise. + """ + storageUsage: Float! + + """ + The storage usage as a percentage of the storage quota. + """ + storageUsagePercentage: Int! + + """ + The number of available licenses across all owned organizations based on the unique number of billable users. + """ + totalAvailableLicenses: Int! + + """ + The total number of licenses allocated. + """ + totalLicenses: Int! +} + +""" +The connection type for Enterprise. +""" +type EnterpriseConnection { + """ + A list of edges. + """ + edges: [EnterpriseEdge] + + """ + A list of nodes. + """ + nodes: [Enterprise] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +The possible values for the enterprise base repository permission setting. +""" +enum EnterpriseDefaultRepositoryPermissionSettingValue { + """ + Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. + """ + ADMIN + + """ + Organization members will only be able to clone and pull public repositories. + """ + NONE + + """ + Organizations in the enterprise choose base repository permissions for their members. + """ + NO_POLICY + + """ + Organization members will be able to clone and pull all organization repositories. + """ + READ + + """ + Organization members will be able to clone, pull, and push all organization repositories. + """ + WRITE +} + +""" +An edge in a connection. +""" +type EnterpriseEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Enterprise +} + +""" +The possible values for an enabled/disabled enterprise setting. +""" +enum EnterpriseEnabledDisabledSettingValue { + """ + The setting is disabled for organizations in the enterprise. + """ + DISABLED + + """ + The setting is enabled for organizations in the enterprise. + """ + ENABLED + + """ + There is no policy set for organizations in the enterprise. + """ + NO_POLICY +} + +""" +The possible values for an enabled/no policy enterprise setting. +""" +enum EnterpriseEnabledSettingValue { + """ + The setting is enabled for organizations in the enterprise. + """ + ENABLED + + """ + There is no policy set for organizations in the enterprise. + """ + NO_POLICY +} + +""" +The connection type for OrganizationInvitation. +""" +type EnterpriseFailedInvitationConnection { + """ + A list of edges. + """ + edges: [EnterpriseFailedInvitationEdge] + + """ + 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! +} + +""" +A failed invitation to be a member in an enterprise organization. +""" +type EnterpriseFailedInvitationEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: OrganizationInvitation +} + +""" +An identity provider configured to provision identities for an enterprise. +Visible to enterprise owners or enterprise owners' personal access tokens +(classic) with read:enterprise or admin:enterprise scope. +""" +type EnterpriseIdentityProvider implements Node { + """ + The digest algorithm used to sign SAML requests for the identity provider. + """ + digestMethod: SamlDigestAlgorithm + + """ + 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. """ @@ -8549,30 +12780,342 @@ type EnterpriseOwnerInfo { last: Int """ - The login of one specific outside collaborator. + Filter to external identities with the users login """ login: String """ - Ordering options for outside collaborators returned from the connection. + Filter to external identities with valid org membership only """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + membersOnly: Boolean """ - The search string to look for. + Filter to external identities with the users userName/NameID attribute """ - query: String + userName: String + ): ExternalIdentityConnection! + id: ID! + """ + The x509 certificate used by the identity provider to sign assertions and responses. + """ + idpCertificate: X509Certificate + + """ + The Issuer Entity ID for the SAML identity provider. + """ + issuer: String + + """ + 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 +} + +""" +An object that is a member of an enterprise. +""" +union EnterpriseMember = EnterpriseUserAccount | User + +""" +The connection type for EnterpriseMember. +""" +type EnterpriseMemberConnection { + """ + A list of edges. + """ + edges: [EnterpriseMemberEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseMember] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +A User who is a member of an enterprise through one or more organizations. +""" +type EnterpriseMemberEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseMember +} + +""" +Ordering options for enterprise member connections. +""" +input EnterpriseMemberOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order enterprise members by. + """ + field: EnterpriseMemberOrderField! +} + +""" +Properties by which enterprise member connections can be ordered. +""" +enum EnterpriseMemberOrderField { + """ + Order enterprise members by creation time + """ + CREATED_AT + + """ + Order enterprise members by login + """ + LOGIN +} + +""" +The possible values for the enterprise members can create repositories setting. +""" +enum EnterpriseMembersCanCreateRepositoriesSettingValue { + """ + Members will be able to create public and private repositories. + """ + ALL + + """ + Members will not be able to create public or private repositories. + """ + DISABLED + + """ + Organization administrators choose whether to allow members to create repositories. + """ + NO_POLICY + + """ + Members will be able to create only private repositories. + """ + PRIVATE + + """ + Members will be able to create only public repositories. + """ + PUBLIC +} + +""" +The possible values for the members can make purchases setting. +""" +enum EnterpriseMembersCanMakePurchasesSettingValue { + """ + The setting is disabled for organizations in the enterprise. + """ + DISABLED + + """ + The setting is enabled for organizations in the enterprise. + """ + ENABLED +} + +""" +The possible values we have for filtering Platform::Objects::User#enterprises. +""" +enum EnterpriseMembershipType { + """ + Returns all enterprises in which the user is an admin. + """ + ADMIN + + """ + Returns all enterprises in which the user is a member, admin, or billing manager. + """ + ALL + + """ + Returns all enterprises in which the user is a billing manager. + """ + BILLING_MANAGER + + """ + Returns all enterprises in which the user is a member of an org that is owned by the enterprise. + """ + ORG_MEMBERSHIP +} + +""" +Ordering options for enterprises. +""" +input EnterpriseOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order enterprises by. + """ + field: EnterpriseOrderField! +} + +""" +Properties by which enterprise connections can be ordered. +""" +enum EnterpriseOrderField { + """ + Order enterprises by name + """ + NAME +} + +""" +The connection type for Organization. +""" +type EnterpriseOrganizationMembershipConnection { + """ + A list of edges. + """ + edges: [EnterpriseOrganizationMembershipEdge] + + """ + 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 enterprise organization that a user is a member of. +""" +type EnterpriseOrganizationMembershipEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Organization + + """ + The role of the user in the enterprise membership. + """ + role: EnterpriseUserAccountMembershipRole! +} + +""" +The connection type for User. +""" +type EnterpriseOutsideCollaboratorConnection { + """ + A list of edges. + """ + edges: [EnterpriseOutsideCollaboratorEdge] + + """ + 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 User who is an outside collaborator of an enterprise through one or more organizations. +""" +type EnterpriseOutsideCollaboratorEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: User + + """ + The enterprise organization repositories this user is a member of. + """ + repositories( """ - Only return outside collaborators on repositories with this visibility. - """ - visibility: RepositoryVisibility - ): EnterpriseOutsideCollaboratorConnection! + 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 repositories. + """ + orderBy: RepositoryOrder = {field: NAME, direction: ASC} + ): EnterpriseRepositoryInfoConnection! +} +""" +Enterprise information visible to enterprise owners or enterprise owners' +personal access tokens (classic) with read:enterprise or admin:enterprise scope. +""" +type EnterpriseOwnerInfo { """ - A list of pending administrator invitations for the enterprise. + A list of all of the administrators for this enterprise. """ - pendingAdminInvitations( + admins( """ Returns the elements in the list that come after the specified cursor. """ @@ -8588,15 +13131,25 @@ type EnterpriseOwnerInfo { """ first: Int + """ + Only return administrators with this two-factor authentication status. + """ + hasTwoFactorEnabled: Boolean = null + """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for pending enterprise administrator invitations returned from the connection. + Ordering options for administrators returned from the connection. """ - orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """ + Only return members within the organizations with these logins + """ + organizationLogins: [String!] """ The search string to look for. @@ -8607,12 +13160,203 @@ type EnterpriseOwnerInfo { The role to filter by. """ role: EnterpriseAdministratorRole - ): EnterpriseAdministratorInvitationConnection! + ): EnterpriseAdministratorConnection! """ - A list of pending collaborator invitations across the repositories in the enterprise. + A list of users in the enterprise who currently have two-factor authentication disabled. """ - pendingCollaboratorInvitations( + affiliatedUsersWithTwoFactorDisabled( + """ + 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! + + """ + Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + """ + affiliatedUsersWithTwoFactorDisabledExist: Boolean! + + """ + The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. + """ + allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided private repository forking setting value. + """ + 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! + + """ + The value for the allow private repository forking policy on the enterprise. + """ + allowPrivateRepositoryForkingSettingPolicyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue + + """ + The setting value for base repository permissions for organizations in this enterprise. + """ + defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! + + """ + A list of enterprise organizations configured with the provided base repository permission. + """ + 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 + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The permission to find organizations for. + """ + value: DefaultRepositoryPermissionField! + ): OrganizationConnection! + + """ + A list of domains owned by the enterprise. Visible to enterprise owners or + enterprise owners' personal access tokens (classic) with admin:enterprise scope. + """ + 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 whether or not the domain is approved. + """ + isApproved: Boolean = null + + """ + Filter whether or not 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! + + """ + Enterprise Server installations owned by the enterprise. + """ + enterpriseServerInstallations( + """ + 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 + + """ + Whether or not to only return installations discovered via GitHub Connect. + """ + connectedOnly: Boolean = false + + """ + 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 installations returned. + """ + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + ): EnterpriseServerInstallationConnection! + + """ + A list of failed invitations in the enterprise. + """ + failedInvitations( """ Returns the elements in the list that come after the specified cursor. """ @@ -8623,2548 +13367,14361 @@ type EnterpriseOwnerInfo { """ before: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + 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 + ): EnterpriseFailedInvitationConnection! + + """ + The setting value for whether the enterprise has an IP allow list enabled. + """ + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + + """ + The IP addresses that are allowed to access resources owned by the enterprise. + Visible to enterprise owners or enterprise owners' personal access tokens + (classic) with admin:enterprise scope. + """ + 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 setting value for whether the enterprise has IP allow list configuration for installed GitHub Apps enabled. + """ + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! + + """ + Whether or not the base repository permission is currently being updated. + """ + isUpdatingDefaultRepositoryPermission: Boolean! + + """ + Whether the two-factor authentication requirement is currently being enforced. + """ + isUpdatingTwoFactorRequirement: Boolean! + + """ + The setting value for whether organization members with admin permissions on a + repository can change repository visibility. + """ + membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided can change repository visibility setting value. + """ + membersCanChangeRepositoryVisibilitySettingOrganizations( + """ + 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 members of organizations in the enterprise can create internal repositories. + """ + membersCanCreateInternalRepositoriesSetting: Boolean + + """ + The setting value for whether members of organizations in the enterprise can create private repositories. + """ + membersCanCreatePrivateRepositoriesSetting: Boolean + + """ + The setting value for whether members of organizations in the enterprise can create public repositories. + """ + membersCanCreatePublicRepositoriesSetting: Boolean + + """ + The setting value for whether members of organizations in the enterprise can create repositories. + """ + membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue + + """ + A list of enterprise organizations configured with the provided repository creation setting value. + """ + membersCanCreateRepositoriesSettingOrganizations( + """ + 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 to find organizations for. + """ + value: OrganizationMembersCanCreateRepositoriesSettingValue! + ): OrganizationConnection! + + """ + The setting value for whether members with admin permissions for repositories can delete issues. + """ + 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. + """ + 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 members with admin permissions for repositories can delete or transfer repositories. + """ + membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! + + """ + 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. + """ + 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 members of organizations in the enterprise can invite outside collaborators. + """ + membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can invite collaborators setting value. + """ + membersCanInviteCollaboratorsSettingOrganizations( + """ + 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! + + """ + Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. + """ + membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! + + """ + The setting value for whether members with admin permissions for repositories can update protected branches. + """ + membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can update protected branches setting value. + """ + membersCanUpdateProtectedBranchesSettingOrganizations( + """ + 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 members can view dependency insights. + """ + membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can view dependency insights setting value. + """ + membersCanViewDependencyInsightsSettingOrganizations( + """ + 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! + + """ + 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. + """ + 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 +} + +""" +The connection type for EnterpriseServerInstallation. +""" +type EnterpriseServerInstallationMembershipConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerInstallationMembershipEdge] + + """ + 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 Enterprise Server installation that a user is a member of. +""" +type EnterpriseServerInstallationMembershipEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerInstallation + + """ + The role of the user in the enterprise membership. + """ + role: EnterpriseUserAccountMembershipRole! +} + +""" +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! + + """ + A list of Enterprise Server installations this user is a member of. + """ + enterpriseInstallations( + """ + 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 installations returned from the connection. + """ + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + + """ + The search string to look for. + """ + query: String + + """ + The role of the user in the installation. + """ + role: EnterpriseUserAccountMembershipRole + ): EnterpriseServerInstallationMembershipConnection! + 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 +} + +""" +Properties by which environments connections can be ordered +""" +enum EnvironmentOrderField { + """ + Order environments by name. + """ + NAME +} + +""" +Ordering options for environments +""" +input Environments { + """ + The direction in which to order environments by the specified field. + """ + direction: OrderDirection! + + """ + The field to order environments by. + """ + field: EnvironmentOrderField! +} + +""" +An external identity provisioned by SAML SSO or SCIM. If SAML is configured on +the organization, the external identity is visible to (1) organization owners, +(2) organization owners' personal access tokens (classic) with read:org or +admin:org scope, (3) GitHub App with an installation token with read or write +access to members. If SAML is configured on the enterprise, the external +identity is visible to (1) enterprise owners, (2) enterprise owners' personal +access tokens (classic) with read:enterprise or admin:enterprise scope. +""" +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 GitHub Enterprise Importer uses for outbound connections + """ + githubEnterpriseImporterIpAddresses: [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 & Deletable & Labelable & Lockable & Node & ProjectV2Owner & Reactable & RepositoryNode & Subscribable & SubscribableThread & 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 + + """ + Identifies the primary key from the database as a BigInt. + """ + fullDatabaseId: BigInt + + """ + 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 + + """ + Indicates if the object can be closed by the viewer. + """ + viewerCanClose: Boolean! + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: 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 + + """ + Identifies the viewer's thread subscription form action. + """ + viewerThreadSubscriptionFormAction: ThreadSubscriptionFormAction + + """ + Identifies the viewer's thread subscription status. + """ + viewerThreadSubscriptionStatus: ThreadSubscriptionState +} + +""" +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 + + """ + Identifies the primary key from the database as a BigInt. + """ + fullDatabaseId: BigInt + 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 assignees. + """ + 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 suggested issue body. + """ + body: String + + """ + The template filename. + """ + filename: String! + + """ + The suggested issue labels + """ + 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 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 MarkProjectV2AsTemplate +""" +input MarkProjectV2AsTemplateInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to mark as a template. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of MarkProjectV2AsTemplate +""" +type MarkProjectV2AsTemplatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The project. + """ + projectV2: ProjectV2 +} + +""" +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 +} + +""" +The queue of pull request entries to be merged into a protected branch in a repository. +""" +type MergeQueue implements Node { + """ + The configuration for this merge queue + """ + configuration: MergeQueueConfiguration + + """ + The entries in the queue + """ + entries( + """ + 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 + ): MergeQueueEntryConnection + id: ID! + + """ + The estimated time in seconds until a newly added entry would be merged + """ + nextEntryEstimatedTimeToMerge: Int + + """ + The repository this merge queue belongs to + """ + repository: Repository + + """ + The HTTP path for this merge queue + """ + resourcePath: URI! + + """ + The HTTP URL for this merge queue + """ + url: URI! +} + +""" +Configuration for a MergeQueue +""" +type MergeQueueConfiguration { + """ + The amount of time in minutes to wait for a check response before considering it a failure. + """ + checkResponseTimeout: Int + + """ + The maximum number of entries to build at once. + """ + maximumEntriesToBuild: Int + + """ + The maximum number of entries to merge at once. + """ + maximumEntriesToMerge: Int + + """ + The merge method to use for this queue. + """ + mergeMethod: PullRequestMergeMethod + + """ + The strategy to use when merging entries. + """ + mergingStrategy: MergeQueueMergingStrategy + + """ + The minimum number of entries required to merge at once. + """ + minimumEntriesToMerge: Int + + """ + The amount of time in minutes to wait before ignoring the minumum number of + entries in the queue requirement and merging a collection of entries + """ + minimumEntriesToMergeWaitTime: Int +} + +""" +Entries in a MergeQueue +""" +type MergeQueueEntry implements Node { + """ + The base commit for this entry + """ + baseCommit: Commit + + """ + The date and time this entry was added to the merge queue + """ + enqueuedAt: DateTime! + + """ + The actor that enqueued this entry + """ + enqueuer: Actor! + + """ + The estimated time in seconds until this entry will be merged + """ + estimatedTimeToMerge: Int + + """ + The head commit for this entry + """ + headCommit: Commit + id: ID! + + """ + Whether this pull request should jump the queue + """ + jump: Boolean! + + """ + The merge queue that this entry belongs to + """ + mergeQueue: MergeQueue + + """ + The position of this entry in the queue + """ + position: Int! + + """ + The pull request that will be added to a merge group + """ + pullRequest: PullRequest + + """ + Does this pull request need to be deployed on its own + """ + solo: Boolean! + + """ + The state of this entry in the queue + """ + state: MergeQueueEntryState! +} + +""" +The connection type for MergeQueueEntry. +""" +type MergeQueueEntryConnection { + """ + A list of edges. + """ + edges: [MergeQueueEntryEdge] + + """ + A list of nodes. + """ + nodes: [MergeQueueEntry] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type MergeQueueEntryEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: MergeQueueEntry +} + +""" +The possible states for a merge queue entry. +""" +enum MergeQueueEntryState { + """ + The entry is currently waiting for checks to pass. + """ + AWAITING_CHECKS + + """ + The entry is currently locked. + """ + LOCKED + + """ + The entry is currently mergeable. + """ + MERGEABLE + + """ + The entry is currently queued. + """ + QUEUED + + """ + The entry is currently unmergeable. + """ + UNMERGEABLE +} + +""" +The possible merging strategies for a merge queue. +""" +enum MergeQueueMergingStrategy { + """ + Entries only allowed to merge if they are passing. + """ + ALLGREEN + + """ + Failing Entires are allowed to merge if they are with a passing entry. + """ + HEADGREEN +} + +""" +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! + + """ + The number of warnings encountered for this migration. To review the warnings, + check the [Migration Log](https://docs.github.com/en/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/accessing-your-migration-logs-for-github-enterprise-importer). + """ + warningsCount: Int! +} + +""" +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! + + """ + Indicates if the object can be closed by the viewer. + """ + viewerCanClose: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: Boolean! +} + +""" +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 reply to an existing Pull Request Review Thread. + """ + addPullRequestReviewThreadReply( + """ + Parameters for AddPullRequestReviewThreadReply + """ + input: AddPullRequestReviewThreadReplyInput! + ): AddPullRequestReviewThreadReplyPayload + + """ + 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 a discussion. + """ + closeDiscussion( + """ + Parameters for CloseDiscussion + """ + input: CloseDiscussionInput! + ): CloseDiscussionPayload + + """ + 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 repository ruleset + """ + createRepositoryRuleset( + """ + Parameters for CreateRepositoryRuleset + """ + input: CreateRepositoryRulesetInput! + ): CreateRepositoryRulesetPayload + + """ + 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 + + """ + Make many one-time sponsorships for different sponsorable users or + organizations at once. Can only sponsor those who have a public GitHub + Sponsors profile. + """ + createSponsorships( + """ + Parameters for CreateSponsorships + """ + input: CreateSponsorshipsInput! + ): CreateSponsorshipsPayload + + """ + 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 project workflow. + """ + deleteProjectV2Workflow( + """ + Parameters for DeleteProjectV2Workflow + """ + input: DeleteProjectV2WorkflowInput! + ): DeleteProjectV2WorkflowPayload + + """ + 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 + + """ + Delete a repository ruleset + """ + deleteRepositoryRuleset( + """ + Parameters for DeleteRepositoryRuleset + """ + input: DeleteRepositoryRulesetInput! + ): DeleteRepositoryRulesetPayload + + """ + 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 + + """ + Remove a pull request from the merge queue. + """ + dequeuePullRequest( + """ + Parameters for DequeuePullRequest + """ + input: DequeuePullRequestInput! + ): DequeuePullRequestPayload + + """ + 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 + + """ + Add a pull request to the merge queue. + """ + enqueuePullRequest( + """ + Parameters for EnqueuePullRequest + """ + input: EnqueuePullRequestInput! + ): EnqueuePullRequestPayload + + """ + 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 + + """ + Mark a project as a template. Note that only projects which are owned by an Organization can be marked as a template. + """ + markProjectV2AsTemplate( + """ + Parameters for MarkProjectV2AsTemplate + """ + input: MarkProjectV2AsTemplateInput! + ): MarkProjectV2AsTemplatePayload + + """ + 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 discussion. + """ + reopenDiscussion( + """ + Parameters for ReopenDiscussion + """ + input: ReopenDiscussionInput! + ): ReopenDiscussionPayload + + """ + 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 + + """ + Unmark a project as a template. + """ + unmarkProjectV2AsTemplate( + """ + Parameters for UnmarkProjectV2AsTemplate + """ + input: UnmarkProjectV2AsTemplateInput! + ): UnmarkProjectV2AsTemplatePayload + + """ + 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 + + """ + Update the collaborators on a team or a project + """ + updateProjectV2Collaborators( + """ + Parameters for UpdateProjectV2Collaborators + """ + input: UpdateProjectV2CollaboratorsInput! + ): UpdateProjectV2CollaboratorsPayload + + """ + 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 + + """ + Update a repository ruleset + """ + updateRepositoryRuleset( + """ + Parameters for UpdateRepositoryRuleset + """ + input: UpdateRepositoryRulesetInput! + ): UpdateRepositoryRulesetPayload + + """ + 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. +Visible to enterprise owners or enterprise owners' personal access tokens +(classic) with read:enterprise or admin:enterprise scope. +""" +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 - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP path for the user. + """ + userResourcePath: URI - """ - Ordering options for pending repository collaborator invitations returned from the connection. - """ - orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} + """ + The HTTP URL for the user. + """ + userUrl: URI +} - """ - The search string to look for. - """ - query: String - ): RepositoryInvitationConnection! +""" +Audit log entry for a org.invite_to_business event. +""" +type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! """ - A list of pending collaborators across the repositories in the enterprise. + The user who initiated the action """ - pendingCollaborators( - """ - 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 - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The username of the user who initiated the action + """ + actorLogin: String - """ - Ordering options for pending repository collaborator invitations returned from the connection. - """ - orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} + """ + The HTTP path for the actor. + """ + actorResourcePath: URI - """ - The search string to look for. - """ - query: String - ): EnterprisePendingCollaboratorConnection! @deprecated(reason: "Repository invitations can now be associated with an email, not only an invitee. Use the `pendingCollaboratorInvitations` field instead. Removal on 2020-10-01 UTC.") + """ + The HTTP URL for the actor. + """ + actorUrl: URI """ - A list of pending member invitations for organizations in the enterprise. + The time the action was initiated """ - pendingMemberInvitations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + createdAt: PreciseDateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The slug of the enterprise. + """ + enterpriseSlug: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! - """ - The search string to look for. - """ - query: String - ): EnterprisePendingMemberInvitationConnection! + """ + The corresponding operation type for the action + """ + operationType: OperationType """ - The setting value for whether repository projects are enabled in this enterprise. + The Organization associated with the Audit Entry. """ - repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue! + organization: Organization """ - A list of enterprise organizations configured with the provided repository projects setting value. + The name of the Organization. """ - repositoryProjectsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The HTTP path for the user. + """ + userResourcePath: URI """ - The SAML Identity Provider for the enterprise. + The HTTP URL for the user. """ - samlIdentityProvider: EnterpriseIdentityProvider + userUrl: URI +} +""" +Audit log entry for a org.oauth_app_access_approved event. +""" +type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - A list of enterprise organizations configured with the SAML single sign-on setting value. + The action name """ - samlIdentityProviderSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + action: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The user who initiated the action + """ + actor: AuditEntryActor - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The IP address of the actor + """ + actorIp: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The username of the user who initiated the action + """ + actorLogin: String - """ - The setting value to find organizations for. - """ - value: IdentityProviderConfigurationState! - ): OrganizationConnection! + """ + The HTTP path for the actor. + """ + actorResourcePath: URI """ - The setting value for whether team discussions are enabled for organizations in this enterprise. + The HTTP URL for the actor. """ - teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue! + actorUrl: URI """ - A list of enterprise organizations configured with the provided team discussions setting value. + The time the action was initiated """ - teamDiscussionsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + createdAt: PreciseDateTime! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The name of the OAuth application. + """ + oauthApplicationName: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP path for the OAuth application + """ + oauthApplicationResourcePath: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for the OAuth application + """ + oauthApplicationUrl: URI - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The corresponding operation type for the action + """ + operationType: OperationType - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The Organization associated with the Audit Entry. + """ + organization: Organization """ - The setting value for whether the enterprise requires two-factor authentication for its organizations and users. + The name of the Organization. """ - twoFactorRequiredSetting: EnterpriseEnabledSettingValue! + organizationName: String """ - A list of enterprise organizations configured with the two-factor authentication setting value. + The HTTP path for the organization """ - twoFactorRequiredSettingOrganizations( - """ - 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 user affected by the action + """ + user: User - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The HTTP path for the user. + """ + userResourcePath: URI - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -The connection type for User. +Audit log entry for a org.oauth_app_access_blocked event. """ -type EnterprisePendingCollaboratorConnection { +type OrgOauthAppAccessBlockedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [EnterprisePendingCollaboratorEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [User] + 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 -""" -A user with an invitation to be a collaborator on a repository owned by an organization in an enterprise. -""" -type EnterprisePendingCollaboratorEdge { """ - A cursor for use in pagination. + The username of the user who initiated the action """ - cursor: String! + actorLogin: String """ - Whether the invited collaborator does not have a license for the enterprise. + The HTTP path for the actor. """ - isUnlicensed: Boolean! + actorResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the actor. """ - node: User + actorUrl: URI """ - The enterprise organization repositories this user is a member of. + The time the action was initiated """ - repositories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + createdAt: PreciseDateTime! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The name of the OAuth application. + """ + oauthApplicationName: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP path for the OAuth application + """ + oauthApplicationResourcePath: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for the OAuth application + """ + oauthApplicationUrl: URI - """ - Ordering options for repositories. - """ - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! -} + """ + The corresponding operation type for the action + """ + operationType: OperationType -""" -The connection type for OrganizationInvitation. -""" -type EnterprisePendingMemberInvitationConnection { """ - A list of edges. + The Organization associated with the Audit Entry. """ - edges: [EnterprisePendingMemberInvitationEdge] + organization: Organization """ - A list of nodes. + The name of the Organization. """ - nodes: [OrganizationInvitation] + 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 """ - Identifies the total count of unique users in the connection. + The user affected by the action """ - totalUniqueUserCount: Int! -} + user: User -""" -An invitation to be a member in an enterprise organization. -""" -type EnterprisePendingMemberInvitationEdge { """ - A cursor for use in pagination. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - cursor: String! + userLogin: String """ - Whether the invitation has a license for the enterprise. + The HTTP path for the user. """ - isUnlicensed: Boolean! + userResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the user. """ - node: OrganizationInvitation + userUrl: URI } """ -A subset of repository information queryable from an enterprise. +Audit log entry for a org.oauth_app_access_denied event. """ -type EnterpriseRepositoryInfo implements Node { - id: ID! - +type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - Identifies if the repository is private. + The action name """ - isPrivate: Boolean! + action: String! """ - The repository's name. + The user who initiated the action """ - name: String! + actor: AuditEntryActor """ - The repository's name with owner. + The IP address of the actor """ - nameWithOwner: String! -} + actorIp: String -""" -The connection type for EnterpriseRepositoryInfo. -""" -type EnterpriseRepositoryInfoConnection { """ - A list of edges. + A readable representation of the actor's location """ - edges: [EnterpriseRepositoryInfoEdge] + actorLocation: ActorLocation """ - A list of nodes. + The username of the user who initiated the action """ - nodes: [EnterpriseRepositoryInfo] + 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! -} + actorUrl: URI -""" -An edge in a connection. -""" -type EnterpriseRepositoryInfoEdge { """ - 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 name of the OAuth application. """ - node: EnterpriseRepositoryInfo -} + oauthApplicationName: String -""" -An Enterprise Server installation. -""" -type EnterpriseServerInstallation implements Node { """ - Identifies the date and time when the object was created. + The HTTP path for the OAuth application """ - createdAt: DateTime! + oauthApplicationResourcePath: URI """ - The customer name to which the Enterprise Server installation belongs. + The HTTP URL for the OAuth application """ - customerName: String! + oauthApplicationUrl: URI """ - The host name of the Enterprise Server installation. + The corresponding operation type for the action """ - hostName: String! - id: ID! + operationType: OperationType """ - Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect. + The Organization associated with the Audit Entry. """ - isConnected: Boolean! + organization: Organization """ - Identifies the date and time when the object was last updated. + The name of the Organization. """ - updatedAt: DateTime! + organizationName: String """ - User accounts on this Enterprise Server installation. + The HTTP path for the organization """ - 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! + organizationResourcePath: URI """ - User accounts uploads for the Enterprise Server installation. + The HTTP URL for the organization """ - 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! -} + organizationUrl: URI -""" -The connection type for EnterpriseServerInstallation. -""" -type EnterpriseServerInstallationConnection { """ - A list of edges. + The user affected by the action """ - edges: [EnterpriseServerInstallationEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [EnterpriseServerInstallation] + 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 } """ -An edge in a connection. +Audit log entry for a org.oauth_app_access_requested event. """ -type EnterpriseServerInstallationEdge { +type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - A cursor for use in pagination. + The action name """ - cursor: String! + action: String! """ - The item at the end of the edge. + The user who initiated the action """ - node: EnterpriseServerInstallation -} + actor: AuditEntryActor -""" -Ordering options for Enterprise Server installation connections. -""" -input EnterpriseServerInstallationOrder { """ - The ordering direction. + The IP address of the actor """ - direction: OrderDirection! + actorIp: String """ - The field to order Enterprise Server installations by. + A readable representation of the actor's location """ - field: EnterpriseServerInstallationOrderField! -} + actorLocation: ActorLocation -""" -Properties by which Enterprise Server installation connections can be ordered. -""" -enum EnterpriseServerInstallationOrderField { """ - Order Enterprise Server installations by creation time + The username of the user who initiated the action """ - CREATED_AT + actorLogin: String """ - Order Enterprise Server installations by customer name + The HTTP path for the actor. """ - CUSTOMER_NAME + actorResourcePath: URI """ - Order Enterprise Server installations by host name + The HTTP URL for the actor. """ - HOST_NAME -} + actorUrl: URI -""" -A user account on an Enterprise Server installation. -""" -type EnterpriseServerUserAccount implements Node { """ - Identifies the date and time when the object was created. + The time the action was initiated """ - createdAt: DateTime! + createdAt: PreciseDateTime! + id: ID! """ - User emails belonging to this user account. + The name of the OAuth application. """ - emails( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + oauthApplicationName: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP path for the OAuth application + """ + oauthApplicationResourcePath: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP URL for the OAuth application + """ + oauthApplicationUrl: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The corresponding operation type for the action + """ + operationType: OperationType - """ - Ordering options for Enterprise Server user account emails returned from the connection. - """ - orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} - ): EnterpriseServerUserAccountEmailConnection! + """ + The Organization associated with the Audit Entry. + """ + organization: Organization """ - The Enterprise Server installation on which this user account exists. + The name of the Organization. """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + organizationName: String """ - Whether the user account is a site administrator on the Enterprise Server installation. + The HTTP path for the organization """ - isSiteAdmin: Boolean! + organizationResourcePath: URI """ - The login of the user account on the Enterprise Server installation. + The HTTP URL for the organization """ - login: String! + organizationUrl: URI """ - The profile name of the user account on the Enterprise Server installation. + The user affected by the action """ - profileName: String + user: User """ - The date and time when the user account was created on the Enterprise Server installation. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - remoteCreatedAt: DateTime! + userLogin: String """ - The ID of the user account on the Enterprise Server installation. + The HTTP path for the user. """ - remoteUserId: Int! + userResourcePath: URI """ - Identifies the date and time when the object was last updated. + The HTTP URL for the user. """ - updatedAt: DateTime! + userUrl: URI } """ -The connection type for EnterpriseServerUserAccount. +Audit log entry for a org.oauth_app_access_unblocked event. """ -type EnterpriseServerUserAccountConnection { +type OrgOauthAppAccessUnblockedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [EnterpriseServerUserAccountEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [EnterpriseServerUserAccount] + 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 EnterpriseServerUserAccountEdge { """ - 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: EnterpriseServerUserAccount -} + actorResourcePath: URI -""" -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. + The HTTP URL for the actor. """ - createdAt: DateTime! + actorUrl: URI """ - The email address. + The time the action was initiated """ - email: String! + createdAt: PreciseDateTime! id: ID! """ - Indicates whether this is the primary email of the associated user account. + The name of the OAuth application. """ - isPrimary: Boolean! + oauthApplicationName: String """ - Identifies the date and time when the object was last updated. + The HTTP path for the OAuth application """ - updatedAt: DateTime! + oauthApplicationResourcePath: URI """ - The user account to which the email belongs. + The HTTP URL for the OAuth application """ - userAccount: EnterpriseServerUserAccount! -} + oauthApplicationUrl: URI -""" -The connection type for EnterpriseServerUserAccountEmail. -""" -type EnterpriseServerUserAccountEmailConnection { """ - A list of edges. + The corresponding operation type for the action """ - edges: [EnterpriseServerUserAccountEmailEdge] + operationType: OperationType """ - A list of nodes. + The Organization associated with the Audit Entry. """ - nodes: [EnterpriseServerUserAccountEmail] + 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 EnterpriseServerUserAccountEmailEdge { """ - 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 user affected by the action """ - node: EnterpriseServerUserAccountEmail -} + user: User -""" -Ordering options for Enterprise Server user account email connections. -""" -input EnterpriseServerUserAccountEmailOrder { """ - The ordering direction. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - direction: OrderDirection! + userLogin: String """ - The field to order emails by. + The HTTP path for the user. """ - field: EnterpriseServerUserAccountEmailOrderField! -} + userResourcePath: URI -""" -Properties by which Enterprise Server user account email connections can be ordered. -""" -enum EnterpriseServerUserAccountEmailOrderField { """ - Order emails by email + The HTTP URL for the user. """ - EMAIL + userUrl: URI } """ -Ordering options for Enterprise Server user account connections. +Audit log entry for a org.remove_billing_manager event. """ -input EnterpriseServerUserAccountOrder { - """ - The ordering direction. - """ - direction: OrderDirection! - +type OrgRemoveBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The field to order user accounts by. + The action name """ - field: EnterpriseServerUserAccountOrderField! -} + action: String! -""" -Properties by which Enterprise Server user account connections can be ordered. -""" -enum EnterpriseServerUserAccountOrderField { """ - Order user accounts by login + The user who initiated the action """ - LOGIN + actor: AuditEntryActor """ - Order user accounts by creation time on the Enterprise Server installation + The IP address of the actor """ - REMOTE_CREATED_AT -} + actorIp: String -""" -A user accounts upload from an Enterprise Server installation. -""" -type EnterpriseServerUserAccountsUpload implements Node { """ - Identifies the date and time when the object was created. + A readable representation of the actor's location """ - createdAt: DateTime! + actorLocation: ActorLocation """ - The enterprise to which this upload belongs. + The username of the user who initiated the action """ - enterprise: Enterprise! + actorLogin: String """ - The Enterprise Server installation for which this upload was generated. + The HTTP path for the actor. """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + actorResourcePath: URI """ - The name of the file uploaded. + The HTTP URL for the actor. """ - name: String! + actorUrl: URI """ - The synchronization state of the upload + The time the action was initiated """ - syncState: EnterpriseServerUserAccountsUploadSyncState! + createdAt: PreciseDateTime! + id: ID! """ - Identifies the date and time when the object was last updated. + The corresponding operation type for the action """ - updatedAt: DateTime! -} + operationType: OperationType -""" -The connection type for EnterpriseServerUserAccountsUpload. -""" -type EnterpriseServerUserAccountsUploadConnection { """ - A list of edges. + The Organization associated with the Audit Entry. """ - edges: [EnterpriseServerUserAccountsUploadEdge] + organization: Organization """ - A list of nodes. + The name of the Organization. """ - nodes: [EnterpriseServerUserAccountsUpload] + 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 -""" -An edge in a connection. -""" -type EnterpriseServerUserAccountsUploadEdge { """ - A cursor for use in pagination. + The reason for the billing manager being removed. """ - cursor: String! + reason: OrgRemoveBillingManagerAuditEntryReason """ - The item at the end of the edge. + The user affected by the action """ - node: EnterpriseServerUserAccountsUpload -} + user: User -""" -Ordering options for Enterprise Server user accounts upload connections. -""" -input EnterpriseServerUserAccountsUploadOrder { """ - The ordering direction. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - direction: OrderDirection! + userLogin: String """ - The field to order user accounts uploads by. + The HTTP path for the user. """ - field: EnterpriseServerUserAccountsUploadOrderField! -} + userResourcePath: URI -""" -Properties by which Enterprise Server user accounts upload connections can be ordered. -""" -enum EnterpriseServerUserAccountsUploadOrderField { """ - Order user accounts uploads by creation time + The HTTP URL for the user. """ - CREATED_AT + userUrl: URI } """ -Synchronization state of the Enterprise Server user accounts upload +The reason a billing manager was removed from an Organization. """ -enum EnterpriseServerUserAccountsUploadSyncState { +enum OrgRemoveBillingManagerAuditEntryReason { """ - The synchronization of the upload failed. + SAML external identity missing """ - FAILURE + SAML_EXTERNAL_IDENTITY_MISSING """ - The synchronization of the upload is pending. + SAML SSO enforcement requires an external identity """ - PENDING + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY """ - The synchronization of the upload succeeded. + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - SUCCESS + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE } """ -An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations. +Audit log entry for a org.remove_member event. """ -type EnterpriseUserAccount implements Actor & Node { +type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A URL pointing to the enterprise user account's public avatar. + The action name """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + action: String! """ - Identifies the date and time when the object was created. + The user who initiated the action """ - createdAt: DateTime! + actor: AuditEntryActor """ - The enterprise in which this user account exists. + The IP address of the actor """ - enterprise: Enterprise! - id: ID! + actorIp: String """ - An identifier for the enterprise user account, a login or email address + A readable representation of the actor's location """ - login: String! + actorLocation: ActorLocation """ - The name of the enterprise user account + The username of the user who initiated the action """ - name: String + actorLogin: String """ - A list of enterprise organizations this user is a member of. + The HTTP path for the actor. """ - 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 + actorResourcePath: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP URL for the actor. + """ + actorUrl: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! - """ - Ordering options for organizations returned from the connection. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The types of membership the member has with the organization. + """ + membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] - """ - The search string to look for. - """ - query: String + """ + The corresponding operation type for the action + """ + operationType: OperationType - """ - The role of the user in the enterprise organization. - """ - role: EnterpriseUserAccountMembershipRole - ): EnterpriseOrganizationMembershipConnection! + """ + The Organization associated with the Audit Entry. + """ + organization: Organization """ - The HTTP path for this user. + The name of the Organization. """ - resourcePath: URI! + organizationName: String """ - Identifies the date and time when the object was last updated. + The HTTP path for the organization """ - updatedAt: DateTime! + organizationResourcePath: URI """ - The HTTP URL for this user. + The HTTP URL for the organization """ - url: URI! + organizationUrl: URI """ - The user within the enterprise. + The reason for the member being removed. """ - user: User -} + reason: OrgRemoveMemberAuditEntryReason -""" -The connection type for EnterpriseUserAccount. -""" -type EnterpriseUserAccountConnection { """ - A list of edges. + The user affected by the action """ - edges: [EnterpriseUserAccountEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [EnterpriseUserAccount] + 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 } """ -An edge in a connection. +The type of membership a user has with an Organization. """ -type EnterpriseUserAccountEdge { +enum OrgRemoveMemberAuditEntryMembershipType { """ - A cursor for use in pagination. + 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. """ - cursor: String! + ADMIN """ - The item at the end of the edge. + A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. """ - node: EnterpriseUserAccount -} + BILLING_MANAGER -""" -The possible roles for enterprise membership. -""" -enum EnterpriseUserAccountMembershipRole { """ - The user is a member of the enterprise membership. + A direct member is a user that is a member of the Organization. """ - MEMBER + DIRECT_MEMBER """ - The user is an owner of the enterprise membership. + 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. """ - OWNER -} + OUTSIDE_COLLABORATOR -""" -The possible GitHub Enterprise deployments where this user can exist. -""" -enum EnterpriseUserDeployment { """ - The user is part of a GitHub Enterprise Cloud deployment. + A suspended member. """ - CLOUD + SUSPENDED """ - The user is part of a GitHub Enterprise Server deployment. + 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. """ - SERVER + UNAFFILIATED } """ -An external identity provisioned by SAML SSO or SCIM. +The reason a member was removed from an Organization. """ -type ExternalIdentity implements Node { +enum OrgRemoveMemberAuditEntryReason { """ - The GUID for this identity + SAML external identity missing """ - guid: String! - id: ID! + SAML_EXTERNAL_IDENTITY_MISSING """ - Organization invitation for this SCIM-provisioned external identity + SAML SSO enforcement requires an external identity """ - organizationInvitation: OrganizationInvitation + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY """ - SAML Identity attributes + User was removed from organization during account recovery """ - samlIdentity: ExternalIdentitySamlAttributes + TWO_FACTOR_ACCOUNT_RECOVERY """ - SCIM Identity attributes + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - scimIdentity: ExternalIdentityScimAttributes + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE """ - User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + User account has been deleted """ - user: User + USER_ACCOUNT_DELETED } """ -The connection type for ExternalIdentity. +Audit log entry for a org.remove_outside_collaborator event. """ -type ExternalIdentityConnection { +type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [ExternalIdentityEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [ExternalIdentity] + 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 ExternalIdentityEdge { """ - 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: ExternalIdentity -} + actorResourcePath: URI -""" -SAML attributes for the External Identity -""" -type ExternalIdentitySamlAttributes { """ - The NameID of the SAML identity + The HTTP URL for the actor. """ - nameId: String -} + actorUrl: URI -""" -SCIM attributes for the External Identity -""" -type ExternalIdentityScimAttributes { """ - The userName of the SCIM identity + The time the action was initiated """ - username: String -} + createdAt: PreciseDateTime! + id: ID! -""" -Autogenerated input type of FollowUser -""" -input FollowUserInput { """ - A unique identifier for the client performing the mutation. + The types of membership the outside collaborator has with the organization. """ - clientMutationId: String + membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] """ - ID of the user to follow. + The corresponding operation type for the action """ - userId: ID! @possibleTypes(concreteTypes: ["User"]) -} + operationType: OperationType -""" -Autogenerated return type of FollowUser -""" -type FollowUserPayload { """ - A unique identifier for the client performing the mutation. + The Organization associated with the Audit Entry. """ - clientMutationId: String + organization: Organization """ - The user that was followed. + The name of the Organization. """ - user: User -} + organizationName: String -""" -The connection type for User. -""" -type FollowerConnection { """ - A list of edges. + The HTTP path for the organization """ - edges: [UserEdge] + organizationResourcePath: URI """ - A list of nodes. + The HTTP URL for the organization """ - nodes: [User] + organizationUrl: URI """ - Information to aid in pagination. + The reason for the outside collaborator being removed from the Organization. """ - pageInfo: PageInfo! + reason: OrgRemoveOutsideCollaboratorAuditEntryReason """ - Identifies the total count of items in the connection. + The user affected by the action """ - totalCount: Int! -} + user: User -""" -The connection type for User. -""" -type FollowingConnection { """ - A list of edges. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - edges: [UserEdge] + userLogin: String """ - A list of nodes. + The HTTP path for the user. """ - nodes: [User] + userResourcePath: URI """ - Information to aid in pagination. + The HTTP URL for the user. """ - pageInfo: PageInfo! + 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 """ - Identifies the total count of items in the connection. + 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. """ - totalCount: Int! + 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 } """ -A funding platform link for a repository. +The reason an outside collaborator was removed from an Organization. """ -type FundingLink { +enum OrgRemoveOutsideCollaboratorAuditEntryReason { """ - The funding platform this link is for. + SAML external identity missing """ - platform: FundingPlatform! + SAML_EXTERNAL_IDENTITY_MISSING """ - The configured URL for this funding link. + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - url: URI! + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE } """ -The possible funding platforms for repository funding links. +Audit log entry for a org.restore_member event. """ -enum FundingPlatform { +type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - Community Bridge funding platform. + The action name """ - COMMUNITY_BRIDGE + action: String! """ - Custom funding platform. + The user who initiated the action """ - CUSTOM + actor: AuditEntryActor """ - GitHub funding platform. + The IP address of the actor """ - GITHUB + actorIp: String """ - IssueHunt funding platform. + A readable representation of the actor's location """ - ISSUEHUNT + actorLocation: ActorLocation """ - Ko-fi funding platform. + The username of the user who initiated the action """ - KO_FI + actorLogin: String """ - Liberapay funding platform. + The HTTP path for the actor. """ - LIBERAPAY + actorResourcePath: URI """ - Open Collective funding platform. + The HTTP URL for the actor. """ - OPEN_COLLECTIVE + actorUrl: URI """ - Otechie funding platform. + The time the action was initiated """ - OTECHIE + createdAt: PreciseDateTime! + id: ID! """ - Patreon funding platform. + The corresponding operation type for the action """ - PATREON + operationType: OperationType """ - Tidelift funding platform. + The Organization associated with the Audit Entry. """ - TIDELIFT -} + organization: Organization -""" -A generic hovercard context with a message and icon -""" -type GenericHovercardContext implements HovercardContext { """ - A string describing this context + The name of the Organization. """ - message: String! + organizationName: String """ - An octicon to accompany this context + The HTTP path for the organization """ - octicon: String! -} + organizationResourcePath: URI -""" -A Gist. -""" -type Gist implements Node & Starrable & UniformResourceLocatable { """ - A list of comments associated with the gist + The HTTP URL for the organization """ - 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! + organizationUrl: URI """ - Identifies the date and time when the object was created. + The number of custom email routings for the restored member. """ - createdAt: DateTime! + restoredCustomEmailRoutingsCount: Int """ - The gist description. + The number of issue assignments for the restored member. """ - description: String + restoredIssueAssignmentsCount: Int """ - The files in this gist. + Restored organization membership objects. """ - files( - """ - The maximum number of files to return. - """ - limit: Int = 10 - - """ - The oid of the files to return - """ - oid: GitObjectID - ): [GistFile] + restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] """ - A list of forks associated with the gist + The number of restored memberships. """ - 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! + restoredMembershipsCount: Int """ - Identifies if the gist is a fork. + The number of repositories of the restored member. """ - isFork: Boolean! + restoredRepositoriesCount: Int """ - Whether the gist is public or not. + The number of starred repositories for the restored member. """ - isPublic: Boolean! + restoredRepositoryStarsCount: Int """ - The gist name. + The number of watched repositories for the restored member. """ - name: String! + restoredRepositoryWatchesCount: Int """ - The gist owner. + The user affected by the action """ - owner: RepositoryOwner + user: User """ - Identifies when the gist was last pushed to. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - pushedAt: DateTime + userLogin: String """ - The HTML path to this resource. + The HTTP path for the user. """ - resourcePath: URI! + userResourcePath: URI """ - A list of users who have starred this starrable. + The HTTP URL for the user. """ - 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 + userUrl: URI +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Types of memberships that can be restored for an Organization member. +""" +union OrgRestoreMemberAuditEntryMembership = + OrgRestoreMemberMembershipOrganizationAuditEntryData + | OrgRestoreMemberMembershipRepositoryAuditEntryData + | OrgRestoreMemberMembershipTeamAuditEntryData - """ - Order for connection - """ - orderBy: StarOrder - ): StargazerConnection! +""" +Metadata for an organization membership for org.restore_member actions +""" +type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { + """ + The Organization associated with the Audit Entry. + """ + organization: Organization """ - Identifies the date and time when the object was last updated. + The name of the Organization. """ - updatedAt: DateTime! + organizationName: String """ - The HTTP URL for this Gist. + The HTTP path for the organization """ - url: URI! + organizationResourcePath: URI """ - Returns a boolean indicating whether the viewing user has starred this starrable. + The HTTP URL for the organization """ - viewerHasStarred: Boolean! + organizationUrl: URI } """ -Represents a comment on an Gist. +Metadata for a repository membership for org.restore_member actions """ -type GistComment implements Comment & Deletable & Minimizable & Node & Updatable & UpdatableComment { +type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { """ - The actor who authored the comment. + The repository associated with the action """ - author: Actor + repository: Repository """ - Author's association with the gist. + The name of the repository """ - authorAssociation: CommentAuthorAssociation! + repositoryName: String """ - Identifies the comment body. + The HTTP path for the repository """ - body: String! + repositoryResourcePath: URI """ - The body rendered to HTML. + 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 """ - bodyHTML: HTML! + team: Team """ - The body rendered to text. + The name of the team """ - bodyText: String! + teamName: String """ - Identifies the date and time when the object was created. + The HTTP path for this team """ - createdAt: DateTime! + teamResourcePath: URI """ - Check if this comment was created via an email reply. + The HTTP URL for this team """ - createdViaEmail: Boolean! + teamUrl: URI +} +""" +Audit log entry for a org.unblock_user +""" +type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - Identifies the primary key from the database. + The action name """ - databaseId: Int + action: String! """ - The actor who edited the comment. + The user who initiated the action """ - editor: Actor + actor: AuditEntryActor """ - The associated gist. + The IP address of the actor """ - gist: Gist! - id: ID! + actorIp: String """ - Check if this comment was edited and includes an edit with the creation data + A readable representation of the actor's location """ - includesCreatedEdit: Boolean! + actorLocation: ActorLocation """ - Returns whether or not a comment has been minimized. + The username of the user who initiated the action """ - isMinimized: Boolean! + actorLogin: String """ - The moment the editor made the last edit + The HTTP path for the actor. """ - lastEditedAt: DateTime + actorResourcePath: URI """ - Returns why the comment was minimized. + The HTTP URL for the actor. """ - minimizedReason: String + actorUrl: URI """ - Identifies when the comment was published at. + The user being unblocked by the organization. """ - publishedAt: DateTime + blockedUser: User """ - Identifies the date and time when the object was last updated. + The username of the blocked user. """ - updatedAt: DateTime! + blockedUserName: String """ - A list of edits to this content. + The HTTP path for the blocked 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 + blockedUserResourcePath: URI """ - Check if the current viewer can delete this object. + The HTTP URL for the blocked user. """ - viewerCanDelete: Boolean! + blockedUserUrl: URI """ - Check if the current viewer can minimize this object. + The time the action was initiated """ - viewerCanMinimize: Boolean! + createdAt: PreciseDateTime! + id: ID! """ - Check if the current viewer can update this object. + The corresponding operation type for the action """ - viewerCanUpdate: Boolean! + operationType: OperationType """ - Reasons why the current viewer can not update this comment. + The Organization associated with the Audit Entry. """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + organization: Organization """ - Did the viewer author this comment. + The name of the Organization. """ - viewerDidAuthor: Boolean! -} + organizationName: String -""" -The connection type for GistComment. -""" -type GistCommentConnection { """ - A list of edges. + The HTTP path for the organization """ - edges: [GistCommentEdge] + organizationResourcePath: URI """ - A list of nodes. + The HTTP URL for the organization """ - nodes: [GistComment] + organizationUrl: 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 GistCommentEdge { """ - 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: GistComment + userUrl: URI } """ -The connection type for Gist. +Audit log entry for a org.update_default_repository_permission """ -type GistConnection { - """ - A list of edges. - """ - edges: [GistEdge] - +type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A list of nodes. + The action name """ - nodes: [Gist] + action: String! """ - Information to aid in pagination. + The user who initiated the action """ - pageInfo: PageInfo! + actor: AuditEntryActor """ - Identifies the total count of items in the connection. + The IP address of the actor """ - totalCount: Int! -} + actorIp: String -""" -An edge in a connection. -""" -type GistEdge { """ - A cursor for use in pagination. + A readable representation of the actor's location """ - cursor: String! + actorLocation: ActorLocation """ - The item at the end of the edge. + The username of the user who initiated the action """ - node: Gist -} + actorLogin: String -""" -A file in a gist. -""" -type GistFile { """ - The file name encoded to remove characters that are invalid in URL paths. + The HTTP path for the actor. """ - encodedName: String + actorResourcePath: URI """ - The gist file encoding. + The HTTP URL for the actor. """ - encoding: String + actorUrl: URI """ - The file extension from the file name. + The time the action was initiated """ - extension: String + createdAt: PreciseDateTime! + id: ID! """ - Indicates if this file is an image. + The corresponding operation type for the action """ - isImage: Boolean! + operationType: OperationType """ - Whether the file's contents were truncated. + The Organization associated with the Audit Entry. """ - isTruncated: Boolean! + organization: Organization """ - The programming language this file is written in. + The name of the Organization. """ - language: Language + organizationName: String """ - The gist file name. + The HTTP path for the organization """ - name: String + organizationResourcePath: URI """ - The gist file size in bytes. + The HTTP URL for the organization """ - size: Int + organizationUrl: URI """ - UTF8 text data or null if the file is binary + The new base repository permission level for the organization. """ - text( - """ - Optionally truncate the returned file to this length. - """ - truncate: Int - ): String -} + permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission -""" -Ordering options for gist connections -""" -input GistOrder { """ - The ordering direction. + The former base repository permission level for the organization. """ - direction: OrderDirection! + permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission """ - The field to order repositories by. + The user affected by the action """ - field: GistOrderField! -} + user: User -""" -Properties by which gist connections can be ordered. -""" -enum GistOrderField { """ - Order gists by creation time + For actions involving two users, the actor is the initiator and the user is the affected user. """ - CREATED_AT + userLogin: String """ - Order gists by push time + The HTTP path for the user. """ - PUSHED_AT + userResourcePath: URI """ - Order gists by update time + The HTTP URL for the user. """ - UPDATED_AT + userUrl: URI } """ -The privacy of a Gist +The default permission a repository can have in an Organization. """ -enum GistPrivacy { +enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { """ - Gists that are public and secret + Can read, clone, push, and add collaborators to repositories. """ - ALL + ADMIN """ - Public + No default permission value. """ - PUBLIC + NONE """ - Secret + Can read and clone repositories. """ - SECRET + READ + + """ + Can read, clone and push to repositories. + """ + WRITE } """ -Represents an actor in a Git commit (ie. an author or committer). +Audit log entry for a org.update_member event. """ -type GitActor { +type OrgUpdateMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A URL pointing to the author's public avatar. + The action name """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + action: String! """ - The timestamp of the Git action (authoring or committing). + The user who initiated the action """ - date: GitTimestamp + actor: AuditEntryActor """ - The email in the Git commit. + The IP address of the actor """ - email: String + actorIp: String """ - The name in the Git commit. + A readable representation of the actor's location """ - name: String + actorLocation: ActorLocation """ - The GitHub user corresponding to the email field. Null if no such user exists. + The username of the user who initiated the action """ - user: User -} + actorLogin: String -""" -Represents information about the GitHub instance. -""" -type GitHubMetadata { """ - Returns a String that's a SHA of `github-services` + The HTTP path for the actor. """ - gitHubServicesSha: GitObjectID! + actorResourcePath: URI """ - IP addresses that users connect to for git operations + The HTTP URL for the actor. """ - gitIpAddresses: [String!] + actorUrl: URI """ - IP addresses that service hooks are sent from + The time the action was initiated """ - hookIpAddresses: [String!] + createdAt: PreciseDateTime! + id: ID! """ - IP addresses that the importer connects from + The corresponding operation type for the action """ - importerIpAddresses: [String!] + operationType: OperationType """ - Whether or not users are verified + The Organization associated with the Audit Entry. """ - isPasswordAuthenticationVerifiable: Boolean! + organization: Organization """ - IP addresses for GitHub Pages' A records + The name of the Organization. """ - pagesIpAddresses: [String!] -} + organizationName: String -""" -Represents a Git object. -""" -interface GitObject { """ - An abbreviated version of the Git object ID + The HTTP path for the organization """ - abbreviatedOid: String! + organizationResourcePath: URI """ - The HTTP path for this Git object + The HTTP URL for the organization """ - commitResourcePath: URI! + organizationUrl: URI """ - The HTTP URL for this Git object + The new member permission level for the organization. """ - commitUrl: URI! - id: ID! + permission: OrgUpdateMemberAuditEntryPermission """ - The Git object ID + The former member permission level for the organization. """ - oid: GitObjectID! + permissionWas: OrgUpdateMemberAuditEntryPermission """ - The Repository the Git object belongs to + The user affected by the action """ - 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 + user: User -""" -Information about a signature (GPG or S/MIME) on a Commit or Tag. -""" -interface GitSignature { """ - Email used to sign this object. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - email: String! + userLogin: String """ - True if the signature is valid and verified by GitHub. + The HTTP path for the user. """ - isValid: Boolean! + userResourcePath: URI """ - Payload for GPG signing object. Raw ODB object without the signature header. + The HTTP URL for the user. """ - payload: String! + userUrl: URI +} +""" +The permissions available to members on an Organization. +""" +enum OrgUpdateMemberAuditEntryPermission { """ - ASCII-armored signature header from object. + Can read, clone, push, and add collaborators to repositories. """ - signature: String! + ADMIN """ - GitHub user corresponding to the email signing this commit. + Can read and clone repositories. """ - signer: User + READ +} +""" +Audit log entry for a org.update_member_repository_creation_permission event. +""" +type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + The action name """ - state: GitSignatureState! + action: String! """ - True if the signature was made with GitHub's signing key. + The user who initiated the action """ - wasSignedByGitHub: Boolean! -} + actor: AuditEntryActor -""" -The state of a Git signature. -""" -enum GitSignatureState { """ - The signing certificate or its chain could not be verified + The IP address of the actor """ - BAD_CERT + actorIp: String """ - Invalid email used for signing + A readable representation of the actor's location """ - BAD_EMAIL + actorLocation: ActorLocation """ - Signing key expired + The username of the user who initiated the action """ - EXPIRED_KEY + actorLogin: String """ - Internal error - the GPG verification service misbehaved + The HTTP path for the actor. """ - GPGVERIFY_ERROR + actorResourcePath: URI """ - Internal error - the GPG verification service is unavailable at the moment + The HTTP URL for the actor. """ - GPGVERIFY_UNAVAILABLE + actorUrl: URI """ - Invalid signature + Can members create repositories in the organization. """ - INVALID + canCreateRepositories: Boolean """ - Malformed signature + The time the action was initiated """ - MALFORMED_SIG + createdAt: PreciseDateTime! + id: ID! """ - The usage flags for the key that signed this don't allow signing + The corresponding operation type for the action """ - NOT_SIGNING_KEY + operationType: OperationType """ - Email used for signing not known to GitHub + The Organization associated with the Audit Entry. """ - NO_USER + organization: Organization """ - Valid siganture, though certificate revocation check failed + The name of the Organization. """ - OCSP_ERROR + organizationName: String """ - Valid signature, pending certificate revocation checking + The HTTP path for the organization """ - OCSP_PENDING + organizationResourcePath: URI """ - One or more certificates in chain has been revoked + The HTTP URL for the organization """ - OCSP_REVOKED + organizationUrl: URI """ - Key used for signing not known to GitHub + The user affected by the action """ - UNKNOWN_KEY + user: User """ - Unknown signature type + For actions involving two users, the actor is the initiator and the user is the affected user. """ - UNKNOWN_SIG_TYPE + userLogin: String """ - Unsigned + The HTTP path for the user. """ - UNSIGNED + userResourcePath: URI """ - Email used for signing unverified on GitHub + The HTTP URL for the user. """ - UNVERIFIED_EMAIL + userUrl: URI """ - Valid signature and verified by GitHub + The permission for visibility level of repositories for this organization. """ - VALID + visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility } """ -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. +The permissions available for repository creation on an Organization. """ -type GpgSignature implements GitSignature { +enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - Email used to sign this object. + All organization members are restricted from creating any repositories. """ - email: String! + ALL """ - True if the signature is valid and verified by GitHub. + All organization members are restricted from creating internal repositories. """ - isValid: Boolean! + INTERNAL """ - Hex-encoded ID of the key that signed this object. + All organization members are allowed to create any repositories. """ - keyId: String + NONE """ - Payload for GPG signing object. Raw ODB object without the signature header. + All organization members are restricted from creating private repositories. """ - payload: String! + PRIVATE """ - ASCII-armored signature header from object. + All organization members are restricted from creating private or internal repositories. """ - signature: String! + PRIVATE_INTERNAL """ - GitHub user corresponding to the email signing this commit. + All organization members are restricted from creating public repositories. """ - signer: User + PUBLIC """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + All organization members are restricted from creating public or internal repositories. """ - state: GitSignatureState! + PUBLIC_INTERNAL """ - True if the signature was made with GitHub's signing key. + All organization members are restricted from creating public or private repositories. """ - wasSignedByGitHub: Boolean! + PUBLIC_PRIVATE } """ -A string containing HTML code. -""" -scalar HTML - -""" -Represents a 'head_ref_deleted' event on a given pull request. +Audit log entry for a org.update_member_repository_invitation_permission event. """ -type HeadRefDeletedEvent implements Node { +type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - Identifies the actor who performed the event. + The action name """ - actor: Actor + action: String! """ - Identifies the date and time when the object was created. + The user who initiated the action """ - createdAt: DateTime! + actor: AuditEntryActor """ - Identifies the Ref associated with the `head_ref_deleted` event. + The IP address of the actor """ - headRef: Ref + actorIp: String """ - Identifies the name of the Ref associated with the `head_ref_deleted` event. + A readable representation of the actor's location """ - headRefName: String! - id: ID! + actorLocation: ActorLocation """ - PullRequest referenced by event. + The username of the user who initiated the action """ - pullRequest: PullRequest! -} + actorLogin: String -""" -Represents a 'head_ref_force_pushed' event on a given pull request. -""" -type HeadRefForcePushedEvent implements Node { """ - Identifies the actor who performed the event. + The HTTP path for the actor. """ - actor: Actor + actorResourcePath: URI """ - Identifies the after commit SHA for the 'head_ref_force_pushed' event. + The HTTP URL for the actor. """ - afterCommit: Commit + actorUrl: URI """ - Identifies the before commit SHA for the 'head_ref_force_pushed' event. + Can outside collaborators be invited to repositories in the organization. """ - beforeCommit: Commit + canInviteOutsideCollaboratorsToRepositories: Boolean """ - Identifies the date and time when the object was created. + The time the action was initiated """ - createdAt: DateTime! + createdAt: PreciseDateTime! id: ID! """ - PullRequest referenced by event. + The corresponding operation type for the action """ - pullRequest: PullRequest! + operationType: OperationType """ - Identifies the fully qualified ref name for the 'head_ref_force_pushed' event. + The Organization associated with the Audit Entry. """ - ref: Ref -} + organization: Organization -""" -Represents a 'head_ref_restored' event on a given pull request. -""" -type HeadRefRestoredEvent implements Node { """ - Identifies the actor who performed the event. + The name of the Organization. """ - actor: Actor + organizationName: String """ - Identifies the date and time when the object was created. + The HTTP path for the organization """ - createdAt: DateTime! - id: ID! + organizationResourcePath: URI """ - PullRequest referenced by event. + The HTTP URL for the organization """ - pullRequest: PullRequest! -} + organizationUrl: URI -""" -Detail needed to display a hovercard for a user -""" -type Hovercard { """ - Each of the contexts for this hovercard + The user affected by the action """ - contexts: [HovercardContext!]! -} + user: User -""" -An individual line of a hovercard -""" -interface HovercardContext { """ - A string describing this context + For actions involving two users, the actor is the initiator and the user is the affected user. """ - message: String! + userLogin: String """ - An octicon to accompany this context + The HTTP path for the user. """ - octicon: String! + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -The possible states in which authentication can be configured with an identity provider. +An account on GitHub, with one or more owners, that has repositories, members and teams. """ -enum IdentityProviderConfigurationState { +type Organization implements Actor & AnnouncementBanner & MemberStatusable & Node & PackageOwner & ProfileOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & Sponsorable & UniformResourceLocatable { """ - Authentication with an identity provider is configured but not enforced. + The text of the announcement """ - CONFIGURED + announcement: String """ - Authentication with an identity provider is configured and enforced. + The expiration date of the announcement, if any """ - ENFORCED + announcementExpiresAt: DateTime """ - Authentication with an identity provider is not configured. + Whether the announcement can be dismissed by the user """ - UNCONFIGURED -} + announcementUserDismissible: Boolean -""" -Autogenerated input type of ImportProject -""" -input ImportProjectInput { """ - The description of Project. + Determine if this repository owner has any items that can be pinned to their profile. """ - body: String + anyPinnableItems( + """ + Filter to only a particular kind of pinnable item. + """ + type: PinnableItemType + ): Boolean! """ - A unique identifier for the client performing the mutation. + Identifies the date and time when the organization was archived. """ - clientMutationId: String + archivedAt: DateTime """ - A list of columns containing issues and pull requests. + Audit log entries of the organization """ - columnImports: [ProjectColumnImport!]! + 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! """ - The name of Project. + A URL pointing to the organization's public avatar. """ - name: String! + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! """ - The name of the Organization or User to create the Project under. + Identifies the date and time when the object was created. """ - ownerName: String! + createdAt: DateTime! """ - Whether the Project is public or not. + Identifies the primary key from the database. """ - public: Boolean = false -} + databaseId: Int -""" -Autogenerated return type of ImportProject -""" -type ImportProjectPayload { """ - A unique identifier for the client performing the mutation. + The organization's public profile description. """ - clientMutationId: String + description: String """ - The new Project! + The organization's public profile description rendered to HTML. """ - project: Project -} + descriptionHTML: String -""" -Autogenerated input type of InviteEnterpriseAdmin -""" -input InviteEnterpriseAdminInput { """ - A unique identifier for the client performing the mutation. + A list of domains owned by the organization. """ - clientMutationId: String + 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 """ - The email of the person to invite as an administrator. + The organization's public email. """ email: String """ - The ID of the enterprise to which you want to invite an administrator. + A list of owners of the organization's enterprise account. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + enterpriseOwners( + """ + 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 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! """ - The login of a user to invite as an administrator. + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). """ - invitee: String + estimatedNextSponsorsPayoutInCents: Int! """ - The role of the administrator. + True if this user/organization has a GitHub Sponsors listing. """ - role: EnterpriseAdministratorRole -} + hasSponsorsListing: Boolean! + id: ID! -""" -Autogenerated return type of InviteEnterpriseAdmin -""" -type InviteEnterpriseAdminPayload { """ - A unique identifier for the client performing the mutation. + The interaction ability settings for this organization. """ - clientMutationId: String + interactionAbility: RepositoryInteractionAbility """ - The created enterprise administrator invitation. + The setting value for whether the organization has an IP allow list enabled. """ - invitation: EnterpriseAdministratorInvitation -} + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! -""" -The possible values for the IP allow list enabled setting. -""" -enum IpAllowListEnabledSettingValue { """ - The setting is disabled for the owner. + The IP addresses that are allowed to access resources owned by the organization. """ - DISABLED + 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 setting is enabled for the owner. + The setting value for whether the organization has IP allow list configuration for installed GitHub Apps enabled. """ - ENABLED -} + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! -""" -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. + Whether the given account is sponsoring this user/organization. """ - allowListValue: String! + isSponsoredBy( + """ + The target account's login. + """ + accountLogin: String! + ): Boolean! """ - Identifies the date and time when the object was created. + True if the viewer is sponsored by this user/organization. """ - createdAt: DateTime! - id: ID! + isSponsoringViewer: Boolean! """ - Whether the entry is currently active. + Whether the organization has verified its profile email and website. """ - isActive: Boolean! + isVerified: Boolean! """ - The name of the IP allow list entry. + Showcases a selection of repositories and gists that the profile owner has + either curated or that have been selected automatically based on popularity. """ - name: String + itemShowcase: ProfileItemShowcase! """ - The owner of the IP allow list entry. + The organization's public profile location. """ - owner: IpAllowListOwner! + location: String """ - Identifies the date and time when the object was last updated. + The organization's login name. """ - updatedAt: DateTime! -} + login: String! -""" -The connection type for IpAllowListEntry. -""" -type IpAllowListEntryConnection { """ - A list of edges. + A list of all mannequins for this organization. """ - edges: [IpAllowListEntryEdge] + 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 + + """ + Filter mannequins by login. + """ + login: String + + """ + Ordering options for mannequins returned from the connection. + """ + orderBy: MannequinOrder = {field: CREATED_AT, direction: ASC} + ): MannequinConnection! """ - A list of nodes. + Get the status messages members of this entity have set that are either public or visible only to the organization. """ - nodes: [IpAllowListEntry] + 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! """ - Information to aid in pagination. + Members can fork private repositories in this organization """ - pageInfo: PageInfo! + membersCanForkPrivateRepositories: Boolean! """ - Identifies the total count of items in the connection. + A list of users who are members of this organization. """ - totalCount: Int! -} + 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! -""" -An edge in a connection. -""" -type IpAllowListEntryEdge { """ - A cursor for use in pagination. + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). """ - cursor: String! + monthlyEstimatedSponsorsIncomeInCents: Int! """ - The item at the end of the edge. + The organization's public profile name. """ - node: IpAllowListEntry -} + name: String -""" -Ordering options for IP allow list entry connections. -""" -input IpAllowListEntryOrder { """ - The ordering direction. + The HTTP path creating a new team """ - direction: OrderDirection! + newTeamResourcePath: URI! """ - The field to order IP allow list entries by. + The HTTP URL creating a new team """ - field: IpAllowListEntryOrderField! -} + newTeamUrl: URI! -""" -Properties by which IP allow list entry connections can be ordered. -""" -enum IpAllowListEntryOrderField { """ - Order IP allow list entries by the allow list value. + Indicates if email notification delivery for this organization is restricted to verified or approved domains. """ - ALLOW_LIST_VALUE + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! """ - Order IP allow list entries by creation time. + The billing email for the organization. """ - CREATED_AT -} - -""" -Types that can own an IP allow list. -""" -union IpAllowListOwner = Enterprise | Organization + organizationBillingEmail: String -""" -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. + A list of packages under the owner. """ - activeLockReason: LockReason + 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 Users assigned to this object. + A list of users who have been invited to join this organization. """ - assignees( + pendingMembers( """ Returns the elements in the list that come after the specified cursor. """ @@ -11187,44 +27744,39 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N ): 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. + A list of repositories and gists this profile owner can pin to their profile. """ - body: String! + pinnableItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The body rendered to HTML. - """ - bodyHTML: HTML! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies the body of the issue rendered to text. - """ - bodyText: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - `true` if the object is closed (definition of closed may depend on type) - """ - closed: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the date and time when the object was closed. - """ - closedAt: DateTime + """ + Filter the types of pinnable items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - A list of comments associated with the Issue. + A list of repositories and gists this profile owner has pinned to their profile """ - comments( + pinnedItems( """ Returns the elements in the list that come after the specified cursor. """ @@ -11244,48 +27796,42 @@ 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! - - """ - Check if this comment was created via an email reply. - """ - createdViaEmail: Boolean! - """ - Identifies the primary key from the database. - """ - databaseId: Int + """ + Filter the types of pinned items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - The actor who edited the comment. + Returns how many more items this profile owner can pin to their profile. """ - editor: Actor + pinnedItemsRemaining: Int! """ - The hovercard information for this issue + Find project by number. """ - hovercard( + project( """ - Whether or not to include notification contexts + The project number to find. """ - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! + number: Int! + ): Project """ - Check if this comment was edited and includes an edit with the creation data + Find a project by number. """ - includesCreatedEdit: Boolean! + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - A list of labels associated with the object. + A list of projects under the owner. """ - labels( + projects( """ Returns the elements in the list that come after the specified cursor. """ @@ -11307,35 +27853,35 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Ordering options for labels returned from the connection. + Ordering options for projects returned from the connection """ - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - ): LabelConnection + orderBy: ProjectOrder - """ - The moment the editor made the last edit - """ - lastEditedAt: DateTime + """ + Query to search projects by, currently only searching by name. + """ + search: String - """ - `true` if the object is locked - """ - locked: Boolean! + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - Identifies the milestone associated with the issue. + The HTTP path listing organization's projects """ - milestone: Milestone + projectsResourcePath: URI! """ - Identifies the issue number. + The HTTP URL listing organization's projects """ - number: Int! + projectsUrl: URI! """ - A list of Users that are participating in the Issue conversation. + A list of projects under the owner. """ - participants( + projectsV2( """ Returns the elements in the list that come after the specified cursor. """ @@ -11355,22 +27901,27 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): UserConnection! + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! """ - List of project cards associated with this issue. + Recent projects that this user has modified in the context of the owner. """ - projectCards( + recentProjects( """ 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. """ @@ -11385,22 +27936,19 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): ProjectCardConnection! + ): ProjectV2Connection! """ - Identifies when the comment was published at. - """ - publishedAt: DateTime - - """ - A list of reactions grouped by content left on the subject. + A list of repositories that the user owns. """ - reactionGroups: [ReactionGroup!] + 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 list of Reactions left on the Issue. - """ - reactions( """ Returns the elements in the list that come after the specified cursor. """ @@ -11412,14 +27960,29 @@ 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. + If non-null, filters repositories according to whether they have issues enabled """ - first: Int + hasIssuesEnabled: Boolean + + """ + If non-null, filters repositories according to whether they are archived and not maintained + """ + isArchived: Boolean + + """ + 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. @@ -11427,30 +27990,42 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Allows specifying the order in which reactions are returned. + Ordering options for repositories returned from the connection """ - orderBy: ReactionOrder - ): ReactionConnection! + orderBy: RepositoryOrder - """ - The repository associated with this node. - """ - repository: Repository! + """ + 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] - """ - The HTTP path for this issue - """ - resourcePath: URI! + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - Identifies the state of the issue. + Find Repository. """ - state: IssueState! + 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 events, comments, commits, etc. associated with the issue. + Discussion comments this user has authored. """ - timeline( + repositoryDiscussionComments( """ Returns the elements in the list that come after the specified cursor. """ @@ -11472,20 +28047,31 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Allows filtering timeline events by a `since` timestamp. + Filter discussion comments to only those that were marked as the answer """ - since: DateTime - ): IssueTimelineConnection! @deprecated(reason: "`timeline` will be removed Use Issue.timelineItems instead. Removal on 2020-10-01 UTC.") + onlyAnswers: Boolean = false + + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! """ - A list of events, comments, commits, etc. associated with the issue. + Discussions this user has started. """ - timelineItems( + repositoryDiscussions( """ Returns the elements in the list that come after the specified cursor. """ after: String + """ + 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. """ @@ -11497,9 +28083,44 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N first: Int """ - Filter timeline items by type. + Returns the last _n_ elements from the list. """ - itemTypes: [IssueTimelineItemsItemType!] + 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 + + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! + + """ + A list of all repository migrations for this organization. + """ + repositoryMigrations( + """ + 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. @@ -11507,35 +28128,46 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Filter timeline items by a `since` timestamp. + Ordering options for repository migrations returned. """ - since: DateTime + orderBy: RepositoryMigrationOrder = {field: CREATED_AT, direction: ASC} """ - Skips the first _n_ elements in the list. + Filter repository migrations by repository name. """ - skip: Int - ): IssueTimelineItemsConnection! + repositoryName: String + + """ + Filter repository migrations by state. + """ + state: MigrationState + ): RepositoryMigrationConnection! """ - Identifies the issue title. + When true the organization requires all members, billing managers, and outside + collaborators to enable two-factor authentication. """ - title: String! + requiresTwoFactorAuthentication: Boolean """ - Identifies the date and time when the object was last updated. + The HTTP path for this organization. """ - updatedAt: DateTime! + resourcePath: URI! """ - The HTTP URL for this issue + Returns a single ruleset from the current organization by ID. """ - url: URI! + ruleset( + """ + The ID of the ruleset to be returned. + """ + databaseId: Int! + ): RepositoryRuleset """ - A list of edits to this content. + A list of rulesets for this organization. """ - userContentEdits( + rulesets( """ Returns the elements in the list that come after the specified cursor. """ @@ -11551,138 +28183,263 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N """ first: Int + """ + Return rulesets configured at higher levels that apply to this organization + """ + includeParents: Boolean = true + """ Returns the last _n_ elements from the list. """ last: Int - ): UserContentEditConnection + ): RepositoryRulesetConnection """ - Can user react to this subject + The Organization's SAML identity provider. Visible to (1) organization owners, + (2) organization owners' personal access tokens (classic) with read:org or + admin:org scope, (3) GitHub App with an installation token with read or write + access to members. """ - viewerCanReact: Boolean! + samlIdentityProvider: OrganizationIdentityProvider """ - Check if the viewer is able to change their subscription status for the repository. + List of users and organizations this entity is sponsoring. """ - viewerCanSubscribe: Boolean! + sponsoring( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Check if the current viewer can update this object. - """ - viewerCanUpdate: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Reasons why the current viewer can not update this comment. - """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Did the viewer author this comment. - """ - viewerDidAuthor: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. - """ - viewerSubscription: SubscriptionState -} + """ + Ordering options for the users and organizations returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! -""" -Represents a comment on an Issue. -""" -type IssueComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The actor who authored the comment. + List of sponsors for this user or organization. """ - author: Actor + sponsors( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Author's association with the subject of the comment. - """ - authorAssociation: CommentAuthorAssociation! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The body as Markdown. - """ - body: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The body rendered to HTML. - """ - bodyHTML: HTML! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The body rendered to text. - """ - bodyText: String! + """ + Ordering options for sponsors returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + 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! """ - Check if this comment was created via an email reply. + Events involving this sponsorable, such as new sponsorships. """ - createdViaEmail: Boolean! + sponsorsActivities( + """ + Filter activities to only the specified actions. + """ + actions: [SponsorsActivityAction!] = [] - """ - Identifies the primary key from the database. - """ - databaseId: Int + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The actor who edited the comment. - """ - editor: Actor - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + 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 whether or not a comment has been minimized. - """ - isMinimized: Boolean! + """ + 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 + + """ + Whether or not to include private activities in the result set. Defaults to including public and private activities. + """ + includePrivate: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for activity returned from the connection. + """ + 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! """ - Identifies the issue associated with the comment. + The GitHub Sponsors listing for this user or organization. """ - issue: Issue! + sponsorsListing: SponsorsListing """ - The moment the editor made the last edit + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - lastEditedAt: DateTime + 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 """ - Returns why the comment was minimized. + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - minimizedReason: String + 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 """ - Identifies when the comment was published at. + List of sponsorship updates sent from this sponsorable to sponsors. """ - publishedAt: DateTime + sponsorshipNewsletters( + """ + 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 sponsorship updates returned from the connection. + """ + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - Returns the pull request associated with the comment, if this comment was made on a - pull request. + The sponsorships where this user or organization is the maintainer receiving the funds. """ - pullRequest: PullRequest + 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. + """ + 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 - """ - A list of reactions grouped by content left on the subject. - """ - reactionGroups: [ReactionGroup!] + """ + 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! """ - A list of Reactions left on the Issue. + The sponsorships where this user or organization is the funder. """ - reactions( + 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. """ @@ -11693,11 +28450,6 @@ type IssueComment implements Comment & Deletable & Minimizable & Node & Reactabl """ before: String - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - """ Returns the first _n_ elements from the list. """ @@ -11709,35 +28461,33 @@ type IssueComment implements Comment & Deletable & Minimizable & Node & Reactabl last: Int """ - Allows specifying the order in which reactions are returned. + 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. """ - orderBy: ReactionOrder - ): ReactionConnection! - - """ - The repository associated with this node. - """ - repository: Repository! - - """ - The HTTP path for this issue comment - """ - resourcePath: URI! + maintainerLogins: [String!] - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + """ + 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 comment + 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. """ @@ -11757,275 +28507,229 @@ type IssueComment implements Comment & Deletable & Minimizable & Node & Reactabl 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 -} - -""" -The connection type for Issue. -""" -type IssueConnection { - """ - A list of edges. - """ - edges: [IssueEdge] - """ - A list of nodes. - """ - nodes: [Issue] + """ + If true, filters teams that are mapped to an LDAP Group (Enterprise only) + """ + ldapMapped: Boolean - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + If non-null, filters teams according to notification setting + """ + notificationSetting: TeamNotificationSetting - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} + """ + Ordering options for teams returned from the connection + """ + orderBy: TeamOrder -""" -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. + If non-null, filters teams according to privacy """ - after: String + privacy: TeamPrivacy """ - Returns the elements in the list that come before the specified cursor. + If non-null, filters teams with query on team name and team slug """ - before: String + query: String """ - Returns the first _n_ elements from the list. + If non-null, filters teams according to whether the viewer is an admin or member on team """ - first: Int + role: TeamRole """ - Returns the last _n_ elements from the list. + If true, restrict to only root teams """ - last: Int + rootTeamsOnly: Boolean = false """ - Ordering options for contributions returned from the connection. + User logins to filter by """ - orderBy: ContributionOrder = {direction: DESC} - ): CreatedIssueContributionConnection! + userLogins: [String!] + ): TeamConnection! """ - The repository in which the issues were opened. + The HTTP path listing organization's teams """ - repository: Repository! -} + teamsResourcePath: URI! -""" -An edge in a connection. -""" -type IssueEdge { """ - A cursor for use in pagination. + The HTTP URL listing organization's teams """ - cursor: String! + teamsUrl: URI! """ - The item at the end of the edge. + 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. """ - node: Issue -} + totalSponsorshipAmountAsSponsorInCents( + """ + Filter payments to those that occurred on or after this time. + """ + since: DateTime -""" -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 + """ + 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 """ - List issues created by given name. + The organization's Twitter username. """ - createdBy: String + twitterUsername: String """ - List issues where the list of label names exist on the issue. + Identifies the date and time when the object was last updated. """ - labels: [String!] + updatedAt: DateTime! """ - List issues where the given name is mentioned in the issue. + The HTTP URL for this organization. """ - mentioned: String + url: URI! """ - 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. + Organization is adminable by the viewer. """ - milestone: String + viewerCanAdminister: Boolean! """ - List issues that have been updated at or after the given date. + Can the viewer pin repositories and gists to the profile? """ - since: DateTime + viewerCanChangePinnedItems: Boolean! """ - List issues filtered by the list of states given. + Can the current viewer create new projects on this owner. """ - states: [IssueState!] + viewerCanCreateProjects: Boolean! """ - List issues subscribed to by viewer. + Viewer can create repositories on this organization """ - viewerSubscribed: Boolean = false -} - -""" -Used for return value of Repository.issueOrPullRequest. -""" -union IssueOrPullRequest = Issue | PullRequest + viewerCanCreateRepositories: Boolean! -""" -Ways in which lists of issues can be ordered upon return. -""" -input IssueOrder { """ - The direction in which to order issues by the specified field. + Viewer can create teams on this organization. """ - direction: OrderDirection! + viewerCanCreateTeams: Boolean! """ - The field in which to order issues by. + Whether or not the viewer is able to sponsor this user/organization. """ - field: IssueOrderField! -} + viewerCanSponsor: Boolean! -""" -Properties by which issue connections can be ordered. -""" -enum IssueOrderField { """ - Order issues by comment count + Viewer is an active member of this organization. """ - COMMENTS + viewerIsAMember: Boolean! """ - Order issues by creation time + Whether or not this Organization is followed by the viewer. """ - CREATED_AT + viewerIsFollowing: Boolean! """ - Order issues by update time + True if the viewer is sponsoring this user/organization. """ - UPDATED_AT -} + viewerIsSponsoring: Boolean! -""" -The possible states of an issue. -""" -enum IssueState { """ - An issue that has been closed + Whether contributors are required to sign off on web-based commits for repositories in this organization. """ - CLOSED + webCommitSignoffRequired: Boolean! """ - An issue that is still open + The organization's public profile URL. """ - OPEN + websiteUrl: URI } """ -The connection type for IssueTimelineItem. +An audit entry in an organization audit log. """ -type IssueTimelineConnection { +union OrganizationAuditEntry = + MembersCanDeleteReposClearAuditEntry + | MembersCanDeleteReposDisableAuditEntry + | MembersCanDeleteReposEnableAuditEntry + | OauthApplicationCreateAuditEntry + | OrgAddBillingManagerAuditEntry + | OrgAddMemberAuditEntry + | OrgBlockUserAuditEntry + | OrgConfigDisableCollaboratorsOnlyAuditEntry + | OrgConfigEnableCollaboratorsOnlyAuditEntry + | OrgCreateAuditEntry + | OrgDisableOauthAppRestrictionsAuditEntry + | OrgDisableSamlAuditEntry + | OrgDisableTwoFactorRequirementAuditEntry + | OrgEnableOauthAppRestrictionsAuditEntry + | OrgEnableSamlAuditEntry + | OrgEnableTwoFactorRequirementAuditEntry + | OrgInviteMemberAuditEntry + | OrgInviteToBusinessAuditEntry + | OrgOauthAppAccessApprovedAuditEntry + | OrgOauthAppAccessBlockedAuditEntry + | OrgOauthAppAccessDeniedAuditEntry + | OrgOauthAppAccessRequestedAuditEntry + | OrgOauthAppAccessUnblockedAuditEntry + | 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: [IssueTimelineItemEdge] + edges: [OrganizationAuditEntryEdge] """ A list of nodes. """ - nodes: [IssueTimelineItem] + nodes: [OrganizationAuditEntry] """ Information to aid in pagination. @@ -12039,74 +28743,34 @@ type IssueTimelineConnection { } """ -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 | 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. +Metadata for an audit entry with action org.* """ -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] - +interface OrganizationAuditEntryData { """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + The Organization associated with the Audit Entry. """ - pageCount: Int! + 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 """ - Identifies the date and time when the timeline was last updated. + The HTTP URL for the organization """ - updatedAt: DateTime! + organizationUrl: URI } """ An edge in a connection. """ -type IssueTimelineItemsEdge { +type OrganizationAuditEntryEdge { """ A cursor for use in pagination. """ @@ -12115,225 +28779,110 @@ type IssueTimelineItemsEdge { """ The item at the end of the edge. """ - node: IssueTimelineItems + node: OrganizationAuditEntry } """ -The possible item types found in a timeline. +A list of organizations managed by an enterprise. """ -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 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 - +type OrganizationConnection { """ - Represents an 'unlabeled' event on a given issue or pull request. + A list of edges. """ - UNLABELED_EVENT + edges: [OrganizationEdge] """ - Represents an 'unlocked' event on a given issue or pull request. + A list of nodes. """ - UNLOCKED_EVENT + nodes: [Organization] """ - Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + Information to aid in pagination. """ - UNMARKED_AS_DUPLICATE_EVENT + pageInfo: PageInfo! """ - Represents an 'unpinned' event on a given issue or pull request. + Identifies the total count of items in the connection. """ - UNPINNED_EVENT + totalCount: Int! +} +""" +An edge in a connection. +""" +type OrganizationEdge { """ - Represents an 'unsubscribed' event on a given `Subscribable`. + A cursor for use in pagination. """ - UNSUBSCRIBED_EVENT + cursor: String! """ - Represents a 'user_blocked' event on a given user. + The item at the end of the edge. """ - USER_BLOCKED_EVENT + node: Organization } """ -Represents a user signing up for a GitHub account. +The connection type for User. """ -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. +type OrganizationEnterpriseOwnerConnection { """ - isRestricted: Boolean! - - """ - When this contribution was made. + A list of edges. """ - occurredAt: DateTime! + edges: [OrganizationEnterpriseOwnerEdge] """ - The HTTP path for this contribution. + A list of nodes. """ - resourcePath: URI! + nodes: [User] """ - The HTTP URL for this contribution. + Information to aid in pagination. """ - url: URI! + pageInfo: PageInfo! """ - The user who made this contribution. + Identifies the total count of items in the connection. """ - user: User! + totalCount: Int! } """ -A label for categorizing Issues or Milestones with a given Repository. +An enterprise owner in the context of an organization that is part of the enterprise. """ -type Label implements Node { +type OrganizationEnterpriseOwnerEdge { """ - Identifies the label color. + A cursor for use in pagination. """ - color: String! + cursor: String! """ - Identifies the date and time when the label was created. + The item at the end of the edge. """ - createdAt: DateTime + node: User """ - A brief description of this label. + The role of the owner with respect to the organization. """ - description: String - id: ID! + organizationRole: RoleInOrganization! +} +""" +An Identity Provider configured to provision SAML and SCIM identities for +Organizations. Visible to (1) organization owners, (2) organization owners' +personal access tokens (classic) with read:org or admin:org scope, (3) GitHub +App with an installation token with read or write access to members. +""" +type OrganizationIdentityProvider implements Node { """ - Indicates whether or not this is a default label. + The digest algorithm used to sign SAML requests for the Identity Provider. """ - isDefault: Boolean! + digestMethod: URI """ - A list of issues associated with this label. + External Identities provisioned by this Identity Provider """ - issues( + externalIdentities( """ Returns the elements in the list that come after the specified cursor. """ @@ -12344,126 +28893,118 @@ 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. + Returns the last _n_ elements from the list. """ - labels: [String!] + last: Int """ - Returns the last _n_ elements from the list. + Filter to external identities with the users login """ - last: Int + login: String """ - Ordering options for issues returned from the connection. + Filter to external identities with valid org membership only """ - orderBy: IssueOrder + membersOnly: Boolean """ - A list of states to filter the issues by. + Filter to external identities with the users userName/NameID attribute """ - states: [IssueState!] - ): IssueConnection! + userName: String + ): ExternalIdentityConnection! + id: ID! """ - Identifies the label name. + The x509 certificate used by the Identity Provider to sign assertions and responses. """ - name: String! + idpCertificate: X509Certificate """ - A list of pull requests associated with this label. + The Issuer Entity ID for the SAML Identity Provider """ - 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 + issuer: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Organization this Identity Provider belongs to + """ + organization: Organization - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The signature algorithm used to sign SAML requests for the Identity Provider. + """ + signatureMethod: URI - """ - The head ref name to filter the pull requests by. - """ - headRefName: String + """ + The URL endpoint for the Identity Provider's SAML SSO. + """ + ssoUrl: URI +} - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] +""" +An Invitation for a user to an organization. +""" +type OrganizationInvitation implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The email address of the user invited to the organization. + """ + email: String + id: ID! - """ - Ordering options for pull requests returned from the connection. - """ - orderBy: IssueOrder + """ + The source of the invitation. + """ + invitationSource: OrganizationInvitationSource! - """ - A list of states to filter the pull requests by. - """ - states: [PullRequestState!] - ): PullRequestConnection! + """ + The type of invitation that was sent (e.g. email, user). + """ + invitationType: OrganizationInvitationType! """ - The repository associated with this label. + The user who was invited to the organization. """ - repository: Repository! + invitee: User """ - The HTTP path for this label. + The user who created the invitation. """ - resourcePath: URI! + inviter: User! """ - Identifies the date and time when the label was last updated. + The organization the invite is for """ - updatedAt: DateTime + organization: Organization! """ - The HTTP URL for this label. + The user's pending role in the organization (e.g. member, owner). """ - url: URI! + role: OrganizationInvitationRole! } """ -The connection type for Label. +The connection type for OrganizationInvitation. """ -type LabelConnection { +type OrganizationInvitationConnection { """ A list of edges. """ - edges: [LabelEdge] + edges: [OrganizationInvitationEdge] """ A list of nodes. """ - nodes: [Label] + nodes: [OrganizationInvitation] """ Information to aid in pagination. @@ -12479,7 +29020,7 @@ type LabelConnection { """ An edge in a connection. """ -type LabelEdge { +type OrganizationInvitationEdge { """ A cursor for use in pagination. """ @@ -12488,129 +29029,82 @@ type LabelEdge { """ The item at the end of the edge. """ - node: Label + node: OrganizationInvitation } """ -Ways in which lists of labels can be ordered upon return. +The possible organization invitation roles. """ -input LabelOrder { - """ - The direction in which to order labels by the specified field. - """ - direction: OrderDirection! - +enum OrganizationInvitationRole { """ - The field in which to order labels by. + The user is invited to be an admin of the organization. """ - field: LabelOrderField! -} + ADMIN -""" -Properties by which label connections can be ordered. -""" -enum LabelOrderField { """ - Order labels by creation time + The user is invited to be a billing manager of the organization. """ - CREATED_AT + BILLING_MANAGER """ - Order labels by name + The user is invited to be a direct member of the organization. """ - NAME -} + DIRECT_MEMBER -""" -An object that can have labels assigned to it. -""" -interface Labelable { """ - A list of labels associated with the object. + The user's previous role will be reinstated. """ - 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 + REINSTATE } """ -Represents a 'labeled' event on a given issue or pull request. +The possible organization invitation sources. """ -type LabeledEvent implements Node { - """ - Identifies the actor who performed the event. - """ - actor: Actor - +enum OrganizationInvitationSource { """ - Identifies the date and time when the object was created. + The invitation was created from the web interface or from API """ - createdAt: DateTime! - id: ID! + MEMBER """ - Identifies the label associated with the 'labeled' event. + The invitation was created from SCIM """ - label: Label! + SCIM """ - Identifies the `Labelable` associated with the event. + The invitation was sent before this feature was added """ - labelable: Labelable! + UNKNOWN } """ -Represents a given language found in repositories. +The possible organization invitation types. """ -type Language implements Node { +enum OrganizationInvitationType { """ - The color defined for the current language. + The invitation was to an email address. """ - color: String - id: ID! + EMAIL """ - The name of the current language. + The invitation was to an existing user. """ - name: String! + USER } """ -A list of languages associated with the parent. +The connection type for User. """ -type LanguageConnection { +type OrganizationMemberConnection { """ A list of edges. """ - edges: [LanguageEdge] + edges: [OrganizationMemberEdge] """ A list of nodes. """ - nodes: [Language] + nodes: [User] """ Information to aid in pagination. @@ -12621,332 +29115,466 @@ type LanguageConnection { 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. +Represents a user within an organization. """ -type LanguageEdge { +type OrganizationMemberEdge { + """ + A cursor for use in pagination. + """ cursor: String! - node: Language! """ - The number of bytes of code written in the language. + Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. """ - size: Int! + hasTwoFactorEnabled: Boolean + + """ + The item at the end of the edge. + """ + node: User + + """ + The role this user has in the organization. + """ + role: OrganizationMemberRole } """ -Ordering options for language connections. +The possible roles within an organization for its members. """ -input LanguageOrder { +enum OrganizationMemberRole { """ - The ordering direction. + The user is an administrator of the organization. """ - direction: OrderDirection! + ADMIN """ - The field to order languages by. + The user is a member of the organization. """ - field: LanguageOrderField! + MEMBER } """ -Properties by which language connections can be ordered. +The possible values for the members can create repositories setting on an organization. """ -enum LanguageOrderField { +enum OrganizationMembersCanCreateRepositoriesSettingValue { """ - Order languages by the size of all files containing the language + Members will be able to create public and private repositories. """ - SIZE + ALL + + """ + Members will not be able to create public or private repositories. + """ + DISABLED + + """ + Members will be able to create only internal repositories. + """ + INTERNAL + + """ + Members will be able to create only private repositories. + """ + PRIVATE } """ -A repository's open source license +A GitHub Enterprise Importer (GEI) organization migration. """ -type License implements Node { +type OrganizationMigration implements Node { """ - The full text of the license + Identifies the date and time when the object was created. """ - body: String! + createdAt: DateTime! """ - The conditions set by the license + Identifies the primary key from the database. """ - conditions: [LicenseRule]! + databaseId: String """ - A human-readable description of the license + The reason the organization migration failed. """ - description: String + failureReason: String + id: ID! """ - Whether the license should be featured + The remaining amount of repos to be migrated. """ - featured: Boolean! + remainingRepositoriesCount: Int """ - Whether the license should be displayed in license pickers + The name of the source organization to be migrated. """ - hidden: Boolean! - id: ID! + sourceOrgName: String! """ - Instructions on how to implement the license + The URL of the source organization to migrate. """ - implementation: String + sourceOrgUrl: URI! """ - The lowercased SPDX ID of the license + The migration state. """ - key: String! + state: OrganizationMigrationState! """ - The limitations set by the license + The name of the target organization. """ - limitations: [LicenseRule]! + targetOrgName: String! """ - The license full name specified by + The total amount of repositories to be migrated. """ - name: String! + totalRepositoriesCount: Int +} +""" +The Octoshift Organization migration state. +""" +enum OrganizationMigrationState { """ - Customary short name if applicable (e.g, GPLv3) + The Octoshift migration has failed. """ - nickname: String + FAILED """ - The permissions set by the license + The Octoshift migration has invalid credentials. """ - permissions: [LicenseRule]! + FAILED_VALIDATION """ - Whether the license is a pseudo-license placeholder (e.g., other, no-license) + The Octoshift migration is in progress. """ - pseudoLicense: Boolean! + IN_PROGRESS """ - Short identifier specified by + The Octoshift migration has not started. """ - spdxId: String + NOT_STARTED """ - URL to the license on + The Octoshift migration needs to have its credentials validated. """ - url: URI -} + PENDING_VALIDATION -""" -Describes a License's conditions, permissions, and limitations -""" -type LicenseRule { """ - A description of the rule + The Octoshift migration is performing post repository migrations. """ - description: String! + POST_REPO_MIGRATION """ - The machine-readable rule key + The Octoshift migration is performing pre repository migrations. """ - key: String! + PRE_REPO_MIGRATION """ - The human-readable rule label + The Octoshift migration has been queued. """ - label: String! + QUEUED + + """ + The Octoshift org migration is performing repository migrations. + """ + REPO_MIGRATION + + """ + The Octoshift migration has succeeded. + """ + SUCCEEDED } """ -Autogenerated input type of LinkRepositoryToProject +Used for argument of CreateProjectV2 mutation. """ -input LinkRepositoryToProjectInput { +union OrganizationOrUser = Organization | User + +""" +Ordering options for organization connections. +""" +input OrganizationOrder { """ - A unique identifier for the client performing the mutation. + The ordering direction. """ - clientMutationId: String + direction: OrderDirection! """ - The ID of the Project to link to a Repository + The field to order organizations by. """ - projectId: ID! @possibleTypes(concreteTypes: ["Project"]) + field: OrganizationOrderField! +} + +""" +Properties by which organization connections can be ordered. +""" +enum OrganizationOrderField { + """ + Order organizations by creation time + """ + CREATED_AT """ - The ID of the Repository to link to a Project. + Order organizations by login """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + LOGIN } """ -Autogenerated return type of LinkRepositoryToProject +An organization teams hovercard context """ -type LinkRepositoryToProjectPayload { +type OrganizationTeamsHovercardContext implements HovercardContext { """ - A unique identifier for the client performing the mutation. + A string describing this context """ - clientMutationId: String + message: String! """ - The linked Project. + An octicon to accompany this context """ - project: Project + octicon: String! """ - The linked Repository. + Teams in this organization the user is a member of that are relevant """ - repository: Repository + relevantTeams( + """ + 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 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! } """ -Autogenerated input type of LockLockable +An organization list hovercard context """ -input LockLockableInput { +type OrganizationsHovercardContext implements HovercardContext { """ - A unique identifier for the client performing the mutation. + A string describing this context """ - clientMutationId: String + message: String! + + """ + An octicon to accompany this context + """ + octicon: String! + + """ + Organizations this user is a member of that are relevant + """ + relevantOrganizations( + """ + 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 - """ - A reason for why the issue or pull request will be locked. - """ - lockReason: LockReason + """ + Ordering options for the User's organizations. + """ + orderBy: OrganizationOrder = null + ): OrganizationConnection! """ - ID of the issue or pull request to be locked. + The total number of organizations this user is in """ - lockableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Lockable") + totalOrganizationCount: Int! } """ -Autogenerated return type of LockLockable +Information for an uploaded package. """ -type LockLockablePayload { +type Package implements Node { + id: ID! + """ - Identifies the actor who performed the event. + Find the latest version for the package. """ - actor: Actor + latestVersion: PackageVersion """ - A unique identifier for the client performing the mutation. + Identifies the name of the package. """ - clientMutationId: String + name: String! """ - The item that was locked. + Identifies the type of the package. """ - lockedRecord: Lockable -} + packageType: PackageType! -""" -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. + The repository this package belongs to. """ - OFF_TOPIC + repository: Repository """ - The issue or pull request was locked because the conversation was resolved. + Statistics about package activity. """ - RESOLVED + statistics: PackageStatistics """ - The issue or pull request was locked because the conversation was spam. + Find package version by version string. """ - SPAM + version( + """ + The package version. + """ + version: String! + ): PackageVersion """ - The issue or pull request was locked because the conversation was too heated. + list of versions for this package """ - TOO_HEATED + versions( + """ + 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 packages. + """ + orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} + ): PackageVersionConnection! } """ -An object that can be locked. +The connection type for Package. """ -interface Lockable { +type PackageConnection { """ - Reason that the conversation was locked. + A list of edges. """ - activeLockReason: LockReason + edges: [PackageEdge] """ - `true` if the object is locked + A list of nodes. """ - locked: Boolean! -} + nodes: [Package] -""" -Represents a 'locked' event on a given issue or pull request. -""" -type LockedEvent implements Node { """ - Identifies the actor who performed the event. + Information to aid in pagination. """ - actor: Actor + pageInfo: PageInfo! """ - Identifies the date and time when the object was created. + Identifies the total count of items in the connection. """ - createdAt: DateTime! - id: ID! + totalCount: Int! +} +""" +An edge in a connection. +""" +type PackageEdge { """ - Reason that the conversation was locked (optional). + A cursor for use in pagination. """ - lockReason: LockReason + cursor: String! """ - Object that was locked. + The item at the end of the edge. """ - lockable: Lockable! + node: Package } """ -A placeholder user for attribution of imported data on GitHub. +A file in a package version. """ -type Mannequin implements Actor & Node & UniformResourceLocatable { +type PackageFile implements Node { + id: ID! + """ - A URL pointing to the GitHub App's public avatar. + MD5 hash of the file. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + md5: String """ - Identifies the date and time when the object was created. + Name of the file. """ - createdAt: DateTime! + name: String! """ - Identifies the primary key from the database. + The package version this file belongs to. """ - databaseId: Int + packageVersion: PackageVersion """ - The mannequin's email on the source instance. + SHA1 hash of the file. """ - email: String - id: ID! + sha1: String """ - The username of the actor. + SHA256 hash of the file. """ - login: String! + sha256: String """ - The HTML path to this resource. + Size of the file in bytes. """ - resourcePath: URI! + size: Int """ Identifies the date and time when the object was last updated. @@ -12954,404 +29582,519 @@ type Mannequin implements Actor & Node & UniformResourceLocatable { updatedAt: DateTime! """ - The URL to this resource. + URL to download the asset. """ - url: URI! + url: URI } """ -Autogenerated input type of MarkPullRequestReadyForReview +The connection type for PackageFile. """ -input MarkPullRequestReadyForReviewInput { +type PackageFileConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [PackageFileEdge] """ - ID of the pull request to be marked as ready for review. + A list of nodes. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + nodes: [PackageFile] -""" -Autogenerated return type of MarkPullRequestReadyForReview -""" -type MarkPullRequestReadyForReviewPayload { """ - A unique identifier for the client performing the mutation. + Information to aid in pagination. """ - clientMutationId: String + pageInfo: PageInfo! """ - The pull request that is ready for review. + Identifies the total count of items in the connection. """ - pullRequest: PullRequest + totalCount: Int! } """ -Represents a 'marked_as_duplicate' event on a given issue or pull request. +An edge in a connection. """ -type MarkedAsDuplicateEvent implements Node { +type PackageFileEdge { """ - Identifies the actor who performed the event. + A cursor for use in pagination. """ - actor: Actor + cursor: String! """ - Identifies the date and time when the object was created. + The item at the end of the edge. """ - createdAt: DateTime! - id: ID! + node: PackageFile } """ -A public description of a Marketplace category. +Ways in which lists of package files can be ordered upon return. """ -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! - +input PackageFileOrder { """ - The category's name. + The direction in which to order package files by the specified field. """ - name: String! + direction: OrderDirection """ - How many Marketplace listings have this as their primary category. + The field in which to order package files by. """ - primaryListingCount: Int! + field: PackageFileOrderField +} +""" +Properties by which package file connections can be ordered. +""" +enum PackageFileOrderField { """ - The HTTP path for this Marketplace category. + Order package files by creation time """ - resourcePath: URI! + CREATED_AT +} +""" +Ways in which lists of packages can be ordered upon return. +""" +input PackageOrder { """ - How many Marketplace listings have this as their secondary category. + The direction in which to order packages by the specified field. """ - secondaryListingCount: Int! + direction: OrderDirection """ - The short name of the category used in its URL. + The field in which to order packages by. """ - slug: String! + field: PackageOrderField +} +""" +Properties by which package connections can be ordered. +""" +enum PackageOrderField { """ - The HTTP URL for this Marketplace category. + Order packages by creation time """ - url: URI! + CREATED_AT } """ -A listing in the GitHub integration marketplace. +Represents an owner of a package. """ -type MarketplaceListing implements Node { - """ - The GitHub App this listing represents. - """ - app: App +interface PackageOwner { + id: ID! """ - URL to the listing owner's company site. + A list of packages under the owner. """ - companyUrl: URI + packages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for configuring access to the listing's integration or OAuth app - """ - configurationResourcePath: URI! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP URL for configuring access to the listing's integration or OAuth app - """ - configurationUrl: URI! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - URL to the listing's documentation. - """ - documentationUrl: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The listing's detailed description. - """ - extendedDescription: String + """ + Find packages by their names. + """ + names: [String] - """ - The listing's detailed description rendered to HTML. - """ - extendedDescriptionHTML: HTML! + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} - """ - The listing's introductory description. - """ - fullDescription: String! + """ + Filter registry package by type. + """ + packageType: PackageType + + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! +} +""" +Represents a object that contains package activity statistics such as downloads. +""" +type PackageStatistics { """ - The listing's introductory description rendered to HTML. + Number of times the package was downloaded since it was created. """ - fullDescriptionHTML: HTML! + downloadsTotalCount: Int! +} + +""" +A version tag contains the mapping between a tag name and a version. +""" +type PackageTag implements Node { + id: ID! """ - Does this listing have any plans with a free trial? + Identifies the tag name of the version. """ - hasPublishedFreeTrialPlans: Boolean! + name: String! """ - Does this listing have a terms of service link? + Version that the tag is associated with. """ - hasTermsOfService: Boolean! + version: PackageVersion +} +""" +The possible types of a package. +""" +enum PackageType { """ - A technical description of how this app works with GitHub. + A debian package. """ - howItWorks: String + DEBIAN """ - The listing's technical description rendered to HTML. + A docker image. """ - howItWorksHTML: HTML! - id: ID! + 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." + ) """ - URL to install the product to the viewer's account or organization. + A maven package. """ - installationUrl: URI + 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." + ) """ - Whether this listing's app has been installed for the current viewer + An npm package. """ - installedForViewer: Boolean! + 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." + ) """ - Whether this listing has been removed from the Marketplace. + A nuget package. """ - isArchived: Boolean! + 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." + ) """ - Whether this listing is still an editable draft that has not been submitted - for review and is not publicly visible in the Marketplace. + A python package. """ - isDraft: Boolean! + PYPI """ - Whether the product this listing represents is available as part of a paid plan. + A rubygems package. """ - isPaid: Boolean! + 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." + ) +} +""" +Information about a specific package version. +""" +type PackageVersion implements Node { """ - Whether this listing has been approved for display in the Marketplace. + List of files associated with this package version """ - isPublic: Boolean! + 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! """ - Whether this listing has been rejected by GitHub for display in the Marketplace. + The package associated with this version. """ - isRejected: Boolean! + package: Package """ - Whether this listing has been approved for unverified display in the Marketplace. + The platform this version was built for. """ - isUnverified: Boolean! + platform: String """ - Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace. + Whether or not this version is a pre-release. """ - isUnverifiedPending: Boolean! + preRelease: Boolean! """ - Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + The README of this package version. """ - isVerificationPendingFromDraft: Boolean! + readme: String """ - Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + The release associated with this package version. """ - isVerificationPendingFromUnverified: Boolean! + release: Release """ - Whether this listing has been approved for verified display in the Marketplace. + Statistics about package activity. """ - isVerified: Boolean! + statistics: PackageVersionStatistics """ - The hex color code, without the leading '#', for the logo background. + The package version summary. """ - logoBackgroundColor: String! + summary: String """ - URL for the listing's logo image. + The version string. """ - logoUrl( - """ - The size in pixels of the resulting square image. - """ - size: Int = 400 - ): URI + version: String! +} +""" +The connection type for PackageVersion. +""" +type PackageVersionConnection { """ - The listing's full name. + A list of edges. """ - name: String! + edges: [PackageVersionEdge] """ - The listing's very short description without a trailing period or ampersands. + A list of nodes. """ - normalizedShortDescription: String! + nodes: [PackageVersion] """ - URL to the listing's detailed pricing. + Information to aid in pagination. """ - pricingUrl: URI + pageInfo: PageInfo! """ - The category that best describes the listing. + Identifies the total count of items in the connection. """ - primaryCategory: MarketplaceCategory! + totalCount: Int! +} +""" +An edge in a connection. +""" +type PackageVersionEdge { """ - URL to the listing's privacy policy, may return an empty string for listings that do not require a privacy policy URL. + A cursor for use in pagination. """ - privacyPolicyUrl: URI! + cursor: String! """ - The HTTP path for the Marketplace listing. + The item at the end of the edge. """ - resourcePath: URI! + node: PackageVersion +} +""" +Ways in which lists of package versions can be ordered upon return. +""" +input PackageVersionOrder { """ - The URLs for the listing's screenshots. + The direction in which to order package versions by the specified field. """ - screenshotUrls: [String]! + direction: OrderDirection """ - An alternate category that describes the listing. + The field in which to order package versions by. """ - secondaryCategory: MarketplaceCategory + field: PackageVersionOrderField +} +""" +Properties by which package version connections can be ordered. +""" +enum PackageVersionOrderField { """ - The listing's very short description. + Order package versions by creation time """ - shortDescription: String! + CREATED_AT +} +""" +Represents a object that contains package version activity statistics such as downloads. +""" +type PackageVersionStatistics { """ - The short name of the listing used in its URL. + Number of times the package was downloaded since it was created. """ - slug: String! + downloadsTotalCount: Int! +} +""" +Information about pagination in a connection. +""" +type PageInfo { """ - URL to the listing's status page. + When paginating forwards, the cursor to continue. """ - statusUrl: URI + endCursor: String """ - An email address for support for this listing's app. + When paginating forwards, are there more items? """ - supportEmail: String + hasNextPage: Boolean! """ - 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. + When paginating backwards, are there more items? """ - supportUrl: URI! + hasPreviousPage: Boolean! """ - URL to the listing's terms of service. + When paginating backwards, the cursor to continue. """ - termsOfServiceUrl: URI + startCursor: String +} +""" +The possible types of patch statuses. +""" +enum PatchStatus { """ - The HTTP URL for the Marketplace listing. + The file was added. Git status 'A'. """ - url: URI! + ADDED """ - Can the current viewer add plans for this Marketplace listing. + The file's type was changed. Git status 'T'. """ - viewerCanAddPlans: Boolean! + CHANGED """ - Can the current viewer approve this Marketplace listing. + The file was copied. Git status 'C'. """ - viewerCanApprove: Boolean! + COPIED """ - Can the current viewer delist this Marketplace listing. + The file was deleted. Git status 'D'. """ - viewerCanDelist: Boolean! + DELETED """ - Can the current viewer edit this Marketplace listing. + The file's contents were changed. Git status 'M'. """ - viewerCanEdit: Boolean! + MODIFIED """ - Can the current viewer edit the primary and secondary category of this - Marketplace listing. + The file was renamed. Git status 'R'. """ - viewerCanEditCategories: Boolean! + RENAMED +} + +""" +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 { """ - Can the current viewer edit the plans for this Marketplace listing. + The organization the repository belongs to. """ - viewerCanEditPlans: Boolean! + organization: Organization! """ - Can the current viewer return this Marketplace listing to draft state - so it becomes editable again. + The level of access this source has granted to the user. """ - viewerCanRedraft: Boolean! + permission: DefaultRepositoryPermissionField! """ - Can the current viewer reject this Marketplace listing by returning it to - an editable draft state or rejecting it entirely. + The source of this permission. """ - viewerCanReject: Boolean! + source: PermissionGranter! +} +""" +Autogenerated input type of PinIssue +""" +input PinIssueInput { """ - Can the current viewer request this listing be reviewed for display in - the Marketplace as verified. + A unique identifier for the client performing the mutation. """ - viewerCanRequestApproval: Boolean! + clientMutationId: String """ - Indicates whether the current user has an active subscription to this Marketplace listing. + The ID of the issue to be pinned """ - viewerHasPurchased: Boolean! + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) +} +""" +Autogenerated return type of PinIssue +""" +type PinIssuePayload { """ - Indicates if the current user has purchased a subscription to this Marketplace listing - for all of the organizations the user owns. + A unique identifier for the client performing the mutation. """ - viewerHasPurchasedForAllOrganizations: Boolean! + clientMutationId: String """ - Does the current viewer role allow them to administer this Marketplace listing. + The issue that was pinned """ - viewerIsListingAdmin: Boolean! + issue: Issue } """ -Look up Marketplace Listings +Types that can be pinned to a profile page. """ -type MarketplaceListingConnection { +union PinnableItem = Gist | Repository + +""" +The connection type for PinnableItem. +""" +type PinnableItemConnection { """ A list of edges. """ - edges: [MarketplaceListingEdge] + edges: [PinnableItemEdge] """ A list of nodes. """ - nodes: [MarketplaceListing] + nodes: [PinnableItem] """ Information to aid in pagination. @@ -13367,7 +30110,7 @@ type MarketplaceListingConnection { """ An edge in a connection. """ -type MarketplaceListingEdge { +type PinnableItemEdge { """ A cursor for use in pagination. """ @@ -13376,260 +30119,311 @@ type MarketplaceListingEdge { """ The item at the end of the edge. """ - node: MarketplaceListing + node: PinnableItem } """ -Entities that have members who can set status messages. +Represents items that can be pinned to a profile page or dashboard. """ -interface MemberStatusable { +enum PinnableItemType { """ - Get the status messages members of this entity have set that are either public or visible only to the organization. + A gist. """ - memberStatuses( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + GIST - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + An issue. + """ + ISSUE - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + An organization. + """ + ORGANIZATION - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + A project. + """ + PROJECT - """ - Ordering options for user statuses returned from the connection. - """ - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! + """ + A pull request. + """ + PULL_REQUEST + + """ + A repository. + """ + REPOSITORY + + """ + A team. + """ + TEAM + + """ + A user. + """ + USER } """ -Audit log entry for a members_can_delete_repos.clear event. +A Pinned Discussion is a discussion pinned to a repository's index page. """ -type MembersCanDeleteReposClearAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +type PinnedDiscussion implements Node & RepositoryNode { """ - 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 discussion that was pinned. """ - actorIp: String + discussion: Discussion! """ - A readable representation of the actor's location + Color stops of the chosen gradient """ - actorLocation: ActorLocation + gradientStopColors: [String!]! + id: ID! """ - The username of the user who initiated the action + Background texture pattern """ - actorLogin: String + pattern: PinnedDiscussionPattern! """ - The HTTP path for the actor. + The actor that pinned this discussion. """ - actorResourcePath: URI + pinnedBy: Actor! """ - The HTTP URL for the actor. + Preconfigured background gradient option """ - actorUrl: URI + preconfiguredGradient: PinnedDiscussionGradient """ - The time the action was initiated + The repository associated with this node. """ - createdAt: PreciseDateTime! + repository: Repository! """ - The HTTP path for this enterprise. + Identifies the date and time when the object was last updated. """ - enterpriseResourcePath: URI + updatedAt: DateTime! +} +""" +The connection type for PinnedDiscussion. +""" +type PinnedDiscussionConnection { """ - The slug of the enterprise. + A list of edges. """ - enterpriseSlug: String + edges: [PinnedDiscussionEdge] """ - The HTTP URL for this enterprise. + A list of nodes. """ - enterpriseUrl: URI - id: ID! + nodes: [PinnedDiscussion] """ - 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 PinnedDiscussionEdge { """ - 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: PinnedDiscussion +} +""" +Preconfigured gradients that may be used to style discussions pinned within a repository. +""" +enum PinnedDiscussionGradient { """ - The HTTP URL for the organization + A gradient of blue to mint """ - organizationUrl: URI + BLUE_MINT """ - The user affected by the action + A gradient of blue to purple """ - user: User + BLUE_PURPLE """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A gradient of pink to blue """ - userLogin: String + PINK_BLUE """ - The HTTP path for the user. + A gradient of purple to coral """ - userResourcePath: URI + PURPLE_CORAL """ - The HTTP URL for the user. + A gradient of red to orange """ - userUrl: URI + RED_ORANGE } """ -Audit log entry for a members_can_delete_repos.disable event. +Preconfigured background patterns that may be used to style discussions pinned within a repository. """ -type MembersCanDeleteReposDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +enum PinnedDiscussionPattern { """ - The action name + An upward-facing chevron pattern """ - action: String! + CHEVRON_UP """ - The user who initiated the action + A hollow dot pattern """ - actor: AuditEntryActor + DOT """ - The IP address of the actor + A solid dot pattern """ - actorIp: String + DOT_FILL """ - A readable representation of the actor's location + A heart pattern """ - actorLocation: ActorLocation + HEART_FILL """ - The username of the user who initiated the action + A plus sign pattern """ - actorLogin: String + PLUS """ - The HTTP path for the actor. + A lightning bolt pattern """ - actorResourcePath: URI + ZAP +} +""" +Represents a 'pinned' event on a given issue or pull request. +""" +type PinnedEvent implements Node { """ - The HTTP URL for the actor. + Identifies the actor who performed the event. """ - actorUrl: URI + actor: Actor """ - The time the action was initiated + Identifies the date and time when the object was created. """ - createdAt: PreciseDateTime! + createdAt: DateTime! + id: ID! """ - The HTTP path for this enterprise. + Identifies the issue associated with the event. """ - enterpriseResourcePath: URI + issue: Issue! +} +""" +A Pinned Issue is a issue pinned to a repository's index page. +""" +type PinnedIssue implements Node { """ - The slug of the enterprise. + Identifies the primary key from the database. """ - enterpriseSlug: String + databaseId: Int """ - The HTTP URL for this enterprise. + Identifies the primary key from the database as a BigInt. """ - enterpriseUrl: URI + fullDatabaseId: BigInt id: ID! """ - The corresponding operation type for the action + The issue that was pinned. """ - operationType: OperationType + issue: Issue! """ - The Organization associated with the Audit Entry. + The actor that pinned this issue. """ - organization: Organization + pinnedBy: Actor! """ - The name of the Organization. + The repository that this issue was pinned to. """ - organizationName: String + repository: Repository! +} +""" +The connection type for PinnedIssue. +""" +type PinnedIssueConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [PinnedIssueEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [PinnedIssue] """ - 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 PinnedIssueEdge { """ - 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: PinnedIssue } """ -Audit log entry for a members_can_delete_repos.enable event. +An ISO-8601 encoded UTC date string with millisecond precision. """ -type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +scalar PreciseDateTime + +""" +Audit log entry for a private_repository_forking.disable event. +""" +type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ The action name """ @@ -13712,302 +30506,255 @@ type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAud 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. + The repository associated with the action """ - databaseId: Int - id: ID! -} + repository: Repository -""" -Autogenerated input type of MergeBranch -""" -input MergeBranchInput { """ - The name of the base branch that the provided head will be merged into. + The name of the repository """ - base: String! + repositoryName: String """ - A unique identifier for the client performing the mutation. + The HTTP path for the repository """ - clientMutationId: String + repositoryResourcePath: URI """ - Message to use for the merge commit. If omitted, a default will be used. + The HTTP URL for the repository """ - commitMessage: String + repositoryUrl: URI """ - The head to merge into the base branch. This can be a branch name or a commit GitObjectID. + The user affected by the action """ - head: String! + user: User """ - The Node ID of the Repository containing the base branch that will be modified. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) -} + userLogin: String -""" -Autogenerated return type of MergeBranch -""" -type MergeBranchPayload { """ - A unique identifier for the client performing the mutation. + The HTTP path for the user. """ - clientMutationId: String + userResourcePath: URI """ - The resulting merge Commit. + The HTTP URL for the user. """ - mergeCommit: Commit + userUrl: URI } """ -Autogenerated input type of MergePullRequest +Audit log entry for a private_repository_forking.enable event. """ -input MergePullRequestInput { - """ - 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 - +type PrivateRepositoryForkingEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The merge method to use. If omitted, defaults to 'MERGE' + The action name """ - mergeMethod: PullRequestMergeMethod = MERGE + action: String! """ - ID of the pull request to be merged. + The user who initiated the action """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + actor: AuditEntryActor -""" -Autogenerated return type of MergePullRequest -""" -type MergePullRequestPayload { """ - Identifies the actor who performed the event. + The IP address of the actor """ - actor: Actor + actorIp: String """ - A unique identifier for the client performing the mutation. + A readable representation of the actor's location """ - clientMutationId: String + actorLocation: ActorLocation """ - The pull request that was merged. + The username of the user who initiated the action """ - pullRequest: PullRequest -} + actorLogin: String -""" -Detailed status information about a pull request merge. -""" -enum MergeStateStatus { """ - The head ref is out of date. + The HTTP path for the actor. """ - BEHIND + actorResourcePath: URI """ - The merge is blocked. + The HTTP URL for the actor. """ - BLOCKED + actorUrl: URI """ - Mergeable and passing commit status. + The time the action was initiated """ - CLEAN + createdAt: PreciseDateTime! """ - The merge commit cannot be cleanly created. + The HTTP path for this enterprise. """ - DIRTY + enterpriseResourcePath: URI """ - The merge is blocked due to the pull request being a draft. + The slug of the enterprise. """ - DRAFT + enterpriseSlug: String """ - Mergeable with passing commit status and pre-receive hooks. + The HTTP URL for this enterprise. """ - HAS_HOOKS + enterpriseUrl: URI + id: ID! """ - The state cannot currently be determined. + The corresponding operation type for the action """ - UNKNOWN + operationType: OperationType """ - Mergeable with non-passing commit status. + The Organization associated with the Audit Entry. """ - UNSTABLE -} + organization: Organization -""" -Whether or not a PullRequest can be merged. -""" -enum MergeableState { """ - The pull request cannot be merged due to merge conflicts. + The name of the Organization. """ - CONFLICTING + organizationName: String """ - The pull request can be merged. + The HTTP path for the organization """ - MERGEABLE + organizationResourcePath: URI """ - The mergeability of the pull request is still being calculated. + The HTTP URL for the organization """ - UNKNOWN -} + organizationUrl: URI -""" -Represents a 'merged' event on a given pull request. -""" -type MergedEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + The repository associated with the action """ - actor: Actor + repository: Repository """ - Identifies the commit associated with the `merge` event. + The name of the repository """ - commit: Commit + repositoryName: String """ - Identifies the date and time when the object was created. + The HTTP path for the repository """ - createdAt: DateTime! - id: ID! + repositoryResourcePath: URI """ - Identifies the Ref associated with the `merge` event. + The HTTP URL for the repository """ - mergeRef: Ref + repositoryUrl: URI """ - Identifies the name of the Ref associated with the `merge` event. + The user affected by the action """ - mergeRefName: String! + user: User """ - PullRequest referenced by event. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - pullRequest: PullRequest! + userLogin: String """ - The HTTP path for this merged event. + The HTTP path for the user. """ - resourcePath: URI! + userResourcePath: URI """ - The HTTP URL for this merged event. + The HTTP URL for the user. """ - url: URI! + userUrl: URI } """ -Represents a Milestone object on a given repository. +A curatable list of repositories relating to a repository owner, which defaults +to showing the most popular repositories they own. """ -type Milestone implements Closable & Node & UniformResourceLocatable { +type ProfileItemShowcase { """ - `true` if the object is closed (definition of closed may depend on type) + Whether or not the owner has pinned any repositories or gists. """ - closed: Boolean! + hasPinnedItems: Boolean! """ - Identifies the date and time when the object was closed. + 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. """ - closedAt: DateTime + 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! +} + +""" +Represents any entity on GitHub that has a profile page. +""" +interface ProfileOwner { """ - Identifies the date and time when the object was created. + Determine if this repository owner has any items that can be pinned to their profile. """ - createdAt: DateTime! + anyPinnableItems( + """ + Filter to only a particular kind of pinnable item. + """ + type: PinnableItemType + ): Boolean! """ - Identifies the actor who created the milestone. + The public profile email. """ - creator: Actor + email: String + id: ID! """ - Identifies the description of the milestone. + Showcases a selection of repositories and gists that the profile owner has + either curated or that have been selected automatically based on popularity. """ - description: String + itemShowcase: ProfileItemShowcase! """ - Identifies the due date of the milestone. + The public profile location. """ - dueOn: DateTime - id: ID! + location: String """ - Just for debugging on review-lab + The username used to login. """ - issuePrioritiesDebug: String! + login: String! """ - A list of issues associated with the milestone. + The public profile name. """ - issues( + name: String + + """ + A list of repositories and gists this profile owner can pin to their profile. + """ + pinnableItems( """ Returns the elements in the list that come after the specified cursor. """ @@ -14018,56 +30765,31 @@ type Milestone implements Closable & Node & UniformResourceLocatable { """ 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. + Filter the types of pinnable items that are returned. """ - states: [IssueState!] - ): IssueConnection! - - """ - Identifies the number of the milestone. - """ - number: Int! + types: [PinnableItemType!] + ): PinnableItemConnection! """ - A list of pull requests associated with the milestone. + A list of repositories and gists this profile owner has pinned to their profile """ - pullRequests( + pinnedItems( """ 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. """ @@ -14078,327 +30800,381 @@ type Milestone implements Closable & Node & UniformResourceLocatable { """ 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. + Filter the types of pinned items that are returned. """ - orderBy: IssueOrder + types: [PinnableItemType!] + ): PinnableItemConnection! - """ - A list of states to filter the pull requests by. - """ - states: [PullRequestState!] - ): PullRequestConnection! + """ + Returns how many more items this profile owner can pin to their profile. + """ + pinnedItemsRemaining: Int! """ - The repository associated with this milestone. + Can the viewer pin repositories and gists to the profile? """ - repository: Repository! + viewerCanChangePinnedItems: Boolean! """ - The HTTP path for this milestone + The public profile website URL. """ - resourcePath: URI! + websiteUrl: URI +} +""" +Projects manage issues, pull requests and notes within a project owner. +""" +type Project implements Closable & Node & Updatable { """ - Identifies the state of the milestone. + The project's description body. """ - state: MilestoneState! + body: String """ - Identifies the title of the milestone. + The projects description body rendered to HTML. """ - title: String! + bodyHTML: HTML! """ - Identifies the date and time when the object was last updated. + Indicates if the object is closed (definition of closed may depend on type) """ - updatedAt: DateTime! + closed: Boolean! """ - The HTTP URL for this milestone + Identifies the date and time when the object was closed. """ - url: URI! -} + closedAt: DateTime -""" -The connection type for Milestone. -""" -type MilestoneConnection { """ - A list of edges. + List of columns in the project """ - edges: [MilestoneEdge] + 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! """ - A list of nodes. + Identifies the date and time when the object was created. """ - nodes: [Milestone] + createdAt: DateTime! """ - Information to aid in pagination. + The actor who originally created the project. """ - pageInfo: PageInfo! + creator: Actor """ - Identifies the total count of items in the connection. + Identifies the primary key from the database. """ - totalCount: Int! -} + databaseId: Int + id: ID! -""" -An edge in a connection. -""" -type MilestoneEdge { """ - A cursor for use in pagination. + The project's name. """ - cursor: String! + name: String! """ - The item at the end of the edge. + The project's number. """ - node: Milestone -} + number: Int! -""" -Types that can be inside a Milestone. -""" -union MilestoneItem = Issue | PullRequest + """ + The project's owner. Currently limited to repositories, organizations, and users. + """ + owner: ProjectOwner! -""" -Ordering options for milestone connections. -""" -input MilestoneOrder { """ - The ordering direction. + List of pending cards in this project """ - direction: OrderDirection! + 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! """ - The field to order milestones by. + Project progress details. """ - field: MilestoneOrderField! -} + progress: ProjectProgress! -""" -Properties by which milestone connections can be ordered. -""" -enum MilestoneOrderField { """ - Order milestones by when they were created. + The HTTP path for this project """ - CREATED_AT + resourcePath: URI! """ - Order milestones by when they are due. + Whether the project is open or closed. """ - DUE_DATE + state: ProjectState! """ - Order milestones by their number. + Identifies the date and time when the object was last updated. """ - NUMBER + updatedAt: DateTime! """ - Order milestones by when they were last updated. + The HTTP URL for this project """ - UPDATED_AT -} + url: URI! -""" -The possible states of a milestone. -""" -enum MilestoneState { """ - A milestone that has been closed. + Indicates if the object can be closed by the viewer. """ - CLOSED + viewerCanClose: Boolean! """ - A milestone that is still open. + Indicates if the object can be reopened by the viewer. """ - OPEN + viewerCanReopen: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! } """ -Represents a 'milestoned' event on a given issue or pull request. +A card in a project. """ -type MilestonedEvent implements Node { +type ProjectCard implements Node { """ - Identifies the actor who performed the event. + 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. """ - actor: Actor + column: ProjectColumn + + """ + The card content item + """ + content: ProjectCardItem """ Identifies the date and time when the object was created. """ createdAt: DateTime! - id: ID! """ - Identifies the milestone title associated with the 'milestoned' event. + The actor who created this card """ - milestoneTitle: String! + creator: Actor """ - Object referenced by event. + Identifies the primary key from the database. """ - subject: MilestoneItem! -} + databaseId: Int + id: ID! -""" -Entities that can be minimized. -""" -interface Minimizable { """ - Returns whether or not a comment has been minimized. + Whether the card is archived """ - isMinimized: Boolean! + isArchived: Boolean! """ - Returns why the comment was minimized. + The card note """ - minimizedReason: String + note: String """ - Check if the current viewer can minimize this object. + The project that contains this card. """ - viewerCanMinimize: Boolean! -} + project: Project! -""" -Autogenerated input type of MinimizeComment -""" -input MinimizeCommentInput { """ - The classification of comment + The HTTP path for this card """ - classifier: ReportedContentClassifiers! + resourcePath: URI! """ - A unique identifier for the client performing the mutation. + The state of ProjectCard """ - clientMutationId: String + state: ProjectCardState """ - The Node ID of the subject to modify. + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this card """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "GistComment", "IssueComment", "PullRequestReviewComment"], abstractType: "Minimizable") + url: URI! } """ -Autogenerated return type of MinimizeComment +The possible archived states of a project card. """ -type MinimizeCommentPayload { +enum ProjectCardArchivedState { """ - A unique identifier for the client performing the mutation. + A project card that is archived """ - clientMutationId: String + ARCHIVED """ - The comment that was minimized. + A project card that is not archived """ - minimizedComment: Minimizable + NOT_ARCHIVED } """ -Autogenerated input type of MoveProjectCard +The connection type for ProjectCard. """ -input MoveProjectCardInput { +type ProjectCardConnection { """ - 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: [ProjectCardEdge] """ - The id of the card to move. + A list of nodes. """ - cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"]) + nodes: [ProjectCard] """ - 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 ProjectCardEdge { """ - 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: ProjectCard } """ -Autogenerated input type of MoveProjectColumn +An issue or PR and its owning repository to be used in a project card. """ -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"]) - +input ProjectCardImport { """ - A unique identifier for the client performing the mutation. + The issue or pull request number. """ - clientMutationId: String + number: Int! """ - The id of the column to move. + Repository name with owner (owner/repository). """ - columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) + repository: String! } """ -Autogenerated return type of MoveProjectColumn +Types that can be inside Project Cards. """ -type MoveProjectColumnPayload { +union ProjectCardItem = Issue | PullRequest + +""" +Various content states of a ProjectCard +""" +enum ProjectCardState { """ - A unique identifier for the client performing the mutation. + The card has content only. """ - clientMutationId: String + CONTENT_ONLY """ - The new edge of the moved column. + The card has a note only. """ - columnEdge: ProjectColumnEdge + NOTE_ONLY + + """ + The card is redacted. + """ + REDACTED } -""" -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 +""" +A column inside a project. +""" +type ProjectColumn implements Node { + """ + List of cards in the column + """ + 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! """ Identifies the date and time when the object was created. @@ -14412,4004 +31188,5316 @@ type MovedColumnsInProjectEvent implements Node { id: ID! """ - Column name the issue or pull request was moved from. + The project column's name. """ - previousProjectColumnName: String! @preview(toggledBy: "starfox-preview") + name: String! """ - Project referenced by event. + The project that contains this column. """ - project: Project @preview(toggledBy: "starfox-preview") + project: Project! """ - Project card referenced by this project event. + The semantic purpose of the column """ - projectCard: ProjectCard @preview(toggledBy: "starfox-preview") + purpose: ProjectColumnPurpose """ - Column name the issue or pull request was moved to. + The HTTP path for this project column """ - projectColumnName: String! @preview(toggledBy: "starfox-preview") -} + resourcePath: URI! -""" -The root query for implementing GraphQL mutations. -""" -type Mutation { """ - Accepts a pending invitation for a user to become an administrator of an enterprise. + Identifies the date and time when the object was last updated. """ - acceptEnterpriseAdministratorInvitation(input: AcceptEnterpriseAdministratorInvitationInput!): AcceptEnterpriseAdministratorInvitationPayload + updatedAt: DateTime! """ - Applies a suggested topic to the repository. + The HTTP URL for this project column """ - acceptTopicSuggestion(input: AcceptTopicSuggestionInput!): AcceptTopicSuggestionPayload + url: URI! +} +""" +The connection type for ProjectColumn. +""" +type ProjectColumnConnection { """ - Adds assignees to an assignable object. + A list of edges. """ - addAssigneesToAssignable(input: AddAssigneesToAssignableInput!): AddAssigneesToAssignablePayload + edges: [ProjectColumnEdge] """ - Adds a comment to an Issue or Pull Request. + A list of nodes. """ - addComment(input: AddCommentInput!): AddCommentPayload + nodes: [ProjectColumn] """ - Adds labels to a labelable object. + Information to aid in pagination. """ - addLabelsToLabelable(input: AddLabelsToLabelableInput!): AddLabelsToLabelablePayload + pageInfo: PageInfo! """ - Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. + Identifies the total count of items in the connection. """ - addProjectCard(input: AddProjectCardInput!): AddProjectCardPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectColumnEdge { """ - Adds a column to a Project. + A cursor for use in pagination. """ - addProjectColumn(input: AddProjectColumnInput!): AddProjectColumnPayload + cursor: String! """ - Adds a review to a Pull Request. + The item at the end of the edge. """ - addPullRequestReview(input: AddPullRequestReviewInput!): AddPullRequestReviewPayload + node: ProjectColumn +} +""" +A project column and a list of its issues and PRs. +""" +input ProjectColumnImport { """ - Adds a comment to a review. + The name of the column. """ - addPullRequestReviewComment(input: AddPullRequestReviewCommentInput!): AddPullRequestReviewCommentPayload + columnName: String! """ - Adds a new thread to a pending Pull Request Review. + A list of issues and pull requests in the column. """ - addPullRequestReviewThread(input: AddPullRequestReviewThreadInput!): AddPullRequestReviewThreadPayload + issues: [ProjectCardImport!] """ - Adds a reaction to a subject. + The position of the column, starting from 0. """ - addReaction(input: AddReactionInput!): AddReactionPayload + position: Int! +} +""" +The semantic purpose of the column - todo, in progress, or done. +""" +enum ProjectColumnPurpose { """ - Adds a star to a Starrable. + The column contains cards which are complete """ - addStar(input: AddStarInput!): AddStarPayload + DONE """ - Marks a repository as archived. + The column contains cards which are currently being worked on """ - archiveRepository(input: ArchiveRepositoryInput!): ArchiveRepositoryPayload + IN_PROGRESS """ - Cancels a pending invitation for an administrator to join an enterprise. + The column contains cards still to be worked on """ - cancelEnterpriseAdminInvitation(input: CancelEnterpriseAdminInvitationInput!): CancelEnterpriseAdminInvitationPayload + TODO +} +""" +A list of projects associated with the owner. +""" +type ProjectConnection { """ - Update your status on GitHub. + A list of edges. """ - changeUserStatus(input: ChangeUserStatusInput!): ChangeUserStatusPayload + edges: [ProjectEdge] """ - Clears all labels from a labelable object. + A list of nodes. """ - clearLabelsFromLabelable(input: ClearLabelsFromLabelableInput!): ClearLabelsFromLabelablePayload + nodes: [Project] """ - Creates a new project by cloning configuration from an existing project. + Information to aid in pagination. """ - cloneProject(input: CloneProjectInput!): CloneProjectPayload + pageInfo: PageInfo! """ - Create a new repository with the same files and directory structure as a template repository. + Identifies the total count of items in the connection. """ - cloneTemplateRepository(input: CloneTemplateRepositoryInput!): CloneTemplateRepositoryPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectEdge { """ - Close an issue. + A cursor for use in pagination. """ - closeIssue(input: CloseIssueInput!): CloseIssuePayload + cursor: String! """ - Close a pull request. + The item at the end of the edge. """ - closePullRequest(input: ClosePullRequestInput!): ClosePullRequestPayload + node: Project +} +""" +Ways in which lists of projects can be ordered upon return. +""" +input ProjectOrder { """ - Convert a project note card to one associated with a newly created issue. + The direction in which to order projects by the specified field. """ - convertProjectCardNoteToIssue(input: ConvertProjectCardNoteToIssueInput!): ConvertProjectCardNoteToIssuePayload + direction: OrderDirection! """ - Create a new branch protection rule + The field in which to order projects by. """ - createBranchProtectionRule(input: CreateBranchProtectionRuleInput!): CreateBranchProtectionRulePayload + field: ProjectOrderField! +} +""" +Properties by which project connections can be ordered. +""" +enum ProjectOrderField { """ - Create a check run. + Order projects by creation time """ - createCheckRun(input: CreateCheckRunInput!): CreateCheckRunPayload @preview(toggledBy: "antiope-preview") + CREATED_AT """ - Create a check suite + Order projects by name """ - createCheckSuite(input: CreateCheckSuiteInput!): CreateCheckSuitePayload @preview(toggledBy: "antiope-preview") + NAME """ - Create a content attachment. + Order projects by update time """ - createContentAttachment(input: CreateContentAttachmentInput!): CreateContentAttachmentPayload @preview(toggledBy: "corsair-preview") + UPDATED_AT +} - """ - Creates a new deployment event. - """ - createDeployment(input: CreateDeploymentInput!): CreateDeploymentPayload @preview(toggledBy: "flash-preview") +""" +Represents an owner of a Project. +""" +interface ProjectOwner { + id: ID! """ - Create a deployment status. + Find project by number. """ - createDeploymentStatus(input: CreateDeploymentStatusInput!): CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") + project( + """ + The project number to find. + """ + number: Int! + ): Project """ - Creates an organization as part of an enterprise account. + A list of projects under the owner. """ - createEnterpriseOrganization(input: CreateEnterpriseOrganizationInput!): CreateEnterpriseOrganizationPayload + projects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Creates a new IP allow list entry. - """ - createIpAllowListEntry(input: CreateIpAllowListEntryInput!): CreateIpAllowListEntryPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Creates a new issue. - """ - createIssue(input: CreateIssueInput!): CreateIssuePayload + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Creates a new label. - """ - createLabel(input: CreateLabelInput!): CreateLabelPayload @preview(toggledBy: "bane-preview") + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Creates a new project. - """ - createProject(input: CreateProjectInput!): CreateProjectPayload + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder - """ - Create a new pull request - """ - createPullRequest(input: CreatePullRequestInput!): CreatePullRequestPayload + """ + Query to search projects by, currently only searching by name. + """ + search: String - """ - Create a new Git Ref. - """ - createRef(input: CreateRefInput!): CreateRefPayload + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - Create a new repository. + The HTTP path listing owners projects """ - createRepository(input: CreateRepositoryInput!): CreateRepositoryPayload + projectsResourcePath: URI! """ - Creates a new team discussion. + The HTTP URL listing owners projects """ - createTeamDiscussion(input: CreateTeamDiscussionInput!): CreateTeamDiscussionPayload + projectsUrl: URI! """ - Creates a new team discussion comment. + Can the current viewer create new projects on this owner. """ - createTeamDiscussionComment(input: CreateTeamDiscussionCommentInput!): CreateTeamDiscussionCommentPayload + viewerCanCreateProjects: Boolean! +} +""" +Project progress stats. +""" +type ProjectProgress { """ - Rejects a suggested topic for the repository. + The number of done cards. """ - declineTopicSuggestion(input: DeclineTopicSuggestionInput!): DeclineTopicSuggestionPayload + doneCount: Int! """ - Delete a branch protection rule + The percentage of done cards. """ - deleteBranchProtectionRule(input: DeleteBranchProtectionRuleInput!): DeleteBranchProtectionRulePayload + donePercentage: Float! """ - Deletes a deployment. + Whether progress tracking is enabled and cards with purpose exist for this project """ - deleteDeployment(input: DeleteDeploymentInput!): DeleteDeploymentPayload + enabled: Boolean! """ - Deletes an IP allow list entry. + The number of in-progress cards. """ - deleteIpAllowListEntry(input: DeleteIpAllowListEntryInput!): DeleteIpAllowListEntryPayload + inProgressCount: Int! """ - Deletes an Issue object. + The percentage of in-progress cards. """ - deleteIssue(input: DeleteIssueInput!): DeleteIssuePayload + inProgressPercentage: Float! """ - Deletes an IssueComment object. + The number of to do cards. """ - deleteIssueComment(input: DeleteIssueCommentInput!): DeleteIssueCommentPayload + todoCount: Int! """ - Deletes a label. + The percentage of to do cards. """ - deleteLabel(input: DeleteLabelInput!): DeleteLabelPayload @preview(toggledBy: "bane-preview") + todoPercentage: Float! +} +""" +State of the project; either 'open' or 'closed' +""" +enum ProjectState { """ - Delete a package version. + The project is closed. """ - deletePackageVersion(input: DeletePackageVersionInput!): DeletePackageVersionPayload @preview(toggledBy: "package-deletes-preview") + CLOSED """ - Deletes a project. + The project is open. """ - deleteProject(input: DeleteProjectInput!): DeleteProjectPayload + OPEN +} +""" +GitHub-provided templates for Projects +""" +enum ProjectTemplate { """ - Deletes a project card. + Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. """ - deleteProjectCard(input: DeleteProjectCardInput!): DeleteProjectCardPayload + AUTOMATED_KANBAN_V2 """ - Deletes a project column. + Create a board with triggers to automatically move cards across columns with review automation. """ - deleteProjectColumn(input: DeleteProjectColumnInput!): DeleteProjectColumnPayload + AUTOMATED_REVIEWS_KANBAN """ - Deletes a pull request review. + Create a board with columns for To do, In progress and Done. """ - deletePullRequestReview(input: DeletePullRequestReviewInput!): DeletePullRequestReviewPayload + BASIC_KANBAN """ - Deletes a pull request review comment. + Create a board to triage and prioritize bugs with To do, priority, and Done columns. """ - deletePullRequestReviewComment(input: DeletePullRequestReviewCommentInput!): DeletePullRequestReviewCommentPayload + BUG_TRIAGE +} +""" +New projects that manage issues, pull requests and drafts using tables and boards. +""" +type ProjectV2 implements Closable & Node & Updatable { """ - Delete a Git Ref. + Returns true if the project is closed. """ - deleteRef(input: DeleteRefInput!): DeleteRefPayload + closed: Boolean! """ - Deletes a team discussion. + Identifies the date and time when the object was closed. """ - deleteTeamDiscussion(input: DeleteTeamDiscussionInput!): DeleteTeamDiscussionPayload + closedAt: DateTime """ - Deletes a team discussion comment. + Identifies the date and time when the object was created. """ - deleteTeamDiscussionComment(input: DeleteTeamDiscussionCommentInput!): DeleteTeamDiscussionCommentPayload + createdAt: DateTime! """ - Dismisses an approved or rejected pull request review. + The actor who originally created the project. """ - dismissPullRequestReview(input: DismissPullRequestReviewInput!): DismissPullRequestReviewPayload + creator: Actor """ - Follow a user. + Identifies the primary key from the database. """ - followUser(input: FollowUserInput!): FollowUserPayload + databaseId: Int """ - Creates a new project by importing columns and a list of issues/PRs. + A field of the project """ - importProject(input: ImportProjectInput!): ImportProjectPayload @preview(toggledBy: "slothette-preview") + field( + """ + The name of the field + """ + name: String! + ): ProjectV2FieldConfiguration """ - Invite someone to become an administrator of the enterprise. + List of fields and their constraints in the project """ - inviteEnterpriseAdmin(input: InviteEnterpriseAdminInput!): InviteEnterpriseAdminPayload + fields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Creates a repository link for a project. - """ - linkRepositoryToProject(input: LinkRepositoryToProjectInput!): LinkRepositoryToProjectPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Lock a lockable object - """ - lockLockable(input: LockLockableInput!): LockLockablePayload + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Marks a pull request ready for review. - """ - markPullRequestReadyForReview(input: MarkPullRequestReadyForReviewInput!): MarkPullRequestReadyForReviewPayload + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Merge a head into a branch. - """ - mergeBranch(input: MergeBranchInput!): MergeBranchPayload + """ + Ordering options for project v2 fields returned from the connection + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection! + id: ID! """ - Merge a pull request. + List of items in the project """ - mergePullRequest(input: MergePullRequestInput!): MergePullRequestPayload + items( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Minimizes a comment on an Issue, Commit, Pull Request, or Gist - """ - minimizeComment(input: MinimizeCommentInput!): MinimizeCommentPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Moves a project card to another place. - """ - moveProjectCard(input: MoveProjectCardInput!): MoveProjectCardPayload + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Moves a project column to another place. - """ - moveProjectColumn(input: MoveProjectColumnInput!): MoveProjectColumnPayload + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Pin an issue to a repository - """ - pinIssue(input: PinIssueInput!): PinIssuePayload @preview(toggledBy: "elektra-preview") + """ + Ordering options for project v2 items returned from the connection + """ + orderBy: ProjectV2ItemOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemConnection! """ - Regenerates the identity provider recovery codes for an enterprise + The project's number. """ - regenerateEnterpriseIdentityProviderRecoveryCodes(input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput!): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload + number: Int! """ - Removes assignees from an assignable object. + The project's owner. Currently limited to organizations and users. """ - removeAssigneesFromAssignable(input: RemoveAssigneesFromAssignableInput!): RemoveAssigneesFromAssignablePayload + owner: ProjectV2Owner! """ - Removes an administrator from the enterprise. + Returns true if the project is public. """ - removeEnterpriseAdmin(input: RemoveEnterpriseAdminInput!): RemoveEnterpriseAdminPayload + public: Boolean! """ - Removes the identity provider from an enterprise + The project's readme. """ - removeEnterpriseIdentityProvider(input: RemoveEnterpriseIdentityProviderInput!): RemoveEnterpriseIdentityProviderPayload + readme: String """ - Removes an organization from the enterprise + The repositories the project is linked to. """ - removeEnterpriseOrganization(input: RemoveEnterpriseOrganizationInput!): RemoveEnterpriseOrganizationPayload + repositories( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Removes labels from a Labelable object. - """ - removeLabelsFromLabelable(input: RemoveLabelsFromLabelableInput!): RemoveLabelsFromLabelablePayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Removes outside collaborator from all repositories in an organization. - """ - removeOutsideCollaborator(input: RemoveOutsideCollaboratorInput!): RemoveOutsideCollaboratorPayload + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder = {field: CREATED_AT, direction: DESC} + ): RepositoryConnection! """ - Removes a reaction from a subject. + The HTTP path for this project """ - removeReaction(input: RemoveReactionInput!): RemoveReactionPayload + resourcePath: URI! """ - Removes a star from a Starrable. + The project's short description. """ - removeStar(input: RemoveStarInput!): RemoveStarPayload + shortDescription: String """ - Reopen a issue. + The teams the project is linked to. """ - reopenIssue(input: ReopenIssueInput!): ReopenIssuePayload + 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. + """ + 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 teams returned from this connection. + """ + orderBy: TeamOrder = {field: NAME, direction: ASC} + ): TeamConnection! """ - Reopen a pull request. + Returns true if this project is a template. """ - reopenPullRequest(input: ReopenPullRequestInput!): ReopenPullRequestPayload + template: Boolean! """ - Set review requests on a pull request. + The project's name. """ - requestReviews(input: RequestReviewsInput!): RequestReviewsPayload + title: String! """ - Rerequests an existing check suite. + Identifies the date and time when the object was last updated. """ - rerequestCheckSuite(input: RerequestCheckSuiteInput!): RerequestCheckSuitePayload @preview(toggledBy: "antiope-preview") + updatedAt: DateTime! """ - Marks a review thread as resolved. + The HTTP URL for this project """ - resolveReviewThread(input: ResolveReviewThreadInput!): ResolveReviewThreadPayload + url: URI! """ - Creates or updates the identity provider for an enterprise. + A view of the project """ - setEnterpriseIdentityProvider(input: SetEnterpriseIdentityProviderInput!): SetEnterpriseIdentityProviderPayload + view( + """ + The number of a view belonging to the project + """ + number: Int! + ): ProjectV2View """ - Submits a pending pull request review. + Indicates if the object can be closed by the viewer. """ - submitPullRequestReview(input: SubmitPullRequestReviewInput!): SubmitPullRequestReviewPayload + viewerCanClose: Boolean! """ - Transfer an issue to a different repository + Indicates if the object can be reopened by the viewer. """ - transferIssue(input: TransferIssueInput!): TransferIssuePayload + viewerCanReopen: Boolean! """ - Unarchives a repository. + Check if the current viewer can update this object. """ - unarchiveRepository(input: UnarchiveRepositoryInput!): UnarchiveRepositoryPayload + viewerCanUpdate: Boolean! """ - Unfollow a user. + List of views in the project """ - unfollowUser(input: UnfollowUserInput!): UnfollowUserPayload + 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! """ - Deletes a repository link from a project. + A workflow of the project """ - unlinkRepositoryFromProject(input: UnlinkRepositoryFromProjectInput!): UnlinkRepositoryFromProjectPayload + workflow( + """ + The number of a workflow belonging to the project + """ + number: Int! + ): ProjectV2Workflow """ - Unlock a lockable object + List of the workflows in the project """ - unlockLockable(input: UnlockLockableInput!): UnlockLockablePayload + 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! +} + +""" +Possible collaborators for a project. +""" +union ProjectV2Actor = Team | User +""" +The connection type for ProjectV2Actor. +""" +type ProjectV2ActorConnection { """ - Unmark an issue as a duplicate of another issue. + A list of edges. """ - unmarkIssueAsDuplicate(input: UnmarkIssueAsDuplicateInput!): UnmarkIssueAsDuplicatePayload + edges: [ProjectV2ActorEdge] """ - Unminimizes a comment on an Issue, Commit, Pull Request, or Gist + A list of nodes. """ - unminimizeComment(input: UnminimizeCommentInput!): UnminimizeCommentPayload + nodes: [ProjectV2Actor] """ - Unpin a pinned issue from a repository + Information to aid in pagination. """ - unpinIssue(input: UnpinIssueInput!): UnpinIssuePayload @preview(toggledBy: "elektra-preview") + pageInfo: PageInfo! """ - Marks a review thread as unresolved. + Identifies the total count of items in the connection. """ - unresolveReviewThread(input: UnresolveReviewThreadInput!): UnresolveReviewThreadPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2ActorEdge { """ - Create a new branch protection rule + A cursor for use in pagination. """ - updateBranchProtectionRule(input: UpdateBranchProtectionRuleInput!): UpdateBranchProtectionRulePayload + cursor: String! """ - Update a check run + The item at the end of the edge. """ - updateCheckRun(input: UpdateCheckRunInput!): UpdateCheckRunPayload @preview(toggledBy: "antiope-preview") + node: ProjectV2Actor +} +""" +A collaborator to update on a project. Only one of the userId or teamId should be provided. +""" +input ProjectV2Collaborator { """ - Modifies the settings of an existing check suite + The role to grant the collaborator """ - updateCheckSuitePreferences(input: UpdateCheckSuitePreferencesInput!): UpdateCheckSuitePreferencesPayload @preview(toggledBy: "antiope-preview") + role: ProjectV2Roles! """ - Sets the action execution capability setting for an enterprise. + The ID of the team as a collaborator. """ - updateEnterpriseActionExecutionCapabilitySetting(input: UpdateEnterpriseActionExecutionCapabilitySettingInput!): UpdateEnterpriseActionExecutionCapabilitySettingPayload + teamId: ID @possibleTypes(concreteTypes: ["Team"]) """ - Updates the role of an enterprise administrator. + The ID of the user as a collaborator. """ - updateEnterpriseAdministratorRole(input: UpdateEnterpriseAdministratorRoleInput!): UpdateEnterpriseAdministratorRolePayload + userId: ID @possibleTypes(concreteTypes: ["User"]) +} +""" +The connection type for ProjectV2. +""" +type ProjectV2Connection { """ - Sets whether private repository forks are enabled for an enterprise. + A list of edges. """ - updateEnterpriseAllowPrivateRepositoryForkingSetting(input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput!): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload + edges: [ProjectV2Edge] """ - Sets the default repository permission for organizations in an enterprise. + A list of nodes. """ - updateEnterpriseDefaultRepositoryPermissionSetting(input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput!): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload + nodes: [ProjectV2] """ - Sets whether organization members with admin permissions on a repository can change repository visibility. + Information to aid in pagination. """ - updateEnterpriseMembersCanChangeRepositoryVisibilitySetting(input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput!): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload + pageInfo: PageInfo! """ - Sets the members can create repositories setting for an enterprise. + Identifies the total count of items in the connection. """ - updateEnterpriseMembersCanCreateRepositoriesSetting(input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput!): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload + totalCount: Int! +} +""" +The type of a project field. +""" +enum ProjectV2CustomFieldType { """ - Sets the members can delete issues setting for an enterprise. + Date """ - updateEnterpriseMembersCanDeleteIssuesSetting(input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput!): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload + DATE """ - Sets the members can delete repositories setting for an enterprise. + Number """ - updateEnterpriseMembersCanDeleteRepositoriesSetting(input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput!): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload + NUMBER """ - Sets whether members can invite collaborators are enabled for an enterprise. + Single Select """ - updateEnterpriseMembersCanInviteCollaboratorsSetting(input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput!): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload + SINGLE_SELECT """ - Sets whether or not an organization admin can make purchases. + Text """ - updateEnterpriseMembersCanMakePurchasesSetting(input: UpdateEnterpriseMembersCanMakePurchasesSettingInput!): UpdateEnterpriseMembersCanMakePurchasesSettingPayload + TEXT +} +""" +An edge in a connection. +""" +type ProjectV2Edge { """ - Sets the members can update protected branches setting for an enterprise. + A cursor for use in pagination. """ - updateEnterpriseMembersCanUpdateProtectedBranchesSetting(input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput!): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload + cursor: String! """ - Sets the members can view dependency insights for an enterprise. + The item at the end of the edge. """ - updateEnterpriseMembersCanViewDependencyInsightsSetting(input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput!): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload + node: ProjectV2 +} +""" +A field inside a project. +""" +type ProjectV2Field implements Node & ProjectV2FieldCommon { """ - Sets whether organization projects are enabled for an enterprise. + Identifies the date and time when the object was created. """ - updateEnterpriseOrganizationProjectsSetting(input: UpdateEnterpriseOrganizationProjectsSettingInput!): UpdateEnterpriseOrganizationProjectsSettingPayload + createdAt: DateTime! """ - Updates an enterprise's profile. + The field's type. """ - updateEnterpriseProfile(input: UpdateEnterpriseProfileInput!): UpdateEnterpriseProfilePayload + dataType: ProjectV2FieldType! """ - Sets whether repository projects are enabled for a enterprise. + Identifies the primary key from the database. """ - updateEnterpriseRepositoryProjectsSetting(input: UpdateEnterpriseRepositoryProjectsSettingInput!): UpdateEnterpriseRepositoryProjectsSettingPayload + databaseId: Int + id: ID! """ - Sets whether team discussions are enabled for an enterprise. + The project field's name. """ - updateEnterpriseTeamDiscussionsSetting(input: UpdateEnterpriseTeamDiscussionsSettingInput!): UpdateEnterpriseTeamDiscussionsSettingPayload + name: String! """ - Sets whether two factor authentication is required for all users in an enterprise. + The project that contains this field. """ - updateEnterpriseTwoFactorAuthenticationRequiredSetting(input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput!): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload + project: ProjectV2! """ - Sets whether an IP allow list is enabled on an owner. + Identifies the date and time when the object was last updated. """ - updateIpAllowListEnabledSetting(input: UpdateIpAllowListEnabledSettingInput!): UpdateIpAllowListEnabledSettingPayload + updatedAt: DateTime! +} +""" +Common fields across different project field types +""" +interface ProjectV2FieldCommon { """ - Updates an IP allow list entry. + Identifies the date and time when the object was created. """ - updateIpAllowListEntry(input: UpdateIpAllowListEntryInput!): UpdateIpAllowListEntryPayload + createdAt: DateTime! """ - Updates an Issue. + The field's type. """ - updateIssue(input: UpdateIssueInput!): UpdateIssuePayload + dataType: ProjectV2FieldType! """ - Updates an IssueComment object. + Identifies the primary key from the database. """ - updateIssueComment(input: UpdateIssueCommentInput!): UpdateIssueCommentPayload + databaseId: Int + id: ID! """ - Updates an existing label. + The project field's name. """ - updateLabel(input: UpdateLabelInput!): UpdateLabelPayload @preview(toggledBy: "bane-preview") + name: String! """ - Updates an existing project. + The project that contains this field. """ - updateProject(input: UpdateProjectInput!): UpdateProjectPayload + project: ProjectV2! """ - Updates an existing project card. + Identifies the date and time when the object was last updated. """ - updateProjectCard(input: UpdateProjectCardInput!): UpdateProjectCardPayload + updatedAt: DateTime! +} + +""" +Configurations for project fields. +""" +union ProjectV2FieldConfiguration = ProjectV2Field | ProjectV2IterationField | ProjectV2SingleSelectField +""" +The connection type for ProjectV2FieldConfiguration. +""" +type ProjectV2FieldConfigurationConnection { """ - Updates an existing project column. + A list of edges. """ - updateProjectColumn(input: UpdateProjectColumnInput!): UpdateProjectColumnPayload + edges: [ProjectV2FieldConfigurationEdge] """ - Update a pull request + A list of nodes. """ - updatePullRequest(input: UpdatePullRequestInput!): UpdatePullRequestPayload + nodes: [ProjectV2FieldConfiguration] """ - Updates the body of a pull request review. + Information to aid in pagination. """ - updatePullRequestReview(input: UpdatePullRequestReviewInput!): UpdatePullRequestReviewPayload + pageInfo: PageInfo! """ - Updates a pull request review comment. + Identifies the total count of items in the connection. """ - updatePullRequestReviewComment(input: UpdatePullRequestReviewCommentInput!): UpdatePullRequestReviewCommentPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2FieldConfigurationEdge { """ - Update a Git Ref. + A cursor for use in pagination. """ - updateRef(input: UpdateRefInput!): UpdateRefPayload + cursor: String! """ - 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. + The item at the end of the edge. """ - updateRefs(input: UpdateRefsInput!): UpdateRefsPayload @preview(toggledBy: "update-refs-preview") + node: ProjectV2FieldConfiguration +} +""" +The connection type for ProjectV2Field. +""" +type ProjectV2FieldConnection { """ - Update information about a repository. + A list of edges. """ - updateRepository(input: UpdateRepositoryInput!): UpdateRepositoryPayload + edges: [ProjectV2FieldEdge] """ - Updates the state for subscribable subjects. + A list of nodes. """ - updateSubscription(input: UpdateSubscriptionInput!): UpdateSubscriptionPayload + nodes: [ProjectV2Field] """ - Updates a team discussion. + Information to aid in pagination. """ - updateTeamDiscussion(input: UpdateTeamDiscussionInput!): UpdateTeamDiscussionPayload + pageInfo: PageInfo! """ - Updates a discussion comment. + Identifies the total count of items in the connection. """ - updateTeamDiscussionComment(input: UpdateTeamDiscussionCommentInput!): UpdateTeamDiscussionCommentPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2FieldEdge { """ - Updates team review assignment. + A cursor for use in pagination. """ - updateTeamReviewAssignment(input: UpdateTeamReviewAssignmentInput!): UpdateTeamReviewAssignmentPayload @preview(toggledBy: "stone-crop-preview") + cursor: String! """ - Replaces the repository's topics with the given topics. + The item at the end of the edge. """ - updateTopics(input: UpdateTopicsInput!): UpdateTopicsPayload + node: ProjectV2Field } """ -An object with an ID. +Ordering options for project v2 field connections """ -interface Node { +input ProjectV2FieldOrder { """ - ID of the object. + The ordering direction. """ - id: ID! + direction: OrderDirection! + + """ + The field to order the project v2 fields by. + """ + field: ProjectV2FieldOrderField! } """ -Metadata for an audit entry with action oauth_application.* +Properties by which project v2 field connections can be ordered. """ -interface OauthApplicationAuditEntryData { +enum ProjectV2FieldOrderField { """ - The name of the OAuth Application. + Order project v2 fields by creation time """ - oauthApplicationName: String + CREATED_AT """ - The HTTP path for the OAuth Application + Order project v2 fields by name """ - oauthApplicationResourcePath: URI + NAME """ - The HTTP URL for the OAuth Application + Order project v2 fields by position """ - oauthApplicationUrl: URI + POSITION } """ -Audit log entry for a oauth_application.create event. +The type of a project field. """ -type OauthApplicationCreateAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { +enum ProjectV2FieldType { """ - The action name + Assignees """ - action: String! + ASSIGNEES """ - The user who initiated the action + Date """ - actor: AuditEntryActor + DATE """ - The IP address of the actor + Iteration """ - actorIp: String + ITERATION """ - A readable representation of the actor's location + Labels """ - actorLocation: ActorLocation + LABELS """ - The username of the user who initiated the action + Linked Pull Requests """ - actorLogin: String + LINKED_PULL_REQUESTS """ - The HTTP path for the actor. + Milestone """ - actorResourcePath: URI + MILESTONE """ - The HTTP URL for the actor. + Number """ - actorUrl: URI + NUMBER """ - The application URL of the OAuth Application. + Repository """ - applicationUrl: URI + REPOSITORY """ - The callback URL of the OAuth Application. + Reviewers """ - callbackUrl: URI + REVIEWERS """ - The time the action was initiated + Single Select """ - createdAt: PreciseDateTime! - id: ID! + SINGLE_SELECT """ - The name of the OAuth Application. + Text """ - oauthApplicationName: String + TEXT """ - The HTTP path for the OAuth Application + Title """ - oauthApplicationResourcePath: URI + TITLE """ - The HTTP URL for the OAuth Application + Tracked by """ - oauthApplicationUrl: URI + TRACKED_BY """ - The corresponding operation type for the action + Tracks """ - operationType: OperationType + 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 { """ - The Organization associated with the Audit Entry. + The ISO 8601 date to set on the field. """ - organization: Organization + date: Date """ - The name of the Organization. + The id of the iteration to set on the field. """ - organizationName: String + iterationId: String """ - The HTTP path for the organization + The number to set on the field. """ - organizationResourcePath: URI + number: Float """ - The HTTP URL for the organization + The id of the single select option to set on the field. """ - organizationUrl: URI + singleSelectOptionId: String """ - The rate limit of the OAuth Application. + The text to set on the field. """ - rateLimit: Int + text: String +} +""" +Ways in which to filter lists of projects. +""" +input ProjectV2Filters { """ - The state of the OAuth Application. + List project v2 filtered by the state given. """ - state: OauthApplicationCreateAuditEntryState + state: ProjectV2State +} +""" +An item within a Project. +""" +type ProjectV2Item implements Node { """ - The user affected by the action + The content of the referenced draft issue, issue, or pull request """ - user: User + content: ProjectV2ItemContent """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the date and time when the object was created. """ - userLogin: String + createdAt: DateTime! """ - The HTTP path for the user. + The actor who created the item. """ - userResourcePath: URI + creator: Actor """ - The HTTP URL for the user. + Identifies the primary key from the database. """ - userUrl: URI -} + databaseId: Int -""" -The state of an OAuth Application when it was created. -""" -enum OauthApplicationCreateAuditEntryState { """ - The OAuth Application was active and allowed to have OAuth Accesses. + The field value of the first project field which matches the 'name' argument that is set on the item. """ - ACTIVE + fieldValueByName( + """ + The name of the field to return the field value of + """ + name: String! + ): ProjectV2ItemFieldValue """ - The OAuth Application was in the process of being deleted. + The field values that are set on the item. """ - PENDING_DELETION + fieldValues( + """ + 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 item field values returned from the connection + """ + orderBy: ProjectV2ItemFieldValueOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemFieldValueConnection! + id: ID! """ - The OAuth Application was suspended from generating OAuth Accesses due to abuse or security concerns. + Whether the item is archived. """ - SUSPENDED -} + isArchived: Boolean! -""" -The corresponding operation type for the action -""" -enum OperationType { """ - An existing resource was accessed + The project that contains this item. """ - ACCESS + project: ProjectV2! """ - A resource performed an authentication event + The type of the item. """ - AUTHENTICATION + type: ProjectV2ItemType! """ - A new resource was created + Identifies the date and time when the object was last updated. """ - CREATE + updatedAt: DateTime! +} +""" +The connection type for ProjectV2Item. +""" +type ProjectV2ItemConnection { """ - An existing resource was modified + A list of edges. """ - MODIFY + edges: [ProjectV2ItemEdge] """ - An existing resource was removed + A list of nodes. """ - REMOVE + nodes: [ProjectV2Item] """ - An existing resource was restored + Information to aid in pagination. """ - RESTORE + pageInfo: PageInfo! """ - An existing resource was transferred between multiple resources + Identifies the total count of items in the connection. """ - TRANSFER + totalCount: Int! } """ -Possible directions in which to order a list of items when provided an `orderBy` argument. +Types that can be inside Project Items. """ -enum OrderDirection { +union ProjectV2ItemContent = DraftIssue | Issue | PullRequest + +""" +An edge in a connection. +""" +type ProjectV2ItemEdge { """ - Specifies an ascending order for a given `orderBy` argument. + A cursor for use in pagination. """ - ASC + cursor: String! """ - Specifies a descending order for a given `orderBy` argument. + The item at the end of the edge. """ - DESC + node: ProjectV2Item } """ -Audit log entry for a org.add_billing_manager +The value of a date field in a Project item. """ -type OrgAddBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ItemFieldDateValue implements Node & ProjectV2ItemFieldValueCommon { """ - The action name + Identifies the date and time when the object was created. """ - action: String! + createdAt: DateTime! """ - The user who initiated the action + The actor who created the item. """ - actor: AuditEntryActor + creator: Actor """ - 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 + Date value for the field """ - actorLocation: ActorLocation + date: Date """ - The username of the user who initiated the action + The project field that contains this value. """ - actorLogin: String + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP path for the actor. + The project item that contains this value. """ - actorResourcePath: URI + item: ProjectV2Item! """ - The HTTP URL for the actor. + Identifies the date and time when the object was last updated. """ - actorUrl: URI + updatedAt: DateTime! +} +""" +The value of an iteration field in a Project item. +""" +type ProjectV2ItemFieldIterationValue implements Node & ProjectV2ItemFieldValueCommon { """ - The time the action was initiated + Identifies the date and time when the object was created. """ - createdAt: PreciseDateTime! - id: ID! + createdAt: DateTime! """ - The email address used to invite a billing manager for the organization. + The actor who created the item. """ - invitationEmail: String + creator: Actor """ - The corresponding operation type for the action + Identifies the primary key from the database. """ - operationType: OperationType + databaseId: Int """ - The Organization associated with the Audit Entry. + The duration of the iteration in days. """ - organization: Organization + duration: Int! """ - The name of the Organization. + The project field that contains this value. """ - organizationName: String + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP path for the organization + The project item that contains this value. """ - organizationResourcePath: URI + item: ProjectV2Item! """ - The HTTP URL for the organization + The ID of the iteration. """ - organizationUrl: URI + iterationId: String! """ - The user affected by the action + The start date of the iteration. """ - user: User + startDate: Date! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The title of the iteration. """ - userLogin: String + title: String! """ - The HTTP path for the user. + The title of the iteration, with HTML. """ - userResourcePath: URI + titleHTML: String! """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -Audit log entry for a org.add_member +The value of the labels field in a Project item. """ -type OrgAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ItemFieldLabelValue { """ - The action name + The field that contains this value. """ - action: String! + field: ProjectV2FieldConfiguration! """ - The user who initiated the action + Labels value of a field """ - actor: AuditEntryActor + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The IP address of the actor - """ - actorIp: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): LabelConnection +} +""" +The value of a milestone field in a Project item. +""" +type ProjectV2ItemFieldMilestoneValue { """ - The HTTP path for the actor. + The field that contains this value. """ - actorResourcePath: URI + field: ProjectV2FieldConfiguration! """ - The HTTP URL for the actor. + Milestone value of a field """ - actorUrl: URI + milestone: Milestone +} +""" +The value of a number field in a Project item. +""" +type ProjectV2ItemFieldNumberValue implements Node & ProjectV2ItemFieldValueCommon { """ - The time the action was initiated + Identifies the date and time when the object was created. """ - createdAt: PreciseDateTime! - id: ID! + createdAt: DateTime! """ - The corresponding operation type for the action + The actor who created the item. """ - operationType: OperationType + creator: Actor """ - The Organization associated with the Audit Entry. + Identifies the primary key from the database. """ - organization: Organization + databaseId: Int """ - The name of the Organization. + The project field that contains this value. """ - organizationName: String + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP path for the organization + The project item that contains this value. """ - organizationResourcePath: URI + item: ProjectV2Item! """ - The HTTP URL for the organization + Number as a float(8) """ - organizationUrl: URI + number: Float """ - The permission level of the member added to the organization. + Identifies the date and time when the object was last updated. """ - permission: OrgAddMemberAuditEntryPermission + updatedAt: DateTime! +} +""" +The value of a pull request field in a Project item. +""" +type ProjectV2ItemFieldPullRequestValue { """ - The user affected by the action + The field that contains this value. """ - user: User + field: ProjectV2FieldConfiguration! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The pull requests for this field """ - userLogin: String + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP URL for the user. - """ - userUrl: URI + """ + 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 permissions available to members on an Organization. +The value of a repository field in a Project item. """ -enum OrgAddMemberAuditEntryPermission { +type ProjectV2ItemFieldRepositoryValue { """ - Can read, clone, push, and add collaborators to repositories. + The field that contains this value. """ - ADMIN + field: ProjectV2FieldConfiguration! """ - Can read and clone repositories. + The repository for this field. """ - READ + repository: Repository } """ -Audit log entry for a org.block_user +The value of a reviewers field in a Project item. """ -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 +type ProjectV2ItemFieldReviewerValue { """ - actorLocation: ActorLocation - - """ - The username of the user who initiated the action + The field that contains this value. """ - actorLogin: String + field: ProjectV2FieldConfiguration! """ - The HTTP path for the actor. + The reviewers for this field. """ - actorResourcePath: URI + reviewers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for the actor. - """ - actorUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The blocked user. - """ - blockedUser: User + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The username of the blocked user. - """ - blockedUserName: String + """ + 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 { """ - The HTTP path for the blocked user. + The color applied to the selected single-select option. """ - blockedUserResourcePath: URI + color: ProjectV2SingleSelectFieldOptionColor! """ - The HTTP URL for the blocked user. + Identifies the date and time when the object was created. """ - blockedUserUrl: URI + createdAt: DateTime! """ - The time the action was initiated + The actor who created the item. """ - createdAt: PreciseDateTime! - id: ID! + creator: Actor """ - The corresponding operation type for the action + Identifies the primary key from the database. """ - operationType: OperationType + databaseId: Int """ - The Organization associated with the Audit Entry. + A plain-text description of the selected single-select option, such as what the option means. """ - organization: Organization + description: String """ - The name of the Organization. + The description of the selected single-select option, including HTML tags. """ - organizationName: String + descriptionHTML: String """ - The HTTP path for the organization + The project field that contains this value. """ - organizationResourcePath: URI + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP URL for the organization + The project item that contains this value. """ - organizationUrl: URI + item: ProjectV2Item! """ - The user affected by the action + The name of the selected single select option. """ - user: User + name: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The html name of the selected single select option. """ - userLogin: String + nameHTML: String """ - The HTTP path for the user. + The id of the selected single select option. """ - userResourcePath: URI + optionId: String """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -Audit log entry for a org.config.disable_collaborators_only event. +The value of a text field in a Project item. """ -type OrgConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ItemFieldTextValue implements Node & ProjectV2ItemFieldValueCommon { """ - The action name + Identifies the date and time when the object was created. """ - action: String! + createdAt: DateTime! """ - The user who initiated the action + The actor who created the item. """ - actor: AuditEntryActor + creator: Actor """ - 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 + The project field that contains this value. """ - actorLocation: ActorLocation + field: ProjectV2FieldConfiguration! + id: ID! """ - The username of the user who initiated the action + The project item that contains this value. """ - actorLogin: String + item: ProjectV2Item! """ - The HTTP path for the actor. + Text value of a field """ - actorResourcePath: URI + text: String """ - The HTTP URL for the actor. + Identifies the date and time when the object was last updated. """ - actorUrl: URI + updatedAt: DateTime! +} +""" +The value of a user field in a Project item. +""" +type ProjectV2ItemFieldUserValue { """ - The time the action was initiated + The field that contains this value. """ - createdAt: PreciseDateTime! - id: ID! + field: ProjectV2FieldConfiguration! """ - The corresponding operation type for the action + The users for this field """ - operationType: OperationType + users( + """ + 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 + ): 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 { """ - The HTTP path for the organization + Identifies the date and time when the object was created. """ - organizationResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the organization + The actor who created the item. """ - organizationUrl: URI + creator: Actor """ - The user affected by the action + Identifies the primary key from the database. """ - user: User + databaseId: Int """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The project field that contains this value. """ - userLogin: String + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP path for the user. + The project item that contains this value. """ - userResourcePath: URI + item: ProjectV2Item! """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -Audit log entry for a org.config.enable_collaborators_only event. +The connection type for ProjectV2ItemFieldValue. """ -type OrgConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - +type ProjectV2ItemFieldValueConnection { """ - The user who initiated the action + A list of edges. """ - actor: AuditEntryActor + edges: [ProjectV2ItemFieldValueEdge] """ - The IP address of the actor + A list of nodes. """ - actorIp: String + nodes: [ProjectV2ItemFieldValue] """ - 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 ProjectV2ItemFieldValueEdge { """ - 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: ProjectV2ItemFieldValue +} +""" +Ordering options for project v2 item field value connections +""" +input ProjectV2ItemFieldValueOrder { """ - The time the action was initiated + The ordering direction. """ - createdAt: PreciseDateTime! - id: ID! + direction: OrderDirection! """ - The corresponding operation type for the action + The field to order the project v2 item field values by. """ - operationType: OperationType + field: ProjectV2ItemFieldValueOrderField! +} +""" +Properties by which project v2 item field value connections can be ordered. +""" +enum ProjectV2ItemFieldValueOrderField { """ - The Organization associated with the Audit Entry. + Order project v2 item field values by the their position in the project """ - organization: Organization + POSITION +} +""" +Ordering options for project v2 item connections +""" +input ProjectV2ItemOrder { """ - The name of the Organization. + The ordering direction. """ - organizationName: String + direction: OrderDirection! """ - The HTTP path for the organization + The field to order the project v2 items by. """ - organizationResourcePath: URI + field: ProjectV2ItemOrderField! +} +""" +Properties by which project v2 item connections can be ordered. +""" +enum ProjectV2ItemOrderField { """ - The HTTP URL for the organization + Order project v2 items by the their position in the project """ - organizationUrl: URI + POSITION +} +""" +The type of a project item. +""" +enum ProjectV2ItemType { """ - The user affected by the action + Draft Issue """ - user: User + DRAFT_ISSUE """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Issue """ - userLogin: String + ISSUE """ - The HTTP path for the user. + Pull Request """ - userResourcePath: URI + PULL_REQUEST """ - The HTTP URL for the user. + Redacted Item """ - userUrl: URI + REDACTED } """ -Audit log entry for a org.create event. +An iteration field inside a project. """ -type OrgCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2IterationField implements Node & ProjectV2FieldCommon { """ - The action name + Iteration configuration settings """ - action: String! + configuration: ProjectV2IterationFieldConfiguration! """ - 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 + The field's type. """ - actorIp: String + dataType: ProjectV2FieldType! """ - A readable representation of the actor's location + Identifies the primary key from the database. """ - actorLocation: ActorLocation + databaseId: Int + id: ID! """ - The username of the user who initiated the action + The project field's name. """ - actorLogin: String + name: String! """ - The HTTP path for the actor. + The project that contains this field. """ - actorResourcePath: URI + project: ProjectV2! """ - The HTTP URL for the actor. + Identifies the date and time when the object was last updated. """ - actorUrl: URI + updatedAt: DateTime! +} +""" +Iteration field configuration for a project. +""" +type ProjectV2IterationFieldConfiguration { """ - The billing plan for the Organization. + The iteration's completed iterations """ - billingPlan: OrgCreateAuditEntryBillingPlan + completedIterations: [ProjectV2IterationFieldIteration!]! """ - The time the action was initiated + The iteration's duration in days """ - createdAt: PreciseDateTime! - id: ID! + duration: Int! """ - The corresponding operation type for the action + The iteration's iterations """ - operationType: OperationType + iterations: [ProjectV2IterationFieldIteration!]! """ - The Organization associated with the Audit Entry. + The iteration's start day of the week """ - organization: Organization + startDay: Int! +} +""" +Iteration field iteration settings for a project. +""" +type ProjectV2IterationFieldIteration { """ - The name of the Organization. + The iteration's duration in days """ - organizationName: String + duration: Int! """ - The HTTP path for the organization + The iteration's ID. """ - organizationResourcePath: URI + id: String! """ - The HTTP URL for the organization + The iteration's start date """ - organizationUrl: URI + startDate: Date! """ - The user affected by the action + The iteration's title. """ - user: User + title: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The iteration's html title. """ - userLogin: String + titleHTML: String! +} +""" +Ways in which lists of projects can be ordered upon return. +""" +input ProjectV2Order { """ - The HTTP path for the user. + The direction in which to order projects by the specified field. """ - userResourcePath: URI + direction: OrderDirection! """ - The HTTP URL for the user. + The field in which to order projects by. """ - userUrl: URI + field: ProjectV2OrderField! } """ -The billing plans available for organizations. +Properties by which projects can be ordered. """ -enum OrgCreateAuditEntryBillingPlan { - """ - Team Plan - """ - BUSINESS - +enum ProjectV2OrderField { """ - Enterprise Cloud Plan + The project's date and time of creation """ - BUSINESS_PLUS + CREATED_AT """ - Free Plan + The project's number """ - FREE + NUMBER """ - Tiered Per Seat Plan + The project's title """ - TIERED_PER_SEAT + TITLE """ - Legacy Unlimited Plan + The project's date and time of update """ - UNLIMITED + UPDATED_AT } """ -Audit log entry for a org.disable_oauth_app_restrictions event. +Represents an owner of a project (beta). """ -type OrgDisableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! +interface ProjectV2Owner { + id: ID! """ - The user who initiated the action + Find a project by number. """ - actor: AuditEntryActor + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - The IP address of the actor + A list of projects under the owner. """ - actorIp: String + projectsV2( + """ + 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 + + """ + 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 actor. + Recent projects that this user has modified in the context of the owner. """ - actorResourcePath: 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! +} +""" +The possible roles of a collaborator on a project. +""" +enum ProjectV2Roles { """ - The HTTP URL for the actor. + The collaborator can view, edit, and maange the settings of the project """ - actorUrl: URI + ADMIN """ - The time the action was initiated + The collaborator has no direct access to the project """ - createdAt: PreciseDateTime! - id: ID! + NONE """ - The corresponding operation type for the action + The collaborator can view the project """ - operationType: OperationType + READER """ - The Organization associated with the Audit Entry. + The collaborator can view and edit the project """ - organization: Organization + WRITER +} +""" +A single select field inside a project. +""" +type ProjectV2SingleSelectField implements Node & ProjectV2FieldCommon { """ - 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 field's type. """ - organizationResourcePath: URI + dataType: ProjectV2FieldType! """ - 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 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( + """ + Filter returned options to only those matching these names, case insensitive. + """ + names: [String!] + ): [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! } """ -Audit log entry for a org.disable_saml event. +Single select field option for a configuration for a project. """ -type OrgDisableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2SingleSelectFieldOption { """ - The action name + The option's display color. """ - action: String! + color: ProjectV2SingleSelectFieldOptionColor! """ - The user who initiated the action + The option's plain-text description. """ - actor: AuditEntryActor + description: String! """ - The IP address of the actor + The option's description, possibly containing HTML. """ - actorIp: String + descriptionHTML: String! """ - A readable representation of the actor's location + The option's ID. """ - actorLocation: ActorLocation + id: String! """ - The username of the user who initiated the action + The option's name. """ - actorLogin: String + name: String! """ - The HTTP path for the actor. + The option's html name. """ - actorResourcePath: URI + nameHTML: String! +} +""" +The display color of a single-select field option. +""" +enum ProjectV2SingleSelectFieldOptionColor { """ - The HTTP URL for the actor. + BLUE """ - actorUrl: URI + BLUE """ - The time the action was initiated + GRAY """ - createdAt: PreciseDateTime! + GRAY """ - The SAML provider's digest algorithm URL. + GREEN """ - digestMethodUrl: URI - id: ID! + GREEN """ - The SAML provider's issuer URL. + ORANGE """ - issuerUrl: URI + ORANGE """ - The corresponding operation type for the action + PINK """ - operationType: OperationType + PINK """ - The Organization associated with the Audit Entry. + PURPLE """ - organization: Organization + PURPLE """ - The name of the Organization. + RED """ - organizationName: String + RED """ - The HTTP path for the organization + YELLOW """ - organizationResourcePath: URI + YELLOW +} +""" +Represents a single select field option +""" +input ProjectV2SingleSelectFieldOptionInput { """ - The HTTP URL for the organization + The display color of the option """ - organizationUrl: URI + color: ProjectV2SingleSelectFieldOptionColor! """ - The SAML provider's signature algorithm URL. + The description text of the option """ - signatureMethodUrl: URI + description: String! """ - The SAML provider's single sign-on URL. + The name of the option """ - singleSignOnUrl: URI + name: String! +} +""" +Represents a sort by field and direction. +""" +type ProjectV2SortBy { """ - The user affected by the action + The direction of the sorting. Possible values are ASC and DESC. """ - user: User + direction: OrderDirection! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The field by which items are sorted. """ - userLogin: String + field: ProjectV2Field! +} +""" +The connection type for ProjectV2SortBy. +""" +type ProjectV2SortByConnection { """ - The HTTP path for the user. + A list of edges. """ - userResourcePath: URI + edges: [ProjectV2SortByEdge] """ - The HTTP URL for the user. + A list of nodes. """ - userUrl: URI -} + nodes: [ProjectV2SortBy] -""" -Audit log entry for a org.disable_two_factor_requirement event. -""" -type OrgDisableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Information to aid in pagination. """ - action: String! + pageInfo: PageInfo! """ - The user who initiated the action + Identifies the total count of items in the connection. """ - actor: AuditEntryActor + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2SortByEdge { """ - The IP address of the actor + A cursor for use in pagination. """ - actorIp: String + cursor: String! """ - A readable representation of the actor's location + The item at the end of the edge. """ - actorLocation: ActorLocation + node: ProjectV2SortBy +} +""" +Represents a sort by field and direction. +""" +type ProjectV2SortByField { """ - The username of the user who initiated the action + The direction of the sorting. Possible values are ASC and DESC. """ - actorLogin: String + direction: OrderDirection! """ - The HTTP path for the actor. + The field by which items are sorted. """ - actorResourcePath: URI + field: ProjectV2FieldConfiguration! +} +""" +The connection type for ProjectV2SortByField. +""" +type ProjectV2SortByFieldConnection { """ - The HTTP URL for the actor. + A list of edges. """ - actorUrl: URI + edges: [ProjectV2SortByFieldEdge] """ - The time the action was initiated + A list of nodes. """ - createdAt: PreciseDateTime! - id: ID! + nodes: [ProjectV2SortByField] """ - 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 ProjectV2SortByFieldEdge { """ - 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: ProjectV2SortByField +} +""" +The possible states of a project v2. +""" +enum ProjectV2State { """ - The HTTP URL for the organization + A project v2 that has been closed """ - organizationUrl: URI + CLOSED """ - The user affected by the action + A project v2 that is still open """ - user: User + OPEN +} +""" +A view within a ProjectV2. +""" +type ProjectV2View implements Node { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the date and time when the object was created. """ - userLogin: String + createdAt: DateTime! """ - The HTTP path for the user. + Identifies the primary key from the database. """ - userResourcePath: URI + databaseId: Int """ - The HTTP URL for the user. + The view's visible fields. """ - userUrl: URI -} + fields( + """ + 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 -""" -Audit log entry for a org.enable_oauth_app_restrictions event. -""" -type OrgEnableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The project view's filter. """ - action: String! + filter: String """ - The user who initiated the action + The view's group-by field. """ - actor: AuditEntryActor + 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 IP address of the actor + The view's group-by field. """ - actorIp: String + 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! """ - A readable representation of the actor's location + The project view's layout. """ - actorLocation: ActorLocation + layout: ProjectV2ViewLayout! """ - The username of the user who initiated the action + The project view's name. """ - actorLogin: String + name: String! """ - The HTTP path for the actor. + The project view's number. """ - actorResourcePath: URI + number: Int! """ - The HTTP URL for the actor. + The project that contains this view. """ - actorUrl: URI + project: ProjectV2! """ - The time the action was initiated + The view's sort-by config. """ - createdAt: PreciseDateTime! - id: ID! + sortBy( + """ + 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 + ): 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 corresponding operation type for the action + The view's sort-by config. """ - operationType: OperationType + sortByFields( + """ + 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 + ): ProjectV2SortByFieldConnection """ - The Organization associated with the Audit Entry. + Identifies the date and time when the object was last updated. """ - organization: Organization + updatedAt: DateTime! """ - The name of the Organization. + The view's vertical-group-by field. """ - organizationName: String + 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." + ) """ - The HTTP path for the organization + The view's vertical-group-by field. """ - organizationResourcePath: URI + 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 + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection """ - The HTTP URL for the organization + The view's visible fields. """ - organizationUrl: URI + visibleFields( + """ + 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#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 user affected by the action + A list of edges. """ - user: User + edges: [ProjectV2ViewEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [ProjectV2View] """ - 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 org.enable_saml event. +An edge in a connection. """ -type OrgEnableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ViewEdge { """ - 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: ProjectV2View +} +""" +The layout of a project v2 view. +""" +enum ProjectV2ViewLayout { """ - The IP address of the actor + Board layout """ - actorIp: String + BOARD_LAYOUT """ - A readable representation of the actor's location + Roadmap layout """ - actorLocation: ActorLocation + ROADMAP_LAYOUT """ - The username of the user who initiated the action + Table layout """ - actorLogin: String + TABLE_LAYOUT +} +""" +Ordering options for project v2 view connections +""" +input ProjectV2ViewOrder { """ - The HTTP path for the actor. + The ordering direction. """ - actorResourcePath: URI + direction: OrderDirection! """ - The HTTP URL for the actor. + The field to order the project v2 views by. """ - actorUrl: URI + field: ProjectV2ViewOrderField! +} +""" +Properties by which project v2 view connections can be ordered. +""" +enum ProjectV2ViewOrderField { """ - The time the action was initiated + Order project v2 views by creation time """ - createdAt: PreciseDateTime! + CREATED_AT """ - The SAML provider's digest algorithm URL. + Order project v2 views by name """ - digestMethodUrl: URI - id: ID! + NAME """ - The SAML provider's issuer URL. + Order project v2 views by position """ - issuerUrl: URI + POSITION +} +""" +A workflow inside a project. +""" +type ProjectV2Workflow implements Node { """ - The corresponding operation type for the action + Identifies the date and time when the object was created. """ - operationType: OperationType + createdAt: DateTime! """ - The Organization associated with the Audit Entry. + Identifies the primary key from the database. """ - organization: Organization + databaseId: Int """ - The name of the Organization. + The workflows' enabled state. """ - organizationName: String + enabled: Boolean! + id: ID! """ - The HTTP path for the organization + The workflows' name. """ - organizationResourcePath: URI + name: String! """ - The HTTP URL for the organization + The workflows' number. """ - organizationUrl: URI + number: Int! """ - The SAML provider's signature algorithm URL. + The project that contains this workflow. """ - signatureMethodUrl: URI + project: ProjectV2! """ - The SAML provider's single sign-on URL. + Identifies the date and time when the object was last updated. """ - singleSignOnUrl: URI + updatedAt: DateTime! +} +""" +The connection type for ProjectV2Workflow. +""" +type ProjectV2WorkflowConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [ProjectV2WorkflowEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [ProjectV2Workflow] """ - 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 org.enable_two_factor_requirement event. +An edge in a connection. """ -type OrgEnableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2WorkflowEdge { """ - 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: ProjectV2Workflow +} +""" +Ordering options for project v2 workflows connections +""" +input ProjectV2WorkflowOrder { """ - 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 the project v2 workflows by. """ - actorLocation: ActorLocation + field: ProjectV2WorkflowsOrderField! +} +""" +Properties by which project workflows can be ordered. +""" +enum ProjectV2WorkflowsOrderField { """ - The username of the user who initiated the action + The workflows' date and time of creation """ - actorLogin: String + CREATED_AT """ - The HTTP path for the actor. + The workflows' name """ - actorResourcePath: URI + NAME """ - The HTTP URL for the actor. + The workflows' number """ - actorUrl: URI + NUMBER """ - The time the action was initiated + The workflows' date and time of update """ - createdAt: PreciseDateTime! - id: ID! + UPDATED_AT +} +""" +A user's public key. +""" +type PublicKey implements Node { """ - The corresponding operation type for the action + The last time this authorization was used to perform an action. Values will be null for keys not owned by the user. """ - operationType: OperationType + accessedAt: DateTime """ - The Organization associated with the Audit Entry. + 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. """ - organization: Organization + createdAt: DateTime """ - The name of the Organization. + The fingerprint for this PublicKey. """ - organizationName: String + fingerprint: String! + id: ID! """ - The HTTP path for the organization + Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. """ - organizationResourcePath: URI + isReadOnly: Boolean """ - The HTTP URL for the organization + The public key string. """ - organizationUrl: URI + key: String! """ - The user affected by the action + 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. """ - user: User + updatedAt: DateTime +} +""" +The connection type for PublicKey. +""" +type PublicKeyConnection { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of edges. """ - userLogin: String + edges: [PublicKeyEdge] """ - The HTTP path for the user. + A list of nodes. """ - userResourcePath: URI + nodes: [PublicKey] """ - The HTTP URL for the user. + Information to aid in pagination. """ - userUrl: URI + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -Audit log entry for a org.invite_member event. +An edge in a connection. """ -type OrgInviteMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type PublicKeyEdge { """ - 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: PublicKey +} +""" +Autogenerated input type of PublishSponsorsTier +""" +input PublishSponsorsTierInput { """ - 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 ID of the draft tier to publish. """ - actorLocation: ActorLocation + tierId: ID! @possibleTypes(concreteTypes: ["SponsorsTier"]) +} +""" +Autogenerated return type of PublishSponsorsTier +""" +type PublishSponsorsTierPayload { """ - 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 tier that was published. """ - actorResourcePath: URI + sponsorsTier: SponsorsTier +} +""" +A repository pull request. +""" +type PullRequest implements Assignable & Closable & Comment & Labelable & Lockable & Node & ProjectV2Owner & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ - The HTTP URL for the actor. + Reason that the conversation was locked. """ - actorUrl: URI + activeLockReason: LockReason """ - The time the action was initiated + The number of additions in this pull request. """ - createdAt: PreciseDateTime! + additions: Int! """ - The email address of the organization invitation. + A list of Users assigned to this object. """ - email: String - 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 + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The organization invitation. + The actor who authored the comment. """ - organizationInvitation: OrganizationInvitation + author: Actor """ - The name of the Organization. + Author's association with the subject of the comment. """ - organizationName: String + authorAssociation: CommentAuthorAssociation! """ - The HTTP path for the organization + Returns the auto-merge request object if one exists for this pull request. """ - organizationResourcePath: URI + autoMergeRequest: AutoMergeRequest """ - The HTTP URL for the organization + Identifies the base Ref associated with the pull request. """ - organizationUrl: URI + baseRef: Ref """ - The user affected by the action + Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. """ - user: User + baseRefName: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. """ - userLogin: String + baseRefOid: GitObjectID! """ - The HTTP path for the user. + The repository associated with this pull request's base Ref. """ - userResourcePath: URI + baseRepository: Repository """ - The HTTP URL for the user. + The body as Markdown. """ - userUrl: URI -} + body: String! -""" -Audit log entry for a org.invite_to_business event. -""" -type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + The body rendered to HTML. """ - action: String! + bodyHTML: HTML! """ - The user who initiated the action + The body rendered to text. """ - actor: AuditEntryActor + bodyText: String! """ - The IP address of the actor + Whether or not the pull request is rebaseable. """ - actorIp: String + canBeRebased: Boolean! @preview(toggledBy: "merge-info-preview") """ - A readable representation of the actor's location + The number of changed files in this pull request. """ - actorLocation: ActorLocation + changedFiles: Int! """ - The username of the user who initiated the action + The HTTP path for the checks of this pull request. """ - actorLogin: String + checksResourcePath: URI! """ - The HTTP path for the actor. + The HTTP URL for the checks of this pull request. """ - actorResourcePath: URI + checksUrl: URI! """ - The HTTP URL for the actor. + `true` if the pull request is closed """ - actorUrl: URI + closed: Boolean! """ - The time the action was initiated + Identifies the date and time when the object was closed. """ - createdAt: PreciseDateTime! + closedAt: DateTime """ - The HTTP path for this enterprise. + List of issues that were may be closed by this pull request """ - enterpriseResourcePath: URI + closingIssuesReferences( + """ + 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 issues returned from the connection + """ + orderBy: IssueOrder + + """ + Return only manually linked Issues + """ + userLinkedOnly: Boolean = false + ): IssueConnection """ - The slug of the enterprise. + A list of comments associated with the pull request. """ - enterpriseSlug: 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 + + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder + ): IssueCommentConnection! """ - The HTTP URL for this enterprise. + A list of commits present in this pull request's head branch not present in the base branch. """ - enterpriseUrl: URI - id: ID! + 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! """ - The corresponding operation type for the action + Identifies the date and time when the object was created. """ - operationType: OperationType + createdAt: DateTime! """ - The Organization associated with the Audit Entry. + Check if this comment was created via an email reply. """ - organization: Organization + createdViaEmail: Boolean! """ - The name of the Organization. + Identifies the primary key from the database. """ - organizationName: String + databaseId: Int """ - The HTTP path for the organization + The number of deletions in this pull request. """ - organizationResourcePath: URI + deletions: Int! """ - The HTTP URL for the organization + The actor who edited this pull request's body. """ - organizationUrl: URI + editor: Actor """ - The user affected by the action + Lists the files changed within this pull request. """ - user: User + 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 """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the head Ref associated with the pull request. """ - userLogin: String + headRef: Ref """ - The HTTP path for the user. + Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. """ - userResourcePath: URI + headRefName: String! """ - The HTTP URL for the user. + Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. """ - userUrl: URI -} + headRefOid: GitObjectID! -""" -Audit log entry for a org.oauth_app_access_approved event. -""" -type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - The action name + The repository associated with this pull request's head Ref. """ - action: String! + headRepository: Repository """ - The user who initiated the action + The owner of the repository associated with this pull request's head Ref. """ - actor: AuditEntryActor + headRepositoryOwner: RepositoryOwner """ - The IP address of the actor + The hovercard information for this issue """ - actorIp: String + hovercard( + """ + Whether or not to include notification contexts + """ + includeNotificationContexts: Boolean = true + ): Hovercard! + id: ID! """ - A readable representation of the actor's location + Check if this comment was edited and includes an edit with the creation data """ - actorLocation: ActorLocation + includesCreatedEdit: Boolean! """ - The username of the user who initiated the action + The head and base repositories are different. """ - actorLogin: String + isCrossRepository: Boolean! """ - The HTTP path for the actor. + Identifies if the pull request is a draft. """ - actorResourcePath: URI + isDraft: Boolean! """ - The HTTP URL for the actor. + Is this pull request read by the viewer """ - actorUrl: URI + isReadByViewer: Boolean """ - The time the action was initiated + A list of labels associated with the object. """ - createdAt: PreciseDateTime! - id: ID! + 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 name of the OAuth Application. + The moment the editor made the last edit """ - oauthApplicationName: String + lastEditedAt: DateTime """ - The HTTP path for the OAuth Application + A list of latest reviews per user associated with the pull request. """ - oauthApplicationResourcePath: URI + latestOpinionatedReviews( + """ + 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 + + """ + Only return reviews from user who have write access to the repository + """ + writersOnly: Boolean = false + ): PullRequestReviewConnection """ - The HTTP URL for the OAuth Application + A list of latest reviews per user associated with the pull request that are not also pending review. """ - oauthApplicationUrl: URI + latestReviews( + """ + 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 + ): PullRequestReviewConnection """ - The corresponding operation type for the action + `true` if the pull request is locked """ - operationType: OperationType + locked: Boolean! """ - The Organization associated with the Audit Entry. + Indicates whether maintainers can modify the pull request. """ - organization: Organization + maintainerCanModify: Boolean! """ - The name of the Organization. + The commit that was created when this pull request was merged. """ - organizationName: String + mergeCommit: Commit """ - The HTTP path for the organization + The merge queue entry of the pull request in the base branch's merge queue """ - organizationResourcePath: URI + mergeQueueEntry: MergeQueueEntry """ - The HTTP URL for the organization + Detailed information about the current pull request merge state status. """ - organizationUrl: URI + mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview") """ - The user affected by the action + Whether or not the pull request can be merged based on the existence of merge conflicts. """ - user: User + mergeable: MergeableState! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Whether or not the pull request was merged. """ - userLogin: String + merged: Boolean! """ - The HTTP path for the user. + The date and time that the pull request was merged. """ - userResourcePath: URI + mergedAt: DateTime """ - The HTTP URL for the user. + The actor who merged the pull request. """ - userUrl: URI -} + mergedBy: Actor -""" -Audit log entry for a org.oauth_app_access_denied event. -""" -type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - The action name + Identifies the milestone associated with the pull request. """ - action: String! + milestone: Milestone """ - The user who initiated the action + Identifies the pull request number. """ - actor: AuditEntryActor + number: Int! """ - The IP address of the actor + A list of Users that are participating in the Pull Request conversation. """ - actorIp: String + 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! """ - A readable representation of the actor's location + The permalink to the pull request. """ - actorLocation: ActorLocation + permalink: URI! """ - The username of the user who initiated the action + 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. """ - actorLogin: String + potentialMergeCommit: Commit """ - The HTTP path for the actor. + List of project cards associated with this pull request. """ - actorResourcePath: 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 HTTP URL for the actor. + List of project items associated with this pull request. """ - actorUrl: URI + 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! """ - The time the action was initiated + Find a project by number. """ - createdAt: PreciseDateTime! - id: ID! + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - The name of the OAuth Application. + A list of projects under the owner. """ - oauthApplicationName: String + 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 path for the OAuth Application + Identifies when the comment was published at. """ - oauthApplicationResourcePath: URI + publishedAt: DateTime """ - The HTTP URL for the OAuth Application + A list of reactions grouped by content left on the subject. """ - oauthApplicationUrl: URI + reactionGroups: [ReactionGroup!] """ - The corresponding operation type for the action + A list of Reactions left on the Issue. """ - operationType: OperationType + 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 Organization associated with the Audit Entry. + The repository associated with this node. """ - organization: Organization + repository: Repository! """ - The name of the Organization. + The HTTP path for this pull request. """ - organizationName: String + resourcePath: URI! """ - The HTTP path for the organization + The HTTP path for reverting this pull request. """ - organizationResourcePath: URI + revertResourcePath: URI! """ - The HTTP URL for the organization + The HTTP URL for reverting this pull request. """ - organizationUrl: URI + revertUrl: URI! """ - The user affected by the action + The current status of this pull request with respect to code review. """ - user: User + reviewDecision: PullRequestReviewDecision """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of review requests associated with the pull request. """ - userLogin: String + reviewRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP URL for the user. - """ - userUrl: URI -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Audit log entry for a org.oauth_app_access_requested event. -""" -type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """ - The action name - """ - action: String! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ReviewRequestConnection """ - The user who initiated the action + The list of all review threads for this pull request. """ - actor: AuditEntryActor + reviewThreads( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The IP address of the actor - """ - actorIp: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewThreadConnection! """ - The HTTP path for the actor. + A list of reviews associated with the pull request. """ - actorResourcePath: URI + reviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for the actor. - """ - actorUrl: URI + """ + Filter by author of the review. + """ + author: 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 name of the OAuth Application. - """ - oauthApplicationName: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the OAuth Application - """ - oauthApplicationResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the OAuth Application - """ - oauthApplicationUrl: URI + """ + A list of states to filter the reviews. + """ + states: [PullRequestReviewState!] + ): PullRequestReviewConnection """ - The corresponding operation type for the action + Identifies the state of the pull request. """ - operationType: OperationType + state: PullRequestState! """ - The Organization associated with the Audit Entry. + A list of reviewer suggestions based on commit history and past review comments. """ - organization: Organization + suggestedReviewers: [SuggestedReviewer]! """ - The name of the Organization. + A list of events, comments, commits, etc. associated with the pull request. """ - organizationName: String + timeline( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for the organization - """ - 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 user affected by the action - """ - user: User + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: 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.") """ - The HTTP path for the user. + A list of events, comments, commits, etc. associated with the pull request. """ - userResourcePath: URI + timelineItems( + """ + 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.remove_billing_manager event. -""" -type OrgRemoveBillingManagerAuditEntry 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 + """ + Filter timeline items by type. + """ + itemTypes: [PullRequestTimelineItemsItemType!] - """ - The IP address of the actor - """ - actorIp: String + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Filter timeline items by a `since` timestamp. + """ + since: DateTime - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): PullRequestTimelineItemsConnection! """ - The HTTP path for the actor. + Identifies the pull request title. """ - actorResourcePath: URI + title: String! """ - The HTTP URL for the actor. + Identifies the pull request title rendered to HTML. """ - actorUrl: URI + titleHTML: HTML! """ - The time the action was initiated + Returns a count of how many comments this pull request has received. """ - createdAt: PreciseDateTime! - id: ID! + totalCommentsCount: Int """ - The corresponding operation type for the action + Identifies the date and time when the object was last updated. """ - operationType: OperationType + updatedAt: DateTime! """ - The Organization associated with the Audit Entry. + The HTTP URL for this pull request. """ - organization: Organization + url: URI! """ - The name of the Organization. + A list of edits to this content. """ - organizationName: String + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for the organization - """ - 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 reason for the billing manager being removed. - """ - reason: OrgRemoveBillingManagerAuditEntryReason + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The user affected by the action + Whether or not the viewer can apply suggestion. """ - user: User + viewerCanApplySuggestion: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Indicates if the object can be closed by the viewer. """ - userLogin: String + viewerCanClose: Boolean! """ - The HTTP path for the user. + Check if the viewer can restore the deleted head ref. """ - userResourcePath: URI + viewerCanDeleteHeadRef: Boolean! """ - The HTTP URL for the user. + Whether or not the viewer can disable auto-merge """ - userUrl: URI -} + viewerCanDisableAutoMerge: Boolean! -""" -The reason a billing manager was removed from an Organization. -""" -enum OrgRemoveBillingManagerAuditEntryReason { """ - SAML external identity missing + Can the viewer edit files within this pull request. """ - SAML_EXTERNAL_IDENTITY_MISSING + viewerCanEditFiles: Boolean! """ - SAML SSO enforcement requires an external identity + Whether or not the viewer can enable auto-merge """ - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + viewerCanEnableAutoMerge: Boolean! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + Indicates whether the viewer can bypass branch protections and merge the pull request immediately """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE -} + viewerCanMergeAsAdmin: Boolean! -""" -Audit log entry for a org.remove_member event. -""" -type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Can user react to this subject """ - action: String! + viewerCanReact: Boolean! """ - The user who initiated the action + Indicates if the object can be reopened by the viewer. """ - actor: AuditEntryActor + viewerCanReopen: Boolean! """ - The IP address of the actor + Check if the viewer is able to change their subscription status for the repository. """ - actorIp: String + viewerCanSubscribe: Boolean! """ - A readable representation of the actor's location + Check if the current viewer can update this object. """ - actorLocation: ActorLocation + viewerCanUpdate: Boolean! """ - The username of the user who initiated the action + Whether or not the viewer can update the head ref of this PR, by merging or rebasing the base ref. + If the head ref is up to date or unable to be updated by this user, this will return false. """ - actorLogin: String + viewerCanUpdateBranch: Boolean! """ - The HTTP path for the actor. + Reasons why the current viewer can not update this comment. """ - actorResourcePath: URI + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The HTTP URL for the actor. + Did the viewer author this comment. """ - actorUrl: URI + viewerDidAuthor: Boolean! """ - The time the action was initiated + The latest review given from the viewer. """ - createdAt: PreciseDateTime! - id: ID! + viewerLatestReview: PullRequestReview """ - The types of membership the member has with the organization. + The person who has requested the viewer for review on this pull request. """ - membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] + viewerLatestReviewRequest: ReviewRequest """ - The corresponding operation type for the action + The merge body text for the viewer and method. """ - operationType: OperationType + viewerMergeBodyText( + """ + The merge method for the message. + """ + mergeType: PullRequestMergeMethod + ): String! """ - The Organization associated with the Audit Entry. + The merge headline text for the viewer and method. """ - organization: Organization + viewerMergeHeadlineText( + """ + The merge method for the message. + """ + mergeType: PullRequestMergeMethod + ): String! """ - The name of the Organization. + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - organizationName: String + viewerSubscription: SubscriptionState +} +""" +The possible methods for updating a pull request's head branch with the base branch. +""" +enum PullRequestBranchUpdateMethod { """ - The HTTP path for the organization + Update branch via merge """ - organizationResourcePath: URI + MERGE """ - The HTTP URL for the organization + Update branch via rebase """ - organizationUrl: URI + REBASE +} +""" +A file changed in a pull request. +""" +type PullRequestChangedFile { """ - The reason for the member being removed. + The number of additions to the file. """ - reason: OrgRemoveMemberAuditEntryReason + 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! } """ -The type of membership a user has with an Organization. +The connection type for PullRequestChangedFile. """ -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 - +type PullRequestChangedFileConnection { """ - 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: [PullRequestChangedFileEdge] """ - A direct member is a user that is a member of the Organization. + A list of nodes. """ - DIRECT_MEMBER + nodes: [PullRequestChangedFile] """ - 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. + Information to aid in pagination. """ - OUTSIDE_COLLABORATOR + pageInfo: PageInfo! """ - 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. + Identifies the total count of items in the connection. """ - UNAFFILIATED + totalCount: Int! } """ -The reason a member was removed from an Organization. +An edge in a connection. """ -enum OrgRemoveMemberAuditEntryReason { +type PullRequestChangedFileEdge { """ - SAML external identity missing + A cursor for use in pagination. """ - SAML_EXTERNAL_IDENTITY_MISSING + cursor: String! """ - SAML SSO enforcement requires an external identity + The item at the end of the edge. """ - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + node: PullRequestChangedFile +} +""" +Represents a Git commit part of a pull request. +""" +type PullRequestCommit implements Node & UniformResourceLocatable { """ - User was removed from organization during account recovery + The Git commit object """ - TWO_FACTOR_ACCOUNT_RECOVERY + commit: Commit! + id: ID! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The pull request this commit belongs to """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + pullRequest: PullRequest! """ - User account has been deleted + The HTTP path for this pull request commit """ - USER_ACCOUNT_DELETED + resourcePath: URI! + + """ + The HTTP URL for this pull request commit + """ + url: URI! } """ -Audit log entry for a org.remove_outside_collaborator event. +Represents a commit comment thread part of a pull request. """ -type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type PullRequestCommitCommentThread implements Node & RepositoryNode { """ - The action name + The comments that exist in this thread. """ - action: String! + comments( + """ + 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 + ): CommitCommentConnection! """ - The username of the user who initiated the action + The commit the comments were made on. """ - actorLogin: String + commit: Commit! + id: ID! """ - The HTTP path for the actor. + The file the comments were made on. """ - actorResourcePath: URI + path: String """ - The HTTP URL for the actor. + The position in the diff for the commit that the comment was made on. """ - actorUrl: URI + position: Int """ - The time the action was initiated + The pull request this commit comment thread belongs to """ - createdAt: PreciseDateTime! - id: ID! + pullRequest: PullRequest! """ - The types of membership the outside collaborator has with the organization. + The repository associated with this node. """ - membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] + repository: Repository! +} +""" +The connection type for PullRequestCommit. +""" +type PullRequestCommitConnection { """ - The corresponding operation type for the action + A list of edges. """ - operationType: OperationType + edges: [PullRequestCommitEdge] """ - The Organization associated with the Audit Entry. + A list of nodes. """ - organization: Organization + nodes: [PullRequestCommit] """ - 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! +} +""" +An edge in a connection. +""" +type PullRequestCommitEdge { """ - The HTTP URL for the organization + A cursor for use in pagination. """ - organizationUrl: URI + cursor: String! """ - The reason for the outside collaborator being removed from the Organization. + The item at the end of the edge. """ - reason: OrgRemoveOutsideCollaboratorAuditEntryReason + node: PullRequestCommit +} +""" +The connection type for PullRequest. +""" +type PullRequestConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [PullRequestEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [PullRequest] """ - 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! } """ -The type of membership a user has with an Organization. +This aggregates pull requests opened by a user within one repository. """ -enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { +type PullRequestContributionsByRepository { """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + The pull request contributions. """ - BILLING_MANAGER + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - 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 + """ + 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} + ): CreatedPullRequestContributionConnection! """ - 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. + The repository in which the pull requests were opened. """ - UNAFFILIATED + repository: Repository! } """ -The reason an outside collaborator was removed from an Organization. +An edge in a connection. """ -enum OrgRemoveOutsideCollaboratorAuditEntryReason { +type PullRequestEdge { """ - SAML external identity missing + A cursor for use in pagination. """ - SAML_EXTERNAL_IDENTITY_MISSING + cursor: String! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The item at the end of the edge. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + node: PullRequest } """ -Audit log entry for a org.restore_member event. +Represents available types of methods to use when merging a pull request. """ -type OrgRestoreMemberAuditEntry implements AuditEntry & Node & 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 +} +""" +Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. +""" +type PullRequestParameters { """ - The time the action was initiated + New, reviewable commits pushed will dismiss previous pull request review approvals. """ - createdAt: PreciseDateTime! - id: ID! + dismissStaleReviewsOnPush: Boolean! """ - The corresponding operation type for the action + Require an approving review in pull requests that modify files that have a designated code owner. """ - operationType: OperationType + requireCodeOwnerReview: Boolean! """ - The Organization associated with the Audit Entry. + Whether the most recent reviewable push must be approved by someone other than the person who pushed it. """ - organization: Organization + requireLastPushApproval: Boolean! """ - The name of the Organization. + The number of approving reviews that are required before a pull request can be merged. """ - organizationName: String + requiredApprovingReviewCount: Int! """ - The HTTP path for the organization + All conversations on code must be resolved before a pull request can be merged. """ - organizationResourcePath: URI + requiredReviewThreadResolution: Boolean! +} +""" +Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. +""" +input PullRequestParametersInput { """ - The HTTP URL for the organization + New, reviewable commits pushed will dismiss previous pull request review approvals. """ - organizationUrl: URI + dismissStaleReviewsOnPush: Boolean! """ - The number of custom email routings for the restored member. + Require an approving review in pull requests that modify files that have a designated code owner. """ - restoredCustomEmailRoutingsCount: Int + requireCodeOwnerReview: Boolean! """ - The number of issue assignemnts for the restored member. + Whether the most recent reviewable push must be approved by someone other than the person who pushed it. """ - restoredIssueAssignmentsCount: Int + requireLastPushApproval: Boolean! """ - Restored organization membership objects. + The number of approving reviews that are required before a pull request can be merged. """ - restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] + requiredApprovingReviewCount: Int! """ - The number of restored memberships. + All conversations on code must be resolved before a pull request can be merged. """ - restoredMembershipsCount: Int + requiredReviewThreadResolution: Boolean! +} +""" +A review object for a given pull request. +""" +type PullRequestReview implements Comment & Deletable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The number of repositories of the restored member. + The actor who authored the comment. """ - restoredRepositoriesCount: Int + author: Actor """ - The number of starred repositories for the restored member. + Author's association with the subject of the comment. """ - restoredRepositoryStarsCount: Int + authorAssociation: CommentAuthorAssociation! """ - The number of watched repositories for the restored member. + Indicates whether the author of this review has push access to the repository. """ - restoredRepositoryWatchesCount: Int + authorCanPushToRepository: Boolean! """ - The user affected by the action + Identifies the pull request review body. """ - user: User + body: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The body rendered to HTML. """ - userLogin: String + bodyHTML: HTML! """ - The HTTP path for the user. + The body of this review rendered as plain text. """ - userResourcePath: URI + bodyText: String! """ - The HTTP URL for the user. + A list of review comments for the current pull request review. """ - userUrl: URI -} + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Types of memberships that can be restored for an Organization member. -""" -union OrgRestoreMemberAuditEntryMembership = OrgRestoreMemberMembershipOrganizationAuditEntryData | OrgRestoreMemberMembershipRepositoryAuditEntryData | OrgRestoreMemberMembershipTeamAuditEntryData + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Metadata for an organization membership for org.restore_member actions -""" -type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewCommentConnection! """ - The name of the Organization. + Identifies the commit associated with this pull request review. """ - organizationName: String + commit: Commit """ - The HTTP path for the organization + Identifies the date and time when the object was created. """ - organizationResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the organization + Check if this comment was created via an email reply. """ - organizationUrl: URI -} + createdViaEmail: Boolean! -""" -Metadata for a repository membership for org.restore_member actions -""" -type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { """ - The repository associated with the action + Identifies the primary key from the database. """ - repository: Repository + databaseId: Int """ - The name of the repository + The actor who edited the comment. """ - repositoryName: String + editor: Actor + id: ID! """ - The HTTP path for the repository + Check if this comment was edited and includes an edit with the creation data """ - repositoryResourcePath: URI + includesCreatedEdit: Boolean! """ - The HTTP URL for the repository + The moment the editor made the last edit """ - repositoryUrl: URI -} + lastEditedAt: DateTime -""" -Metadata for a team membership for org.restore_member actions -""" -type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { """ - The team associated with the action + A list of teams that this review was made on behalf of. """ - team: Team + 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 name of the team + Identifies when the comment was published at. """ - teamName: String + publishedAt: DateTime """ - The HTTP path for this team + Identifies the pull request associated with this pull request review. """ - teamResourcePath: URI + pullRequest: PullRequest! """ - The HTTP URL for this team + A list of reactions grouped by content left on the subject. """ - teamUrl: URI -} + reactionGroups: [ReactionGroup!] -""" -Audit log entry for a org.unblock_user -""" -type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + A list of Reactions left on the Issue. """ - action: String! + 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 who initiated the action + The repository associated with this node. """ - actor: AuditEntryActor + repository: Repository! """ - The IP address of the actor + The HTTP path permalink for this PullRequestReview. """ - actorIp: String + resourcePath: URI! """ - A readable representation of the actor's location + Identifies the current state of the pull request review. """ - actorLocation: ActorLocation + state: PullRequestReviewState! """ - The username of the user who initiated the action + Identifies when the Pull Request Review was submitted """ - actorLogin: String + submittedAt: DateTime """ - The HTTP path for the actor. + Identifies the date and time when the object was last updated. """ - actorResourcePath: URI + updatedAt: DateTime! """ - The HTTP URL for the actor. + The HTTP URL permalink for this PullRequestReview. """ - actorUrl: URI + url: URI! """ - The user being unblocked by the organization. + A list of edits to this content. """ - blockedUser: 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 username of the blocked user. + Check if the current viewer can delete this object. """ - blockedUserName: String + viewerCanDelete: Boolean! """ - The HTTP path for the blocked user. + Can user react to this subject """ - blockedUserResourcePath: URI + viewerCanReact: Boolean! """ - The HTTP URL for the blocked user. + Check if the current viewer can update this object. """ - blockedUserUrl: URI + viewerCanUpdate: Boolean! """ - The time the action was initiated + Reasons why the current viewer can not update this comment. """ - createdAt: PreciseDateTime! - id: ID! + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The corresponding operation type for the action + Did the viewer author this comment. """ - operationType: OperationType + viewerDidAuthor: Boolean! +} +""" +A review comment associated with a given repository pull request. +""" +type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The Organization associated with the Audit Entry. + The actor who authored the comment. """ - organization: Organization + author: Actor """ - The name of the Organization. + Author's association with the subject of the comment. """ - organizationName: String + authorAssociation: CommentAuthorAssociation! """ - The HTTP path for the organization + The comment body of this review comment. """ - organizationResourcePath: URI + body: String! """ - The HTTP URL for the organization + The body rendered to HTML. """ - organizationUrl: URI + bodyHTML: HTML! """ - The user affected by the action + The comment body of this review comment rendered as plain text. """ - user: User + bodyText: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the commit associated with the comment. """ - userLogin: String + commit: Commit """ - The HTTP path for the user. + Identifies when the comment was created. """ - userResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the user. + Check if this comment was created via an email reply. """ - userUrl: URI -} + createdViaEmail: Boolean! -""" -Audit log entry for a org.update_default_repository_permission -""" -type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Identifies the primary key from the database. """ - action: String! + databaseId: Int """ - The user who initiated the action + The diff hunk to which the comment applies. """ - actor: AuditEntryActor + diffHunk: String! """ - The IP address of the actor + Identifies when the comment was created in a draft state. """ - actorIp: String + draftedAt: DateTime! """ - A readable representation of the actor's location + The actor who edited the comment. """ - actorLocation: ActorLocation + editor: Actor + id: ID! """ - The username of the user who initiated the action + Check if this comment was edited and includes an edit with the creation data """ - actorLogin: String + includesCreatedEdit: Boolean! """ - The HTTP path for the actor. + Returns whether or not a comment has been minimized. """ - actorResourcePath: URI + isMinimized: Boolean! """ - The HTTP URL for the actor. + The moment the editor made the last edit """ - actorUrl: URI + lastEditedAt: DateTime """ - The time the action was initiated + The end line number on the file to which the comment applies """ - createdAt: PreciseDateTime! - id: ID! + line: Int """ - The corresponding operation type for the action + 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. """ - operationType: OperationType + minimizedReason: String """ - The Organization associated with the Audit Entry. + Identifies the original commit associated with the comment. """ - organization: Organization + originalCommit: Commit """ - The name of the Organization. + The end line number on the file to which the comment applied when it was first created """ - organizationName: String + originalLine: Int """ - The HTTP path for the organization + The original line index in the diff to which the comment applies. """ - organizationResourcePath: URI + originalPosition: Int! + @deprecated(reason: "We are phasing out diff-relative positioning for PR comments Removal on 2023-10-01 UTC.") """ - The HTTP URL for the organization + The start line number on the file to which the comment applied when it was first created """ - organizationUrl: URI + originalStartLine: Int """ - The new default repository permission level for the organization. + Identifies when the comment body is outdated """ - permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + outdated: Boolean! """ - The former default repository permission level for the organization. + The path to which the comment applies. """ - permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + path: String! """ - The user affected by the action + The line index in the diff to which the comment applies. """ - user: User + position: Int + @deprecated( + reason: "We are phasing out diff-relative positioning for PR comments Use the `line` and `startLine` fields instead, which are file line numbers instead of diff line numbers Removal on 2023-10-01 UTC." + ) """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies when the comment was published at. """ - userLogin: String + publishedAt: DateTime """ - The HTTP path for the user. + The pull request associated with this review comment. """ - userResourcePath: URI + pullRequest: PullRequest! """ - The HTTP URL for the user. + The pull request review associated with this review comment. """ - userUrl: URI -} + pullRequestReview: PullRequestReview -""" -The default permission a repository can have in an Organization. -""" -enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { """ - Can read, clone, push, and add collaborators to repositories. + A list of reactions grouped by content left on the subject. """ - ADMIN + reactionGroups: [ReactionGroup!] """ - No default permission value. + A list of Reactions left on the Issue. """ - NONE + 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! """ - Can read and clone repositories. + The comment this is a reply to. """ - READ + replyTo: PullRequestReviewComment """ - Can read, clone and push to repositories. + The repository associated with this node. """ - WRITE -} + repository: Repository! -""" -Audit log entry for a org.update_member event. -""" -type OrgUpdateMemberAuditEntry 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 + The start line number on the file to which the comment applies """ - actor: AuditEntryActor + startLine: Int """ - The IP address of the actor + Identifies the state of the comment. """ - actorIp: String + state: PullRequestReviewCommentState! """ - A readable representation of the actor's location + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file """ - actorLocation: ActorLocation + subjectType: PullRequestReviewThreadSubjectType! """ - The username of the user who initiated the action + Identifies when the comment was last updated. """ - actorLogin: String + updatedAt: DateTime! """ - The HTTP path for the actor. + The HTTP URL permalink for this review comment. """ - actorResourcePath: URI + url: URI! """ - The HTTP URL for the actor. + A list of edits to this content. """ - actorUrl: 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 time the action was initiated + Check if the current viewer can delete this object. """ - createdAt: PreciseDateTime! - id: ID! + viewerCanDelete: Boolean! """ - The corresponding operation type for the action + Check if the current viewer can minimize this object. """ - operationType: OperationType + viewerCanMinimize: Boolean! """ - The Organization associated with the Audit Entry. + Can user react to this subject """ - organization: Organization + viewerCanReact: Boolean! """ - The name of the Organization. + Check if the current viewer can update this object. """ - organizationName: String + viewerCanUpdate: Boolean! """ - The HTTP path for the organization + Reasons why the current viewer can not update this comment. """ - organizationResourcePath: URI + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The HTTP URL for the organization + Did the viewer author this comment. """ - organizationUrl: URI + viewerDidAuthor: Boolean! +} +""" +The connection type for PullRequestReviewComment. +""" +type PullRequestReviewCommentConnection { """ - The new member permission level for the organization. + A list of edges. """ - permission: OrgUpdateMemberAuditEntryPermission + edges: [PullRequestReviewCommentEdge] """ - The former member permission level for the organization. + A list of nodes. """ - permissionWas: OrgUpdateMemberAuditEntryPermission + nodes: [PullRequestReviewComment] """ - 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 PullRequestReviewCommentEdge { """ - 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: PullRequestReviewComment } """ -The permissions available to members on an Organization. +The possible states of a pull request review comment. """ -enum OrgUpdateMemberAuditEntryPermission { +enum PullRequestReviewCommentState { """ - Can read, clone, push, and add collaborators to repositories. + A comment that is part of a pending review """ - ADMIN + PENDING """ - Can read and clone repositories. + A comment that is part of a submitted review """ - READ + SUBMITTED } """ -Audit log entry for a org.update_member_repository_creation_permission event. +The connection type for PullRequestReview. """ -type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type PullRequestReviewConnection { """ - The action name + A list of edges. """ - action: String! + edges: [PullRequestReviewEdge] """ - The user who initiated the action + A list of nodes. """ - actor: AuditEntryActor + nodes: [PullRequestReview] """ - 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! +} +""" +This aggregates pull request reviews made by a user within one repository. +""" +type PullRequestReviewContributionsByRepository { """ - The username of the user who initiated the action + The pull request review contributions. """ - actorLogin: String + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for the actor. - """ - actorResourcePath: 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 + + """ + Ordering options for contributions returned from the connection. + """ + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestReviewContributionConnection! """ - The HTTP URL for the actor. + The repository in which the pull request reviews were made. """ - actorUrl: URI + repository: Repository! +} +""" +The review status of a pull request. +""" +enum PullRequestReviewDecision { """ - Can members create repositories in the organization. + The pull request has received an approving review. """ - canCreateRepositories: Boolean + APPROVED """ - The time the action was initiated + Changes have been requested on the pull request. """ - createdAt: PreciseDateTime! - id: ID! + CHANGES_REQUESTED """ - The corresponding operation type for the action + A review is required before the pull request can be merged. """ - operationType: OperationType + REVIEW_REQUIRED +} +""" +An edge in a connection. +""" +type PullRequestReviewEdge { """ - The Organization associated with the Audit Entry. + A cursor for use in pagination. """ - organization: Organization + cursor: String! """ - The name of the Organization. + The item at the end of the edge. """ - organizationName: String + node: PullRequestReview +} +""" +The possible events to perform on a pull request review. +""" +enum PullRequestReviewEvent { """ - The HTTP path for the organization + Submit feedback and approve merging these changes. """ - organizationResourcePath: URI + APPROVE """ - The HTTP URL for the organization + Submit general feedback without explicit approval. """ - organizationUrl: URI + COMMENT """ - The user affected by the action + Dismiss review so it now longer effects merging. """ - user: User + DISMISS """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Submit feedback that must be addressed before merging. """ - userLogin: String + REQUEST_CHANGES +} +""" +The possible states of a pull request review. +""" +enum PullRequestReviewState { """ - The HTTP path for the user. + A review allowing the pull request to merge. """ - userResourcePath: URI + APPROVED """ - The HTTP URL for the user. + A review blocking the pull request from merging. """ - userUrl: URI + CHANGES_REQUESTED """ - The permission for visibility level of repositories for this organization. + An informational review. """ - visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility -} + COMMENTED -""" -The permissions available for repository creation on an Organization. -""" -enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - All organization members are restricted from creating any repositories. + A review that has been dismissed. """ - ALL + DISMISSED """ - All organization members are restricted from creating public repositories. + A review that has not yet been submitted. """ - PUBLIC + PENDING } """ -Audit log entry for a org.update_member_repository_invitation_permission event. +A threaded list of comments for a given pull request. """ -type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type PullRequestReviewThread implements Node { """ - The action name + A list of pull request comments associated with the thread. """ - action: 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 + + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): PullRequestReviewCommentConnection! """ - The user who initiated the action + The side of the diff on which this thread was placed. """ - actor: AuditEntryActor + diffSide: DiffSide! + id: ID! """ - The IP address of the actor + Whether or not the thread has been collapsed (resolved) """ - actorIp: String + isCollapsed: Boolean! """ - A readable representation of the actor's location + Indicates whether this thread was outdated by newer changes. """ - actorLocation: ActorLocation + isOutdated: Boolean! """ - The username of the user who initiated the action + Whether this thread has been resolved """ - actorLogin: String + isResolved: Boolean! """ - The HTTP path for the actor. + The line in the file to which this thread refers """ - actorResourcePath: URI + line: Int """ - The HTTP URL for the actor. + The original line in the file to which this thread refers. """ - actorUrl: URI + originalLine: Int """ - Can outside collaborators be invited to repositories in the organization. + The original start line in the file to which this thread refers (multi-line only). """ - canInviteOutsideCollaboratorsToRepositories: Boolean + originalStartLine: Int """ - The time the action was initiated + Identifies the file path of this thread. """ - createdAt: PreciseDateTime! - id: ID! + path: String! """ - The corresponding operation type for the action + Identifies the pull request associated with this thread. """ - operationType: OperationType + pullRequest: PullRequest! """ - The Organization associated with the Audit Entry. + Identifies the repository associated with this thread. """ - organization: Organization + repository: Repository! """ - The name of the Organization. + The user who resolved this thread """ - organizationName: String + resolvedBy: User """ - The HTTP path for the organization + The side of the diff that the first line of the thread starts on (multi-line only) """ - organizationResourcePath: URI + startDiffSide: DiffSide """ - The HTTP URL for the organization + The start line in the file to which this thread refers (multi-line only) """ - organizationUrl: URI + startLine: Int """ - The user affected by the action + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file """ - user: User + subjectType: PullRequestReviewThreadSubjectType! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Indicates whether the current viewer can reply to this thread. """ - userLogin: String + viewerCanReply: Boolean! """ - The HTTP path for the user. + Whether or not the viewer can resolve this thread """ - userResourcePath: URI + viewerCanResolve: Boolean! """ - The HTTP URL for the user. + Whether or not the viewer can unresolve this thread """ - userUrl: URI + viewerCanUnresolve: Boolean! } """ -An account on GitHub, with one or more owners, that has repositories, members and teams. +Review comment threads for a pull request review. """ -type Organization implements Actor & MemberStatusable & Node & PackageOwner & ProfileOwner & ProjectOwner & RepositoryOwner & Sponsorable & UniformResourceLocatable { +type PullRequestReviewThreadConnection { """ - Determine if this repository owner has any items that can be pinned to their profile. + A list of edges. """ - anyPinnableItems( - """ - Filter to only a particular kind of pinnable item. - """ - type: PinnableItemType - ): Boolean! + edges: [PullRequestReviewThreadEdge] """ - Audit log entries of the organization + A list of nodes. """ - 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 + nodes: [PullRequestReviewThread] - """ - Ordering options for the returned audit log entries. - """ - orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! - """ - The query string to filter audit entries - """ - query: String - ): OrganizationAuditEntryConnection! + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} +""" +An edge in a connection. +""" +type PullRequestReviewThreadEdge { """ - A URL pointing to the organization's public avatar. + A cursor for use in pagination. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + cursor: String! + + """ + The item at the end of the edge. + """ + node: PullRequestReviewThread +} +""" +The possible subject types of a pull request review comment. +""" +enum PullRequestReviewThreadSubjectType { """ - Identifies the date and time when the object was created. + A comment that has been made against the file of a pull request """ - createdAt: DateTime! + FILE """ - Identifies the primary key from the database. + A comment that has been made against the line of a pull request """ - databaseId: Int + LINE +} +""" +Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. +""" +type PullRequestRevisionMarker { """ - The organization's public profile description. + Identifies the date and time when the object was created. """ - description: String + createdAt: DateTime! """ - The organization's public profile description rendered to HTML. + The last commit the viewer has seen. """ - descriptionHTML: String + lastSeenCommit: Commit! """ - The organization's public email. + The pull request to which the marker belongs. """ - email: String - id: ID! + pullRequest: PullRequest! +} +""" +The possible states of a pull request. +""" +enum PullRequestState { """ - The setting value for whether the organization has an IP allow list enabled. + A pull request that has been closed without being merged. """ - ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + CLOSED """ - The IP addresses that are allowed to access resources owned by the organization. + A pull request that has been closed by being merged. """ - 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! + MERGED """ - Whether the organization has verified its profile email and website. + A pull request that is still open. """ - isVerified: Boolean! + OPEN +} +""" +A repository pull request template. +""" +type PullRequestTemplate { """ - Showcases a selection of repositories and gists that the profile owner has - either curated or that have been selected automatically based on popularity. + The body of the template """ - itemShowcase: ProfileItemShowcase! + body: String """ - The organization's public profile location. + The filename of the template """ - location: String + filename: String """ - The organization's login name. + The repository the template belongs to """ - login: String! + repository: Repository! +} +""" +A threaded list of comments for a given pull request. +""" +type PullRequestThread implements Node { """ - Get the status messages members of this entity have set that are either public or visible only to the organization. + A list of pull request comments associated with the thread. """ - memberStatuses( + comments( """ Returns the elements in the list that come after the specified cursor. """ @@ -18431,844 +36519,660 @@ type Organization implements Actor & MemberStatusable & Node & PackageOwner & Pr last: Int """ - Ordering options for user statuses returned from the connection. + Skips the first _n_ elements in the list. """ - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! + skip: Int + ): PullRequestReviewCommentConnection! """ - A list of users who are members of this organization. + The side of the diff on which this thread was placed. """ - 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! + diffSide: DiffSide! + id: ID! """ - The organization's public profile name. + Whether or not the thread has been collapsed (resolved) """ - name: String + isCollapsed: Boolean! """ - The HTTP path creating a new team + Indicates whether this thread was outdated by newer changes. """ - newTeamResourcePath: URI! + isOutdated: Boolean! """ - The HTTP URL creating a new team + Whether this thread has been resolved """ - newTeamUrl: URI! + isResolved: Boolean! """ - The billing email for the organization. + The line in the file to which this thread refers """ - organizationBillingEmail: String + line: Int """ - A list of packages under the owner. + Identifies the file path of this thread. """ - 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! + path: String! """ - A list of users who have been invited to join this organization. + Identifies the pull request associated with this thread. """ - 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! + pullRequest: PullRequest! """ - A list of repositories and gists this profile owner can pin to their profile. + Identifies the repository associated with this thread. """ - 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! + repository: Repository! """ - A list of repositories and gists this profile owner has pinned to their profile + The user who resolved this thread """ - 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 - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Filter the types of pinned items that are returned. - """ - types: [PinnableItemType!] - ): PinnableItemConnection! + resolvedBy: User """ - Returns how many more items this profile owner can pin to their profile. + The side of the diff that the first line of the thread starts on (multi-line only) """ - pinnedItemsRemaining: Int! + startDiffSide: DiffSide """ - Find project by number. + The line of the first file diff in the thread. """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + startLine: Int """ - A list of projects under the owner. + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file """ - 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! + subjectType: PullRequestReviewThreadSubjectType! """ - The HTTP path listing organization's projects + Indicates whether the current viewer can reply to this thread. """ - projectsResourcePath: URI! + viewerCanReply: Boolean! """ - The HTTP URL listing organization's projects + Whether or not the viewer can resolve this thread """ - projectsUrl: URI! + viewerCanResolve: Boolean! """ - A list of repositories that the user owns. + Whether or not the viewer can unresolve this thread """ - 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 + viewerCanUnresolve: Boolean! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +The connection type for PullRequestTimelineItem. +""" +type PullRequestTimelineConnection { + """ + A list of edges. + """ + edges: [PullRequestTimelineItemEdge] - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + A list of nodes. + """ + nodes: [PullRequestTimelineItem] - """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +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 - """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder +""" +An edge in a connection. +""" +type PullRequestTimelineItemEdge { + """ + A cursor for use in pagination. + """ + cursor: String! - """ - 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] + """ + The item at the end of the edge. + """ + node: PullRequestTimelineItem +} - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! +""" +An item in a pull request timeline +""" +union PullRequestTimelineItems = + AddedToMergeQueueEvent + | 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 + | RemovedFromMergeQueueEvent + | RemovedFromProjectEvent + | RenamedTitleEvent + | ReopenedEvent + | ReviewDismissedEvent + | ReviewRequestRemovedEvent + | ReviewRequestedEvent + | SubscribedEvent + | TransferredEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnmarkedAsDuplicateEvent + | UnpinnedEvent + | UnsubscribedEvent + | UserBlockedEvent +""" +The connection type for PullRequestTimelineItems. +""" +type PullRequestTimelineItemsConnection { """ - Find Repository. + A list of edges. """ - repository( - """ - Name of Repository to find. - """ - name: String! - ): Repository + edges: [PullRequestTimelineItemsEdge] """ - When true the organization requires all members, billing managers, and outside - collaborators to enable two-factor authentication. + Identifies the count of items after applying `before` and `after` filters. """ - requiresTwoFactorAuthentication: Boolean + filteredCount: Int! """ - The HTTP path for this organization. + A list of nodes. """ - resourcePath: URI! + nodes: [PullRequestTimelineItems] """ - The Organization's SAML identity providers + Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. """ - samlIdentityProvider: OrganizationIdentityProvider + pageCount: Int! """ - The GitHub Sponsors listing for this user. + Information to aid in pagination. """ - sponsorsListing: SponsorsListing + pageInfo: PageInfo! """ - This object's sponsorships as the maintainer. + Identifies the total count of items in the connection. """ - 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! + totalCount: Int! """ - This object's sponsorships as the sponsor. + Identifies the date and time when the timeline was last updated. """ - 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 + updatedAt: DateTime! +} - """ - 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! +""" +An edge in a connection. +""" +type PullRequestTimelineItemsEdge { + """ + A cursor for use in pagination. + """ + cursor: String! """ - Find an organization's team by its slug. + The item at the end of the edge. """ - team( - """ - The name or slug of the team to find. - """ - slug: String! - ): Team + node: PullRequestTimelineItems +} +""" +The possible item types found in a timeline. +""" +enum PullRequestTimelineItemsItemType { """ - A list of teams in this organization. + Represents an 'added_to_merge_queue' event on a given pull request. """ - 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. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int + ADDED_TO_MERGE_QUEUE_EVENT - """ - If true, filters teams that are mapped to an LDAP Group (Enterprise only) - """ - ldapMapped: Boolean + """ + Represents a 'added_to_project' event on a given issue or pull request. + """ + ADDED_TO_PROJECT_EVENT - """ - Ordering options for teams returned from the connection - """ - orderBy: TeamOrder + """ + Represents an 'assigned' event on any assignable object. + """ + ASSIGNED_EVENT - """ - If non-null, filters teams according to privacy - """ - privacy: TeamPrivacy + """ + Represents a 'automatic_base_change_failed' event on a given pull request. + """ + AUTOMATIC_BASE_CHANGE_FAILED_EVENT - """ - If non-null, filters teams with query on team name and team slug - """ - query: String + """ + Represents a 'automatic_base_change_succeeded' event on a given pull request. + """ + AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT - """ - If non-null, filters teams according to whether the viewer is an admin or member on team - """ - role: TeamRole + """ + Represents a 'auto_merge_disabled' event on a given pull request. + """ + AUTO_MERGE_DISABLED_EVENT - """ - If true, restrict to only root teams - """ - rootTeamsOnly: Boolean = false + """ + Represents a 'auto_merge_enabled' event on a given pull request. + """ + AUTO_MERGE_ENABLED_EVENT - """ - User logins to filter by - """ - userLogins: [String!] - ): TeamConnection! + """ + Represents a 'auto_rebase_enabled' event on a given pull request. + """ + AUTO_REBASE_ENABLED_EVENT """ - The HTTP path listing organization's teams + Represents a 'auto_squash_enabled' event on a given pull request. """ - teamsResourcePath: URI! + AUTO_SQUASH_ENABLED_EVENT """ - The HTTP URL listing organization's teams + Represents a 'base_ref_changed' event on a given issue or pull request. """ - teamsUrl: URI! + BASE_REF_CHANGED_EVENT """ - The organization's Twitter username. + Represents a 'base_ref_deleted' event on a given pull request. """ - twitterUsername: String + BASE_REF_DELETED_EVENT """ - Identifies the date and time when the object was last updated. + Represents a 'base_ref_force_pushed' event on a given pull request. """ - updatedAt: DateTime! + BASE_REF_FORCE_PUSHED_EVENT """ - The HTTP URL for this organization. + Represents a 'closed' event on any `Closable`. """ - url: URI! + CLOSED_EVENT """ - Organization is adminable by the viewer. + Represents a 'comment_deleted' event on a given issue or pull request. """ - viewerCanAdminister: Boolean! + COMMENT_DELETED_EVENT """ - Can the viewer pin repositories and gists to the profile? + Represents a 'connected' event on a given issue or pull request. """ - viewerCanChangePinnedItems: Boolean! + CONNECTED_EVENT """ - Can the current viewer create new projects on this owner. + Represents a 'converted_note_to_issue' event on a given issue or pull request. """ - viewerCanCreateProjects: Boolean! + CONVERTED_NOTE_TO_ISSUE_EVENT """ - Viewer can create repositories on this organization + Represents a 'converted_to_discussion' event on a given issue. """ - viewerCanCreateRepositories: Boolean! + CONVERTED_TO_DISCUSSION_EVENT """ - Viewer can create teams on this organization. + Represents a 'convert_to_draft' event on a given pull request. """ - viewerCanCreateTeams: Boolean! + CONVERT_TO_DRAFT_EVENT """ - Viewer is an active member of this organization. + Represents a mention made by one issue or pull request to another. """ - viewerIsAMember: Boolean! + CROSS_REFERENCED_EVENT """ - The organization's public profile URL. + Represents a 'demilestoned' event on a given issue or pull request. """ - websiteUrl: URI -} + DEMILESTONED_EVENT -""" -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 + """ + Represents a 'deployed' event on a given pull request. + """ + DEPLOYED_EVENT -""" -The connection type for OrganizationAuditEntry. -""" -type OrganizationAuditEntryConnection { """ - A list of edges. + Represents a 'deployment_environment_changed' event on a given pull request. """ - edges: [OrganizationAuditEntryEdge] + DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT """ - A list of nodes. + Represents a 'disconnected' event on a given issue or pull request. """ - nodes: [OrganizationAuditEntry] + DISCONNECTED_EVENT """ - Information to aid in pagination. + Represents a 'head_ref_deleted' event on a given pull request. """ - pageInfo: PageInfo! + HEAD_REF_DELETED_EVENT """ - Identifies the total count of items in the connection. + Represents a 'head_ref_force_pushed' event on a given pull request. """ - totalCount: Int! -} + HEAD_REF_FORCE_PUSHED_EVENT -""" -Metadata for an audit entry with action org.* -""" -interface OrganizationAuditEntryData { """ - The Organization associated with the Audit Entry. + Represents a 'head_ref_restored' event on a given pull request. """ - organization: Organization + HEAD_REF_RESTORED_EVENT """ - The name of the Organization. + Represents a comment on an Issue. """ - organizationName: String + ISSUE_COMMENT """ - The HTTP path for the organization + Represents a 'labeled' event on a given issue or pull request. """ - organizationResourcePath: URI + LABELED_EVENT """ - The HTTP URL for the organization + Represents a 'locked' event on a given issue or pull request. """ - organizationUrl: URI -} + LOCKED_EVENT -""" -An edge in a connection. -""" -type OrganizationAuditEntryEdge { """ - A cursor for use in pagination. + Represents a 'marked_as_duplicate' event on a given issue or pull request. """ - cursor: String! + MARKED_AS_DUPLICATE_EVENT """ - The item at the end of the edge. + Represents a 'mentioned' event on a given issue or pull request. """ - node: OrganizationAuditEntry -} + MENTIONED_EVENT -""" -The connection type for Organization. -""" -type OrganizationConnection { """ - A list of edges. + Represents a 'merged' event on a given pull request. """ - edges: [OrganizationEdge] + MERGED_EVENT """ - A list of nodes. + Represents a 'milestoned' event on a given issue or pull request. """ - nodes: [Organization] + MILESTONED_EVENT """ - Information to aid in pagination. + Represents a 'moved_columns_in_project' event on a given issue or pull request. """ - pageInfo: PageInfo! + MOVED_COLUMNS_IN_PROJECT_EVENT """ - Identifies the total count of items in the connection. + Represents a 'pinned' event on a given issue or pull request. """ - totalCount: Int! -} + PINNED_EVENT -""" -An edge in a connection. -""" -type OrganizationEdge { """ - A cursor for use in pagination. + Represents a Git commit part of a pull request. """ - cursor: String! + PULL_REQUEST_COMMIT """ - The item at the end of the edge. + Represents a commit comment thread part of a pull request. """ - node: Organization -} + PULL_REQUEST_COMMIT_COMMENT_THREAD -""" -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. + A review object for a given pull request. """ - digestMethod: URI + PULL_REQUEST_REVIEW """ - External Identities provisioned by this Identity Provider + A threaded list of comments for a given pull request. """ - externalIdentities( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + PULL_REQUEST_REVIEW_THREAD - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. + """ + PULL_REQUEST_REVISION_MARKER - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Represents a 'ready_for_review' event on a given pull request. + """ + READY_FOR_REVIEW_EVENT - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ExternalIdentityConnection! - id: ID! + """ + Represents a 'referenced' event on a given `ReferencedSubject`. + """ + REFERENCED_EVENT """ - The x509 certificate used by the Identity Provder to sign assertions and responses. + Represents a 'removed_from_merge_queue' event on a given pull request. """ - idpCertificate: X509Certificate + REMOVED_FROM_MERGE_QUEUE_EVENT """ - The Issuer Entity ID for the SAML Identity Provider + Represents a 'removed_from_project' event on a given issue or pull request. """ - issuer: String + REMOVED_FROM_PROJECT_EVENT """ - Organization this Identity Provider belongs to + Represents a 'renamed' event on a given issue or pull request """ - organization: Organization + RENAMED_TITLE_EVENT """ - The signature algorithm used to sign SAML requests for the Identity Provider. + Represents a 'reopened' event on any `Closable`. """ - signatureMethod: URI + REOPENED_EVENT """ - The URL endpoint for the Identity Provider's SAML SSO. + Represents a 'review_dismissed' event on a given issue or pull request. """ - ssoUrl: URI -} + REVIEW_DISMISSED_EVENT -""" -An Invitation for a user to an organization. -""" -type OrganizationInvitation implements Node { """ - Identifies the date and time when the object was created. + Represents an 'review_requested' event on a given pull request. """ - createdAt: DateTime! + REVIEW_REQUESTED_EVENT """ - The email address of the user invited to the organization. + Represents an 'review_request_removed' event on a given pull request. """ - email: String - id: ID! + REVIEW_REQUEST_REMOVED_EVENT """ - The type of invitation that was sent (e.g. email, user). + Represents a 'subscribed' event on a given `Subscribable`. """ - invitationType: OrganizationInvitationType! + SUBSCRIBED_EVENT """ - The user who was invited to the organization. + Represents a 'transferred' event on a given issue or pull request. """ - invitee: User + TRANSFERRED_EVENT """ - The user who created the invitation. + Represents an 'unassigned' event on any assignable object. """ - inviter: User! + UNASSIGNED_EVENT """ - The organization the invite is for + Represents an 'unlabeled' event on a given issue or pull request. """ - organization: Organization! + UNLABELED_EVENT """ - The user's pending role in the organization (e.g. member, owner). + Represents an 'unlocked' event on a given issue or pull request. """ - role: OrganizationInvitationRole! -} + UNLOCKED_EVENT -""" -The connection type for OrganizationInvitation. -""" -type OrganizationInvitationConnection { """ - A list of edges. + Represents an 'unmarked_as_duplicate' event on a given issue or pull request. """ - edges: [OrganizationInvitationEdge] + UNMARKED_AS_DUPLICATE_EVENT """ - A list of nodes. + Represents an 'unpinned' event on a given issue or pull request. """ - nodes: [OrganizationInvitation] + UNPINNED_EVENT """ - Information to aid in pagination. + Represents an 'unsubscribed' event on a given `Subscribable`. """ - pageInfo: PageInfo! + UNSUBSCRIBED_EVENT """ - Identifies the total count of items in the connection. + Represents a 'user_blocked' event on a given user. """ - totalCount: Int! + USER_BLOCKED_EVENT } """ -An edge in a connection. +The possible target states when updating a pull request. """ -type OrganizationInvitationEdge { +enum PullRequestUpdateState { """ - A cursor for use in pagination. + A pull request that has been closed without being merged. """ - cursor: String! + CLOSED """ - The item at the end of the edge. + A pull request that is still open. """ - node: OrganizationInvitation + OPEN } """ -The possible organization invitation roles. +A Git push. """ -enum OrganizationInvitationRole { +type Push implements Node { + id: ID! + """ - The user is invited to be an admin of the organization. + The SHA after the push """ - ADMIN + nextSha: GitObjectID """ - The user is invited to be a billing manager of the organization. + The permalink for this push. """ - BILLING_MANAGER + permalink: URI! """ - The user is invited to be a direct member of the organization. + The SHA before the push """ - DIRECT_MEMBER + previousSha: GitObjectID """ - The user's previous role will be reinstated. + The actor who pushed """ - REINSTATE + pusher: Actor! + + """ + The repository that was pushed to + """ + repository: Repository! } """ -The possible organization invitation types. +A team, user, or app who has the ability to push to a protected branch. """ -enum OrganizationInvitationType { +type PushAllowance implements Node { """ - The invitation was to an email address. + The actor that can push. """ - EMAIL + actor: PushAllowanceActor """ - The invitation was to an existing user. + Identifies the branch protection rule associated with the allowed user, team, or app. """ - USER + branchProtectionRule: BranchProtectionRule + id: ID! } """ -The connection type for User. +Types that can be an actor. """ -type OrganizationMemberConnection { +union PushAllowanceActor = App | Team | User + +""" +The connection type for PushAllowance. +""" +type PushAllowanceConnection { """ A list of edges. """ - edges: [OrganizationMemberEdge] + edges: [PushAllowanceEdge] """ A list of nodes. """ - nodes: [User] + nodes: [PushAllowance] """ Information to aid in pagination. @@ -19282,123 +37186,174 @@ type OrganizationMemberConnection { } """ -Represents a user within an organization. +An edge in a connection. """ -type OrganizationMemberEdge { +type PushAllowanceEdge { """ 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. - """ - role: OrganizationMemberRole + node: PushAllowance } """ -The possible roles within an organization for its members. +The query root of GitHub's GraphQL interface. """ -enum OrganizationMemberRole { +type Query { """ - The user is an administrator of the organization. + Look up a code of conduct by its key """ - ADMIN + codeOfConduct( + """ + The code of conduct's key + """ + key: String! + ): CodeOfConduct """ - The user is a member of the organization. + Look up a code of conduct by its key """ - MEMBER -} + codesOfConduct: [CodeOfConduct] -""" -The possible values for the members can create repositories setting on an organization. -""" -enum OrganizationMembersCanCreateRepositoriesSettingValue { """ - Members will be able to create public and private repositories. + Look up an enterprise by URL slug. """ - ALL + enterprise( + """ + The enterprise invitation token. + """ + invitationToken: String - """ - Members will not be able to create public or private repositories. - """ - DISABLED + """ + The enterprise URL slug. + """ + slug: String! + ): Enterprise """ - Members will be able to create only private repositories. + Look up a pending enterprise administrator invitation by invitee, enterprise and role. """ - PRIVATE -} + 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 -""" -Ordering options for organization connections. -""" -input OrganizationOrder { """ - The ordering direction. + Look up a pending enterprise administrator invitation by invitation token. """ - direction: OrderDirection! + enterpriseAdministratorInvitationByToken( + """ + The invitation token sent with the invitation email. + """ + invitationToken: String! + ): EnterpriseAdministratorInvitation """ - The field to order organizations by. + Look up an open source license by its key """ - field: OrganizationOrderField! -} + license( + """ + The license's downcased SPDX ID + """ + key: String! + ): License -""" -Properties by which organization connections can be ordered. -""" -enum OrganizationOrderField { """ - Order organizations by creation time + Return a list of known open source licenses """ - CREATED_AT + licenses: [License]! """ - Order organizations by login + Get alphabetically sorted list of Marketplace categories """ - LOGIN -} + 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!]! -""" -An organization teams hovercard context -""" -type OrganizationTeamsHovercardContext implements HovercardContext { """ - A string describing this context + Look up a Marketplace category by its slug. """ - message: String! + marketplaceCategory( + """ + The URL slug of the category. + """ + slug: String! + + """ + Also check topic aliases for the category slug + """ + useTopicAliases: Boolean + ): MarketplaceCategory """ - An octicon to accompany this context + Look up a single Marketplace listing """ - octicon: String! + marketplaceListing( + """ + Select the listing that matches this slug. It's the short name of the listing used in its URL. + """ + slug: String! + ): MarketplaceListing """ - Teams in this organization the user is a member of that are relevant + Look up Marketplace listings """ - relevantTeams( + 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. """ @@ -19408,114 +37363,134 @@ 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! + """ + Select listings for products owned by the specified organization. + """ + organizationId: ID - """ - An octicon to accompany this context - """ - octicon: String! + """ + Select only listings where the primary category matches the given category slug. + """ + primaryCategoryOnly: Boolean = false - """ - Organizations this user is a member of that are relevant - """ - relevantOrganizations( """ - Returns the elements in the list that come after the specified cursor. + Select the listings with these slugs, if they are visible to the viewer. """ - after: String + slugs: [String] """ - Returns the elements in the list that come before the specified cursor. + Also check topic aliases for the category slug """ - before: String + useTopicAliases: Boolean """ - Returns the first _n_ elements from the list. + Select listings to which user has admin access. If omitted, listings visible to the + viewer are returned. """ - first: Int + viewerCanAdmin: Boolean """ - Returns the last _n_ elements from the list. + Select only listings that offer a free trial. """ - last: Int - ): OrganizationConnection! + withFreeTrialsOnly: Boolean = false + ): MarketplaceListingConnection! """ - The total number of organizations this user is in + Return information about the GitHub instance """ - totalOrganizationCount: Int! -} + meta: GitHubMetadata! -""" -Information for an uploaded package. -""" -type Package implements Node { - id: ID! + """ + Fetches an object given its ID. + """ + node( + """ + ID of the object. + """ + id: ID! + ): Node """ - Find the latest version for the package. + Lookup nodes by a list of IDs. """ - latestVersion: PackageVersion + nodes( + """ + The list of node IDs. + """ + ids: [ID!]! + ): [Node]! """ - Identifies the name of the package. + Lookup a organization by login. """ - name: String! + organization( + """ + The organization's login. + """ + login: String! + ): Organization """ - Identifies the type of the package. + The client's rate limit information. """ - packageType: PackageType! + rateLimit( + """ + If true, calculate the cost for the query without evaluating it + """ + dryRun: Boolean = false + ): RateLimit """ - The repository this package belongs to. + Workaround for re-exposing the root query object. (Refer to + https://github.com/facebook/relay/issues/112 for more information.) """ - repository: Repository + relay: Query! """ - Statistics about package activity. + Lookup a given repository by the owner and repository name. """ - statistics: PackageStatistics + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + + """ + The name of the repository + """ + name: String! + + """ + The login field of a user or organization + """ + owner: String! + ): Repository """ - Find package version by version string. + Lookup a repository owner (ie. either a User or an Organization) by login. """ - version( + repositoryOwner( """ - The package version. + The username to lookup the owner by. """ - version: String! - ): PackageVersion + login: String! + ): RepositoryOwner """ - list of versions for this package + Lookup resource by a URL. """ - versions( + resource( + """ + The URL. + """ + url: URI! + ): UniformResourceLocatable + + """ + Perform a search across resources, returning a maximum of 1,000 results. + """ + search( """ Returns the elements in the list that come after the specified cursor. """ @@ -19537,199 +37512,130 @@ type Package implements Node { last: Int """ - Ordering of the returned packages. + The search string to look for. """ - orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} - ): PackageVersionConnection! -} - -""" -The connection type for Package. -""" -type PackageConnection { - """ - A list of edges. - """ - edges: [PackageEdge] - - """ - A list of nodes. - """ - nodes: [Package] - - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! - - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} - -""" -An edge in a connection. -""" -type PackageEdge { - """ - A cursor for use in pagination. - """ - cursor: String! - - """ - The item at the end of the edge. - """ - node: Package -} - -""" -A file in a package version. -""" -type PackageFile implements Node { - id: ID! - - """ - MD5 hash of the file. - """ - md5: String + query: String! - """ - Name of the file. - """ - name: String! + """ + The types of search items to search within. + """ + type: SearchType! + ): SearchResultItemConnection! """ - The package version this file belongs to. + GitHub Security Advisories """ - packageVersion: PackageVersion + securityAdvisories( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - SHA1 hash of the file. - """ - sha1: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - SHA256 hash of the file. - """ - sha256: String + """ + A list of classifications to filter advisories by. + """ + classifications: [SecurityAdvisoryClassification!] - """ - Size of the file in bytes. - """ - size: Int + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + """ + Filter advisories by identifier, e.g. GHSA or CVE. + """ + identifier: SecurityAdvisoryIdentifierFilter - """ - URL to download the asset. - """ - url: URI -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -The connection type for PackageFile. -""" -type PackageFileConnection { - """ - A list of edges. - """ - edges: [PackageFileEdge] + """ + Ordering options for the returned topics. + """ + orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} - """ - A list of nodes. - """ - nodes: [PackageFile] + """ + Filter advisories to those published since a time in the past. + """ + publishedSince: DateTime - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Filter advisories to those updated since a time in the past. + """ + updatedSince: DateTime + ): SecurityAdvisoryConnection! """ - Identifies the total count of items in the connection. + Fetch a Security Advisory by its GHSA ID """ - totalCount: Int! -} + securityAdvisory( + """ + GitHub Security Advisory ID. + """ + ghsaId: String! + ): SecurityAdvisory -""" -An edge in a connection. -""" -type PackageFileEdge { """ - A cursor for use in pagination. + Software Vulnerabilities documented by GitHub Security Advisories """ - cursor: String! + securityVulnerabilities( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The item at the end of the edge. - """ - node: PackageFile -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Ways in which lists of package files can be ordered upon return. -""" -input PackageFileOrder { - """ - The direction in which to order package files by the specified field. - """ - direction: OrderDirection + """ + A list of advisory classifications to filter vulnerabilities by. + """ + classifications: [SecurityAdvisoryClassification!] - """ - The field in which to order package files by. - """ - field: PackageFileOrderField -} + """ + An ecosystem to filter vulnerabilities by. + """ + ecosystem: SecurityAdvisoryEcosystem -""" -Properties by which package file connections can be ordered. -""" -enum PackageFileOrderField { - """ - Order package files by creation time - """ - CREATED_AT -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -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 + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The field in which to order packages by. - """ - field: PackageOrderField -} + """ + Ordering options for the returned topics. + """ + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} -""" -Properties by which package connections can be ordered. -""" -enum PackageOrderField { - """ - Order packages by creation time - """ - CREATED_AT -} + """ + A package name to filter vulnerabilities by. + """ + package: String -""" -Represents an owner of a package. -""" -interface PackageOwner { - id: ID! + """ + A list of severities to filter vulnerabilities by. + """ + severities: [SecurityAdvisorySeverity!] + ): SecurityVulnerabilityConnection! """ - A list of packages under the owner. + Users and organizations who can be sponsored via GitHub Sponsors. """ - packages( + sponsorables( """ Returns the elements in the list that come after the specified cursor. """ @@ -19741,112 +37647,135 @@ interface PackageOwner { before: String """ - Returns the first _n_ elements from the list. + 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. """ - first: Int + dependencyEcosystem: SecurityAdvisoryEcosystem """ - Returns the last _n_ elements from the list. + 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. """ - last: Int + ecosystem: DependencyGraphEcosystem """ - Find packages by their names. + Returns the first _n_ elements from the list. """ - names: [String] + first: Int """ - Ordering of the returned packages. + Returns the last _n_ elements from the list. """ - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + last: Int """ - Filter registry package by type. + 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. """ - packageType: PackageType + onlyDependencies: Boolean = false """ - Find packages in a repository by ID. + Ordering options for users and organizations returned from the connection. """ - repositoryId: ID - ): PackageConnection! -} - -""" -Represents a object that contains package activity statistics such as downloads. -""" -type PackageStatistics { - """ - Number of times the package was downloaded since it was created. - """ - downloadsTotalCount: Int! -} + orderBy: SponsorableOrder = {field: LOGIN, direction: ASC} -""" -A version tag contains the mapping between a tag name and a version. -""" -type PackageTag implements Node { - id: ID! + """ + 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. + """ + orgLoginForDependencies: String + ): SponsorableItemConnection! """ - Identifies the tag name of the version. + Look up a topic by name. """ - name: String! + topic( + """ + The topic's name. + """ + name: String! + ): Topic """ - Version that the tag is associated with. + Lookup a user by login. """ - version: PackageVersion -} + user( + """ + The user's login. + """ + login: String! + ): User -""" -The possible types of a package. -""" -enum PackageType { """ - A debian package. + The currently authenticated user. """ - DEBIAN + viewer: User! +} +""" +Represents the client's rate limit. +""" +type RateLimit { """ - A docker image. + The point cost for the current query counting against the rate limit. """ - DOCKER + cost: Int! """ - A maven package. + The maximum number of points the client is permitted to consume in a 60 minute window. """ - MAVEN + limit: Int! """ - An npm package. + The maximum number of nodes this query may return """ - NPM + nodeCount: Int! """ - A nuget package. + The number of points remaining in the current rate limit window. """ - NUGET + remaining: Int! """ - A python package. + The time at which the current rate limit window resets in UTC epoch seconds. """ - PYPI + resetAt: DateTime! """ - A rubygems package. + The number of points used in the current rate limit window. """ - RUBYGEMS + used: Int! } """ -Information about a specific package version. +Represents a subject that can be reacted on. """ -type PackageVersion implements Node { +interface Reactable { """ - List of files associated with this package version + Identifies the primary key from the database. """ - files( + databaseId: Int + id: ID! + + """ + 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. """ @@ -19857,6 +37786,11 @@ type PackageVersion implements Node { """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -19868,66 +37802,102 @@ type PackageVersion implements Node { last: Int """ - Ordering of the returned package files. + Allows specifying the order in which reactions are returned. """ - orderBy: PackageFileOrder = {field: CREATED_AT, direction: ASC} - ): PackageFileConnection! - id: ID! + orderBy: ReactionOrder + ): ReactionConnection! """ - The package associated with this version. + Can user react to this subject """ - package: Package + viewerCanReact: Boolean! +} + +""" +The connection type for User. +""" +type ReactingUserConnection { + """ + A list of edges. + """ + edges: [ReactingUserEdge] """ - The platform this version was built for. + A list of nodes. """ - platform: String + nodes: [User] """ - Whether or not this version is a pre-release. + Information to aid in pagination. """ - preRelease: Boolean! + pageInfo: PageInfo! """ - The README of this package version. + Identifies the total count of items in the connection. """ - readme: String + totalCount: Int! +} +""" +Represents a user that's made a reaction. +""" +type ReactingUserEdge { """ - The release associated with this package version. + A cursor for use in pagination. """ - release: Release + cursor: String! + node: User! """ - Statistics about package activity. + The moment when the user made the reaction. """ - statistics: PackageVersionStatistics + reactedAt: DateTime! +} +""" +An emoji reaction to a particular piece of content. +""" +type Reaction implements Node { """ - The package version summary. + Identifies the emoji reaction. """ - summary: String + content: ReactionContent! """ - The version string. + Identifies the date and time when the object was created. """ - version: String! + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + The reactable piece of content + """ + reactable: Reactable! + + """ + Identifies the user who created this reaction. + """ + user: User } """ -The connection type for PackageVersion. +A list of reactions that have been left on the subject. """ -type PackageVersionConnection { +type ReactionConnection { """ A list of edges. """ - edges: [PackageVersionEdge] + edges: [ReactionEdge] """ A list of nodes. """ - nodes: [PackageVersion] + nodes: [Reaction] """ Information to aid in pagination. @@ -19938,156 +37908,194 @@ type PackageVersionConnection { Identifies the total count of items in the connection. """ totalCount: Int! + + """ + Whether or not the authenticated user has left a reaction on the subject. + """ + viewerHasReacted: Boolean! } """ -An edge in a connection. +Emojis that can be attached to Issues, Pull Requests and Comments. """ -type PackageVersionEdge { +enum ReactionContent { """ - A cursor for use in pagination. + Represents the `:confused:` emoji. """ - cursor: String! + CONFUSED """ - The item at the end of the edge. + Represents the `:eyes:` emoji. """ - node: PackageVersion -} + EYES -""" -Ways in which lists of package versions can be ordered upon return. -""" -input PackageVersionOrder { """ - The direction in which to order package versions by the specified field. + Represents the `:heart:` emoji. """ - direction: OrderDirection + HEART """ - The field in which to order package versions by. + Represents the `:hooray:` emoji. """ - field: PackageVersionOrderField -} + HOORAY -""" -Properties by which package version connections can be ordered. -""" -enum PackageVersionOrderField { """ - Order package versions by creation time + Represents the `:laugh:` emoji. """ - CREATED_AT + LAUGH + + """ + Represents the `:rocket:` emoji. + """ + ROCKET + + """ + Represents the `:-1:` emoji. + """ + THUMBS_DOWN + + """ + Represents the `:+1:` emoji. + """ + THUMBS_UP } """ -Represents a object that contains package version activity statistics such as downloads. +An edge in a connection. """ -type PackageVersionStatistics { +type ReactionEdge { """ - Number of times the package was downloaded since it was created. + A cursor for use in pagination. """ - downloadsTotalCount: Int! + cursor: String! + + """ + The item at the end of the edge. + """ + node: Reaction } """ -Information about pagination in a connection. +A group of emoji reactions to a particular piece of content. """ -type PageInfo { +type ReactionGroup { """ - When paginating forwards, the cursor to continue. + Identifies the emoji reaction. """ - endCursor: String + content: ReactionContent! """ - When paginating forwards, are there more items? + Identifies when the reaction was created. """ - hasNextPage: Boolean! + createdAt: DateTime """ - When paginating backwards, are there more items? + Reactors to the reaction subject with the emotion represented by this reaction group. """ - hasPreviousPage: Boolean! + reactors( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - When paginating backwards, the cursor to continue. - """ - startCursor: String -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Types that can grant permissions on a repository to a user -""" -union PermissionGranter = Organization | Repository | Team + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ReactorConnection! -""" -A level of permission and source for a user's access to a repository. -""" -type PermissionSource { """ - The organization the repository belongs to. + The subject that was reacted to. """ - organization: Organization! + subject: Reactable! """ - The level of access this source has granted to the user. + Users who have reacted to the reaction subject with the emotion represented by this reaction group """ - permission: DefaultRepositoryPermissionField! + 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 + ): 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. @@ -20101,125 +38109,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. @@ -20235,7 +38283,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. """ @@ -20244,282 +38292,358 @@ 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. +Parameters to be used for the ref_name condition """ -scalar PreciseDateTime +type RefNameConditionTarget { + """ + Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. + """ + exclude: [String!]! + + """ + Array of ref names or patterns to include. One of these patterns must match + for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the + default branch or `~ALL` to include all branches. + """ + include: [String!]! +} """ -Audit log entry for a private_repository_forking.disable event. +Parameters to be used for the ref_name condition """ -type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +input RefNameConditionTargetInput { """ - The action name + Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. """ - action: String! + exclude: [String!]! """ - The user who initiated the action + Array of ref names or patterns to include. One of these patterns must match + for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the + default branch or `~ALL` to include all branches. """ - actor: AuditEntryActor + include: [String!]! +} +""" +Ways in which lists of git refs can be ordered upon return. +""" +input RefOrder { """ - The IP address of the actor + The direction in which to order refs by the specified field. """ - actorIp: String + direction: OrderDirection! """ - A readable representation of the actor's location + The field in which to order refs by. """ - actorLocation: ActorLocation + field: RefOrderField! +} +""" +Properties by which ref connections can be ordered. +""" +enum RefOrderField { """ - The username of the user who initiated the action + Order refs by their alphanumeric name """ - actorLogin: String + ALPHABETICAL """ - The HTTP path for the actor. + Order refs by underlying commit date if the ref prefix is refs/tags/ """ - actorResourcePath: URI + TAG_COMMIT_DATE +} +""" +A ref update +""" +input RefUpdate @preview(toggledBy: "update-refs-preview") { """ - The HTTP URL for the actor. + The value this ref should be updated to. """ - actorUrl: URI + afterOid: GitObjectID! """ - The time the action was initiated + The value this ref needs to point to before the update. """ - createdAt: PreciseDateTime! + beforeOid: GitObjectID """ - The HTTP path for this enterprise. + Force a non fast-forward update. + """ + force: Boolean = false + + """ + The fully qualified name of the ref to be update. For example `refs/heads/branch-name` + """ + name: GitRefname! +} + +""" +A ref update rules for a viewer. +""" +type RefUpdateRule { + """ + 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. """ @@ -20539,54 +38663,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. """ @@ -20597,6 +38694,11 @@ interface ProfileOwner { """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -20608,15 +38710,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. """ @@ -20638,3864 +38740,3426 @@ 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 + + """ + The Git tag the release points to + """ + tag: Ref + + """ + The tag commit for this release. + """ + tagCommit: Commit + + """ + The name of the release's Git tag + """ + tagName: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this issue + """ + url: URI! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! } """ -Projects manage issues, pull requests and notes within a project owner. +A release asset contains the content for a release asset. """ -type Project implements Closable & Node & Updatable { +type ReleaseAsset implements Node { """ - The project's description body. + The asset's content-type """ - body: String + contentType: String! """ - The projects description body rendered to HTML. + Identifies the date and time when the object was created. """ - bodyHTML: HTML! + createdAt: DateTime! """ - `true` if the object is closed (definition of closed may depend on type) + The number of times this asset was downloaded """ - closed: Boolean! + downloadCount: Int! """ - Identifies the date and time when the object was closed. + Identifies the URL where you can download the release asset via the browser. """ - closedAt: DateTime + downloadUrl: URI! + id: ID! """ - List of columns in the project + Identifies the title of the release asset. """ - columns( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + name: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Release that the asset is associated with + """ + release: Release - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The size (in bytes) of the asset + """ + size: Int! - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectColumnConnection! + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! """ - Identifies the date and time when the object was created. + The user that performed the upload """ - createdAt: DateTime! + uploadedBy: User! """ - The actor who originally created the project. + Identifies the URL of the release asset. """ - creator: Actor + url: URI! +} +""" +The connection type for ReleaseAsset. +""" +type ReleaseAssetConnection { """ - Identifies the primary key from the database. + A list of edges. """ - databaseId: Int - id: ID! + edges: [ReleaseAssetEdge] + + """ + A list of nodes. + """ + nodes: [ReleaseAsset] + + """ + 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. + """ + node: Release +} + +""" +Ways in which lists of releases can be ordered upon return. +""" +input ReleaseOrder { + """ + The direction in which to order releases by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order releases by. + """ + field: ReleaseOrderField! +} + +""" +Properties by which release connections can be ordered. +""" +enum ReleaseOrderField { + """ + Order releases by creation time + """ + CREATED_AT + + """ + Order releases alphabetically by name + """ + NAME +} + +""" +Autogenerated input type of RemoveAssigneesFromAssignable +""" +input RemoveAssigneesFromAssignableInput { + """ + The id of the assignable object to remove assignees from. + """ + assignableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Assignable") + + """ + The id of users to remove as assignees. + """ + assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated return type of RemoveAssigneesFromAssignable +""" +type RemoveAssigneesFromAssignablePayload { + """ + The item that was unassigned. + """ + assignable: Assignable + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated input type of RemoveEnterpriseAdmin +""" +input RemoveEnterpriseAdminInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String """ - The project's name. + The Enterprise ID from which to remove the administrator. """ - name: String! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The project's number. + The login of the user to remove as an administrator. """ - number: Int! + login: String! +} +""" +Autogenerated return type of RemoveEnterpriseAdmin +""" +type RemoveEnterpriseAdminPayload { """ - The project's owner. Currently limited to repositories, organizations, and users. + The user who was removed as an administrator. """ - owner: ProjectOwner! + admin: User """ - List of pending cards in this project + A unique identifier for the client performing the mutation. """ - 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! + clientMutationId: String """ - The HTTP path for this project + The updated enterprise. """ - resourcePath: URI! + enterprise: Enterprise """ - Whether the project is open or closed. + A message confirming the result of removing an administrator. """ - state: ProjectState! + message: String """ - Identifies the date and time when the object was last updated. + The viewer performing the mutation. """ - updatedAt: DateTime! + viewer: User +} +""" +Autogenerated input type of RemoveEnterpriseIdentityProvider +""" +input RemoveEnterpriseIdentityProviderInput { """ - The HTTP URL for this project + A unique identifier for the client performing the mutation. """ - url: URI! + clientMutationId: String """ - Check if the current viewer can update this object. + The ID of the enterprise from which to remove the identity provider. """ - viewerCanUpdate: Boolean! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) } """ -A card in a project. +Autogenerated return type of RemoveEnterpriseIdentityProvider """ -type ProjectCard implements Node { +type RemoveEnterpriseIdentityProviderPayload { """ - 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. + A unique identifier for the client performing the mutation. """ - column: ProjectColumn + clientMutationId: String """ - The card content item + The identity provider that was removed from the enterprise. """ - content: ProjectCardItem + identityProvider: EnterpriseIdentityProvider +} +""" +Autogenerated input type of RemoveEnterpriseMember +""" +input RemoveEnterpriseMemberInput { """ - Identifies the date and time when the object was created. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime! + clientMutationId: String """ - The actor who created this card + The ID of the enterprise from which the user should be removed. """ - creator: Actor + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - Identifies the primary key from the database. + The ID of the user to remove from the enterprise. """ - databaseId: Int - id: ID! + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of RemoveEnterpriseMember +""" +type RemoveEnterpriseMemberPayload { """ - Whether the card is archived + A unique identifier for the client performing the mutation. """ - isArchived: Boolean! + clientMutationId: String """ - The card note + The updated enterprise. """ - note: String + enterprise: Enterprise """ - The project that contains this card. + The user that was removed from the enterprise. """ - project: Project! + user: User """ - The HTTP path for this card + The viewer performing the mutation. """ - resourcePath: URI! + viewer: User +} +""" +Autogenerated input type of RemoveEnterpriseOrganization +""" +input RemoveEnterpriseOrganizationInput { """ - The state of ProjectCard + A unique identifier for the client performing the mutation. """ - state: ProjectCardState + clientMutationId: String """ - Identifies the date and time when the object was last updated. + The ID of the enterprise from which the organization should be removed. """ - updatedAt: DateTime! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The HTTP URL for this card + The ID of the organization to remove from the enterprise. """ - url: URI! + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) } """ -The possible archived states of a project card. +Autogenerated return type of RemoveEnterpriseOrganization """ -enum ProjectCardArchivedState { +type RemoveEnterpriseOrganizationPayload { """ - 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 updated enterprise. """ - NOT_ARCHIVED -} + enterprise: Enterprise -""" -The connection type for ProjectCard. -""" -type ProjectCardConnection { """ - A list of edges. + The organization that was removed from the enterprise. """ - edges: [ProjectCardEdge] + organization: Organization """ - A list of nodes. + The viewer performing the mutation. """ - nodes: [ProjectCard] + viewer: User +} +""" +Autogenerated input type of RemoveEnterpriseSupportEntitlement +""" +input RemoveEnterpriseSupportEntitlementInput { """ - 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 which the admin belongs to. """ - totalCount: Int! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of a member who will lose the support entitlement. + """ + login: String! } """ -An edge in a connection. +Autogenerated return type of RemoveEnterpriseSupportEntitlement """ -type ProjectCardEdge { +type RemoveEnterpriseSupportEntitlementPayload { """ - 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. + A message confirming the result of removing the support entitlement. """ - node: ProjectCard + message: String } """ -An issue or PR and its owning repository to be used in a project card. +Autogenerated input type of RemoveLabelsFromLabelable """ -input ProjectCardImport { +input RemoveLabelsFromLabelableInput { """ - The issue or pull request number. + A unique identifier for the client performing the mutation. """ - number: Int! + clientMutationId: String """ - Repository name with owner (owner/repository). + The ids of labels to remove. """ - repository: String! + labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"]) + + """ + The id of the Labelable to remove labels from. + """ + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ -Types that can be inside Project Cards. +Autogenerated return type of RemoveLabelsFromLabelable """ -union ProjectCardItem = Issue | PullRequest +type RemoveLabelsFromLabelablePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Labelable the labels were removed from. + """ + labelable: Labelable +} """ -Various content states of a ProjectCard +Autogenerated input type of RemoveOutsideCollaborator """ -enum ProjectCardState { +input RemoveOutsideCollaboratorInput { """ - 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 organization to remove the outside collaborator from. """ - NOTE_ONLY + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) """ - The card is redacted. + The ID of the outside collaborator to remove. """ - REDACTED + userId: ID! @possibleTypes(concreteTypes: ["User"]) } """ -A column inside a project. +Autogenerated return type of RemoveOutsideCollaborator """ -type ProjectColumn implements Node { +type RemoveOutsideCollaboratorPayload { """ - 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] - - """ - 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! + clientMutationId: String """ - Identifies the date and time when the object was created. + The user that was removed as an outside collaborator. """ - createdAt: DateTime! + removedUser: User +} +""" +Autogenerated input type of RemoveReaction +""" +input RemoveReactionInput { """ - Identifies the primary key from the database. + A unique identifier for the client performing the mutation. """ - databaseId: Int - id: ID! + clientMutationId: String """ - The project column's name. + The name of the emoji reaction to remove. """ - name: String! + content: ReactionContent! """ - The project that contains this column. + The Node ID of the subject to modify. """ - project: Project! + subjectId: ID! + @possibleTypes( + concreteTypes: [ + "CommitComment" + "Discussion" + "DiscussionComment" + "Issue" + "IssueComment" + "PullRequest" + "PullRequestReview" + "PullRequestReviewComment" + "Release" + "TeamDiscussion" + "TeamDiscussionComment" + ] + abstractType: "Reactable" + ) +} +""" +Autogenerated return type of RemoveReaction +""" +type RemoveReactionPayload { """ - The semantic purpose of the column + A unique identifier for the client performing the mutation. """ - purpose: ProjectColumnPurpose + clientMutationId: String """ - The HTTP path for this project column + The reaction object. """ - resourcePath: URI! + reaction: Reaction """ - Identifies the date and time when the object was last updated. + The reaction groups for the subject. """ - updatedAt: DateTime! + reactionGroups: [ReactionGroup!] """ - The HTTP URL for this project column + The reactable subject. """ - url: URI! + subject: Reactable } """ -The connection type for ProjectColumn. +Autogenerated input type of RemoveStar """ -type ProjectColumnConnection { +input RemoveStarInput { """ - A list of edges. + A unique identifier for the client performing the mutation. """ - edges: [ProjectColumnEdge] + clientMutationId: String """ - A list of nodes. + The Starrable ID to unstar. """ - nodes: [ProjectColumn] + 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 ProjectColumnEdge { +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: ProjectColumn + subjectId: ID! @possibleTypes(concreteTypes: ["Discussion", "DiscussionComment"], abstractType: "Votable") } """ -A project column and a list of its issues and PRs. +Autogenerated return type of RemoveUpvote """ -input ProjectColumnImport { - """ - The name of the column. - """ - columnName: String! - +type RemoveUpvotePayload { """ - A list of issues and pull requests in the column. + A unique identifier for the client performing the mutation. """ - issues: [ProjectCardImport!] + clientMutationId: String """ - The position of the column, starting from 0. + The votable subject. """ - position: Int! + subject: Votable } """ -The semantic purpose of the column - todo, in progress, or done. +Represents a 'removed_from_merge_queue' event on a given pull request. """ -enum ProjectColumnPurpose { +type RemovedFromMergeQueueEvent implements Node { """ - The column contains cards which are complete + Identifies the actor who performed the event. """ - DONE + actor: Actor """ - The column contains cards which are currently being worked on + Identifies the before commit SHA for the 'removed_from_merge_queue' event. """ - IN_PROGRESS + beforeCommit: Commit """ - The column contains cards still to be worked on + Identifies the date and time when the object was created. """ - TODO -} + createdAt: DateTime! -""" -A list of projects associated with the owner. -""" -type ProjectConnection { """ - A list of edges. + The user who removed this Pull Request from the merge queue """ - edges: [ProjectEdge] + enqueuer: User + id: ID! """ - A list of nodes. + The merge queue where this pull request was removed from. """ - nodes: [Project] + mergeQueue: MergeQueue """ - Information to aid in pagination. + PullRequest referenced by event. """ - pageInfo: PageInfo! + pullRequest: PullRequest """ - Identifies the total count of items in the connection. + The reason this pull request was removed from the queue. """ - totalCount: Int! + reason: String } """ -An edge in a connection. +Represents a 'removed_from_project' event on a given issue or pull request. """ -type ProjectEdge { +type RemovedFromProjectEvent implements Node { """ - A cursor for use in pagination. + Identifies the actor who performed the event. """ - cursor: String! + actor: Actor """ - The item at the end of the edge. + Identifies the date and time when the object was created. """ - node: Project -} + createdAt: DateTime! -""" -Ways in which lists of projects can be ordered upon return. -""" -input ProjectOrder { """ - The direction in which to order projects by the specified field. + Identifies the primary key from the database. """ - direction: OrderDirection! + databaseId: Int + id: ID! """ - The field in which to order projects by. + Project referenced by event. """ - field: ProjectOrderField! + project: Project @preview(toggledBy: "starfox-preview") + + """ + Column name referenced by this project event. + """ + projectColumnName: String! @preview(toggledBy: "starfox-preview") } """ -Properties by which project connections can be ordered. +Represents a 'renamed' event on a given issue or pull request """ -enum ProjectOrderField { +type RenamedTitleEvent 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 current title of the issue or pull request. """ - UPDATED_AT + currentTitle: String! + id: ID! + + """ + Identifies the previous title of the issue or pull request. + """ + previousTitle: String! + + """ + Subject that was renamed. + """ + subject: RenamedTitleSubject! } """ -Represents an owner of a Project. +An object which has a renamable title """ -interface ProjectOwner { - id: ID! +union RenamedTitleSubject = Issue | PullRequest +""" +Autogenerated input type of ReopenDiscussion +""" +input ReopenDiscussionInput { """ - Find project by number. + A unique identifier for the client performing the mutation. """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + clientMutationId: String """ - A list of projects under the owner. + ID of the discussion to be reopened. """ - 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 + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Autogenerated return type of ReopenDiscussion +""" +type ReopenDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The discussion that was reopened. + """ + discussion: Discussion +} - """ - 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! """ - The HTTP path for the checks of this pull request. + The user who initiated the action """ - checksResourcePath: URI! + actor: AuditEntryActor """ - The HTTP URL for the checks of this pull request. + The IP address of the actor """ - checksUrl: URI! + actorIp: String """ - `true` if the pull request is closed + A readable representation of the actor's location """ - closed: Boolean! + actorLocation: ActorLocation """ - Identifies the date and time when the object was closed. + The username of the user who initiated the action """ - closedAt: DateTime + actorLogin: String """ - A list of comments associated with the pull request. + 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 - ): IssueCommentConnection! + actorResourcePath: URI """ - A list of commits present in this pull request's head branch not present in the base branch. + The HTTP URL for the actor. """ - 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! + actorUrl: URI """ - Identifies the date and time when the object was created. + The time the action was initiated """ - createdAt: DateTime! + createdAt: PreciseDateTime! + id: ID! """ - Check if this comment was created via an email reply. + The corresponding operation type for the action """ - createdViaEmail: Boolean! + operationType: OperationType """ - Identifies the primary key from the database. + The Organization associated with the Audit Entry. """ - databaseId: Int + organization: Organization """ - The number of deletions in this pull request. + The name of the Organization. """ - deletions: Int! + organizationName: String """ - The actor who edited this pull request's body. + The HTTP path for the organization """ - editor: Actor + organizationResourcePath: URI """ - Lists the files changed within this pull request. + The HTTP URL for 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 + organizationUrl: URI """ - Identifies the head Ref associated with the pull request. + The repository associated with the action """ - headRef: Ref + repository: Repository """ - Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. + The name of the repository """ - headRefName: String! + repositoryName: String """ - Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. + The HTTP path for the repository """ - headRefOid: GitObjectID! + repositoryResourcePath: URI """ - The repository associated with this pull request's head Ref. + The HTTP URL for the repository """ - headRepository: Repository + repositoryUrl: URI """ - The owner of the repository associated with this pull request's head Ref. + The user affected by the action """ - headRepositoryOwner: RepositoryOwner + user: User """ - The hovercard information for this issue + For actions involving two users, the actor is the initiator and the user is the affected user. """ - hovercard( - """ - Whether or not to include notification contexts - """ - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! + userLogin: String """ - Check if this comment was edited and includes an edit with the creation data + The HTTP path for the user. """ - includesCreatedEdit: Boolean! + userResourcePath: URI """ - The head and base repositories are different. + The HTTP URL for the user. """ - isCrossRepository: Boolean! + userUrl: URI """ - Identifies if the pull request is a draft. + The visibility of the repository """ - isDraft: Boolean! + visibility: RepoAddMemberAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoAddMemberAuditEntryVisibility { """ - A list of labels associated with the object. + The repository is visible only to users in the same business. """ - 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 + INTERNAL """ - The moment the editor made the last edit + The repository is visible only to those with explicit access. """ - lastEditedAt: DateTime + PRIVATE """ - `true` if the pull request is locked + The repository is visible to everyone. """ - locked: Boolean! + PUBLIC +} +""" +Audit log entry for a repo.add_topic event. +""" +type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { """ - Indicates whether maintainers can modify the pull request. + The action name """ - maintainerCanModify: Boolean! + action: String! """ - The commit that was created when this pull request was merged. + The user who initiated the action """ - mergeCommit: Commit + actor: AuditEntryActor """ - Detailed information about the current pull request merge state status. + The IP address of the actor """ - mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview") + actorIp: String """ - Whether or not the pull request can be merged based on the existence of merge conflicts. + A readable representation of the actor's location """ - mergeable: MergeableState! + actorLocation: ActorLocation """ - Whether or not the pull request was merged. + The username of the user who initiated the action """ - merged: Boolean! + actorLogin: String """ - The date and time that the pull request was merged. + The HTTP path for the actor. """ - mergedAt: DateTime + actorResourcePath: URI """ - The actor who merged the pull request. + The HTTP URL for the actor. """ - mergedBy: Actor + actorUrl: URI """ - Identifies the milestone associated with the pull request. + The time the action was initiated """ - milestone: Milestone + createdAt: PreciseDateTime! + id: ID! """ - Identifies the pull request number. + The corresponding operation type for the action """ - number: Int! + operationType: OperationType """ - A list of Users that are participating in the Pull Request conversation. + The Organization associated with the Audit Entry. """ - 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! + organization: Organization """ - The permalink to the pull request. + The name of the Organization. """ - permalink: URI! + organizationName: String """ - 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 HTTP path for the organization """ - potentialMergeCommit: Commit + organizationResourcePath: URI """ - List of project cards associated with this pull request. + The HTTP URL for 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 + organizationUrl: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + """ + The repository associated with the action + """ + repository: Repository """ - Identifies when the comment was published at. + The name of the repository """ - publishedAt: DateTime + repositoryName: String """ - A list of reactions grouped by content left on the subject. + The HTTP path for the repository """ - reactionGroups: [ReactionGroup!] + repositoryResourcePath: URI """ - A list of Reactions left on the Issue. + The HTTP URL for the repository """ - 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! + repositoryUrl: URI """ - The repository associated with this node. + The name of the topic added to the repository """ - repository: Repository! + topic: Topic """ - The HTTP path for this pull request. + The name of the topic added to the repository """ - resourcePath: URI! + topicName: String """ - The HTTP path for reverting this pull request. + The user affected by the action """ - revertResourcePath: URI! + user: User """ - The HTTP URL for reverting this pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - revertUrl: URI! + userLogin: String """ - The current status of this pull request with respect to code review. + The HTTP path for the user. """ - reviewDecision: PullRequestReviewDecision + userResourcePath: URI """ - A list of review requests associated with the pull request. + The HTTP URL for the user. """ - reviewRequests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + userUrl: URI +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Audit log entry for a repo.archived event. +""" +type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { + """ + 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 - ): ReviewRequestConnection + """ + The IP address of the actor + """ + actorIp: String """ - The list of all review threads for this pull request. + A readable representation of the actor's location """ - reviewThreads( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - ): PullRequestReviewThreadConnection! + """ + The HTTP URL for the actor. + """ + actorUrl: URI """ - A list of reviews associated with the pull request. + The time the action was initiated """ - reviews( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + createdAt: PreciseDateTime! + id: ID! - """ - Filter by author of the review. - """ - author: 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 - """ - A list of states to filter the reviews. - """ - states: [PullRequestReviewState!] - ): PullRequestReviewConnection + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - Identifies the state of the pull request. + The repository associated with the action """ - state: PullRequestState! + repository: Repository """ - A list of reviewer suggestions based on commit history and past review comments. + The name of the repository """ - suggestedReviewers: [SuggestedReviewer]! + repositoryName: String """ - A list of events, comments, commits, etc. associated with the pull request. + The HTTP path for the repository """ - timeline( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + repositoryResourcePath: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP URL for the repository + """ + repositoryUrl: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The user affected by the action + """ + user: User - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: 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.") + """ + The HTTP path for the user. + """ + userResourcePath: URI """ - A list of events, comments, commits, etc. associated with the pull request. + The HTTP URL for the user. """ - timelineItems( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + userUrl: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The visibility of the repository + """ + visibility: RepoArchivedAuditEntryVisibility +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +The privacy of a repository +""" +enum RepoArchivedAuditEntryVisibility { + """ + The repository is visible only to users in the same business. + """ + INTERNAL - """ - Filter timeline items by type. - """ - itemTypes: [PullRequestTimelineItemsItemType!] + """ + 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 +} - """ - Filter timeline items by a `since` timestamp. - """ - since: DateTime +""" +Audit log entry for a repo.change_merge_setting event. +""" +type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { + """ + The action name + """ + action: String! - """ - Skips the first _n_ elements in the list. - """ - skip: Int - ): PullRequestTimelineItemsConnection! + """ + The user who initiated the action + """ + actor: AuditEntryActor """ - Identifies the pull request title. + The IP address of the actor """ - title: String! + actorIp: String """ - Identifies the date and time when the object was last updated. + A readable representation of the actor's location """ - updatedAt: DateTime! + actorLocation: ActorLocation """ - The HTTP URL for this pull request. + The username of the user who initiated the action """ - url: URI! + actorLogin: String """ - A list of edits to this content. + The HTTP path for the actor. """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + actorResourcePath: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP URL for the actor. + """ + actorUrl: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserContentEditConnection + """ + Whether the change was to enable (true) or disable (false) the merge type + """ + isEnabled: Boolean """ - Whether or not the viewer can apply suggestion. + The merge method affected by the change """ - viewerCanApplySuggestion: Boolean! + mergeType: RepoChangeMergeSettingAuditEntryMergeType """ - Can user react to this subject + The corresponding operation type for the action """ - viewerCanReact: Boolean! + operationType: OperationType """ - Check if the viewer is able to change their subscription status for the repository. + The Organization associated with the Audit Entry. """ - viewerCanSubscribe: Boolean! + organization: Organization """ - Check if the current viewer can update this object. + The name of the Organization. """ - viewerCanUpdate: Boolean! + organizationName: String """ - Reasons why the current viewer can not update this comment. + The HTTP path for the organization """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + organizationResourcePath: URI """ - Did the viewer author this comment. + The HTTP URL for the organization """ - viewerDidAuthor: Boolean! + organizationUrl: URI """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + The repository associated with the action """ - viewerSubscription: SubscriptionState -} + repository: Repository -""" -A file changed in a pull request. -""" -type PullRequestChangedFile { """ - The number of additions to the file. + The name of the repository """ - additions: Int! + repositoryName: String """ - The number of deletions to the file. + The HTTP path for the repository """ - deletions: Int! + repositoryResourcePath: URI """ - The path of the file. + The HTTP URL for the repository """ - path: String! -} + repositoryUrl: URI -""" -The connection type for PullRequestChangedFile. -""" -type PullRequestChangedFileConnection { """ - A list of edges. + The user affected by the action """ - edges: [PullRequestChangedFileEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [PullRequestChangedFile] + 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 } """ -An edge in a connection. +The merge options available for pull requests to this repository. """ -type PullRequestChangedFileEdge { +enum RepoChangeMergeSettingAuditEntryMergeType { """ - A cursor for use in pagination. + The pull request is added to the base branch in a merge commit. """ - cursor: String! + MERGE """ - The item at the end of the edge. + Commits from the pull request are added onto the base branch individually without a merge commit. """ - node: PullRequestChangedFile + REBASE + + """ + The pull request's commits are squashed into a single commit before they are merged to the base branch. + """ + SQUASH } """ -Represents a Git commit part of a pull request. +Audit log entry for a repo.config.disable_anonymous_git_access event. """ -type PullRequestCommit implements Node & UniformResourceLocatable { +type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The Git commit object + The action name """ - commit: Commit! - id: ID! + action: String! """ - The pull request this commit belongs to + The user who initiated the action """ - pullRequest: PullRequest! + actor: AuditEntryActor """ - The HTTP path for this pull request commit + The IP address of the actor """ - resourcePath: URI! + actorIp: String """ - The HTTP URL for this pull request commit + A readable representation of the actor's location """ - url: URI! -} + actorLocation: ActorLocation -""" -Represents a commit comment thread part of a pull request. -""" -type PullRequestCommitCommentThread implements Node & RepositoryNode { """ - The comments that exist in this thread. + The username of the user who initiated 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 + actorLogin: String - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): CommitCommentConnection! + """ + The HTTP path for the actor. + """ + actorResourcePath: URI """ - The commit the comments were made on. + The HTTP URL for the actor. """ - commit: Commit! - id: ID! + actorUrl: URI """ - The file the comments were made on. + The time the action was initiated """ - path: String + createdAt: PreciseDateTime! + id: ID! """ - The position in the diff for the commit that the comment was made on. + The corresponding operation type for the action """ - position: Int + operationType: OperationType """ - The pull request this commit comment thread belongs to + The Organization associated with the Audit Entry. """ - pullRequest: PullRequest! + organization: Organization """ - The repository associated with this node. + The name of the Organization. """ - repository: Repository! -} + organizationName: String -""" -The connection type for PullRequestCommit. -""" -type PullRequestCommitConnection { """ - A list of edges. + The HTTP path for the organization """ - edges: [PullRequestCommitEdge] + organizationResourcePath: URI """ - A list of nodes. + The HTTP URL for the organization """ - nodes: [PullRequestCommit] + organizationUrl: URI """ - Information to aid in pagination. + The repository associated with the action """ - pageInfo: PageInfo! + repository: Repository """ - Identifies the total count of items in the connection. + The name of the repository """ - totalCount: Int! -} + repositoryName: String -""" -An edge in a connection. -""" -type PullRequestCommitEdge { """ - 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: PullRequestCommit -} + repositoryUrl: URI -""" -The connection type for PullRequest. -""" -type PullRequestConnection { """ - A list of edges. + The user affected by the action """ - edges: [PullRequestEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [PullRequest] + 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 } """ -This aggregates pull requests opened by a user within one repository. +Audit log entry for a repo.config.disable_collaborators_only event. """ -type PullRequestContributionsByRepository { +type RepoConfigDisableCollaboratorsOnlyAuditEntry 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 = {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 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_contributors_only event. +""" +type RepoConfigDisableContributorsOnlyAuditEntry 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_sockpuppet_disallowed event. """ -type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { - """ - The actor who authored the comment. - """ - author: Actor - +type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Author's association with the subject of the comment. + The action name """ - authorAssociation: CommentAuthorAssociation! + action: String! """ - The comment body of this review comment. + The user who initiated the action """ - body: String! + actor: AuditEntryActor """ - The body rendered to HTML. + The IP address of the actor """ - bodyHTML: HTML! + actorIp: String """ - The comment body of this review comment rendered as plain text. + A readable representation of the actor's location """ - bodyText: String! + actorLocation: ActorLocation """ - Identifies the commit associated with the comment. + The username of the user who initiated the action """ - commit: Commit + actorLogin: String """ - Identifies when the comment 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 diff hunk to which the comment applies. + The corresponding operation type for the action """ - diffHunk: String! + operationType: OperationType """ - Identifies when the comment was created in a draft state. + The Organization associated with the Audit Entry. """ - draftedAt: DateTime! + organization: Organization """ - The actor who edited the comment. + The name of the Organization. """ - editor: Actor - id: ID! + organizationName: String """ - Check if this comment was edited and includes an edit with the creation data + The HTTP path for the organization """ - includesCreatedEdit: Boolean! + organizationResourcePath: URI """ - Returns whether or not a comment has been minimized. + The HTTP URL for the organization """ - isMinimized: Boolean! + organizationUrl: URI """ - The moment the editor made the last edit + The repository associated with the action """ - lastEditedAt: DateTime + repository: Repository """ - Returns why the comment was minimized. + The name of the repository """ - minimizedReason: String + repositoryName: String """ - Identifies the original commit associated with the comment. + The HTTP path for the repository """ - originalCommit: Commit + repositoryResourcePath: URI """ - The original line index in the diff to which the comment applies. + The HTTP URL for the repository """ - originalPosition: Int! + repositoryUrl: URI """ - Identifies when the comment body is outdated + The user affected by the action """ - outdated: Boolean! + user: User """ - The path to which the comment applies. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - path: String! + userLogin: String """ - The line index in the diff to which the comment applies. + The HTTP path for the user. """ - position: Int + userResourcePath: URI """ - Identifies when the comment was published at. + The HTTP URL for the user. """ - publishedAt: DateTime + userUrl: URI +} +""" +Audit log entry for a repo.config.enable_anonymous_git_access event. +""" +type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The pull request associated with this review comment. + The action name """ - pullRequest: PullRequest! + action: String! """ - The pull request review associated with this review comment. + The user who initiated the action """ - pullRequestReview: PullRequestReview + actor: AuditEntryActor """ - A list of reactions grouped by content left on the subject. + The IP address of the actor """ - reactionGroups: [ReactionGroup!] + actorIp: String """ - A list of Reactions left on the Issue. + A readable representation of the actor's location """ - 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! + actorLocation: ActorLocation """ - The comment this is a reply to. + The username of the user who initiated the action """ - replyTo: PullRequestReviewComment + actorLogin: String """ - The repository associated with this node. + The HTTP path for the actor. """ - repository: Repository! + actorResourcePath: URI """ - The HTTP path permalink for this review comment. + The HTTP URL for the actor. """ - resourcePath: URI! + actorUrl: URI """ - Identifies the state of the comment. + The time the action was initiated """ - state: PullRequestReviewCommentState! + createdAt: PreciseDateTime! + id: ID! """ - Identifies when the comment was last updated. + The corresponding operation type for the action """ - updatedAt: DateTime! + operationType: OperationType """ - The HTTP URL permalink for this review comment. + The Organization associated with the Audit Entry. """ - url: URI! + organization: Organization """ - A list of edits to this content. + The name of the Organization. """ - 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 + organizationName: String """ - Check if the current viewer can delete this object. + The HTTP path for the organization """ - viewerCanDelete: Boolean! + organizationResourcePath: URI """ - Check if the current viewer can minimize this object. + The HTTP URL for the organization """ - viewerCanMinimize: Boolean! + organizationUrl: URI """ - Can user react to this subject + The repository associated with the action """ - viewerCanReact: Boolean! + repository: Repository """ - Check if the current viewer can update this object. + The name of the repository """ - viewerCanUpdate: Boolean! + repositoryName: String """ - Reasons why the current viewer can not update this comment. + The HTTP path for the repository """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + repositoryResourcePath: URI """ - Did the viewer author this comment. + The HTTP URL for the repository """ - viewerDidAuthor: Boolean! -} + repositoryUrl: URI -""" -The connection type for PullRequestReviewComment. -""" -type PullRequestReviewCommentConnection { """ - A list of edges. + The user affected by the action """ - edges: [PullRequestReviewCommentEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [PullRequestReviewComment] + 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 } """ -An edge in a connection. +Audit log entry for a repo.config.enable_collaborators_only event. """ -type PullRequestReviewCommentEdge { +type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A cursor for use in pagination. + The action name """ - cursor: String! + action: String! """ - The item at the end of the edge. + The user who initiated the action """ - node: PullRequestReviewComment -} + actor: AuditEntryActor -""" -The possible states of a pull request review comment. -""" -enum PullRequestReviewCommentState { """ - A comment that is part of a pending review + The IP address of the actor """ - PENDING + actorIp: String """ - A comment that is part of a submitted review + A readable representation of the actor's location """ - SUBMITTED -} + actorLocation: ActorLocation -""" -The connection type for PullRequestReview. -""" -type PullRequestReviewConnection { """ - A list of edges. + The username of the user who initiated the action """ - edges: [PullRequestReviewEdge] + actorLogin: String """ - A list of nodes. + The HTTP path for the actor. """ - nodes: [PullRequestReview] + actorResourcePath: URI """ - Information to aid in pagination. + The HTTP URL for the actor. """ - pageInfo: PageInfo! + actorUrl: URI """ - Identifies the total count of items in the connection. + The time the action was initiated """ - totalCount: Int! -} + createdAt: PreciseDateTime! + id: ID! -""" -This aggregates pull request reviews made by a user within one repository. -""" -type PullRequestReviewContributionsByRepository { """ - The pull request review contributions. + The corresponding operation type for 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 + operationType: OperationType - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The Organization associated with the Audit Entry. + """ + organization: Organization - """ - Ordering options for contributions returned from the connection. - """ - orderBy: ContributionOrder = {direction: DESC} - ): CreatedPullRequestReviewContributionConnection! + """ + The name of the Organization. + """ + organizationName: String """ - The repository in which the pull request reviews were made. + The HTTP path for the organization """ - repository: Repository! -} + organizationResourcePath: URI -""" -The review status of a pull request. -""" -enum PullRequestReviewDecision { """ - The pull request has received an approving review. + The HTTP URL for the organization """ - APPROVED + organizationUrl: URI """ - Changes have been requested on the pull request. + The repository associated with the action """ - CHANGES_REQUESTED + repository: Repository """ - A review is required before the pull request can be merged. + The name of the repository """ - REVIEW_REQUIRED -} + 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_contributors_only event. """ -enum PullRequestReviewState { +type RepoConfigEnableContributorsOnlyAuditEntry 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 + actorResourcePath: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP URL for the actor. + """ + actorUrl: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! - """ - Skips the first _n_ elements in the list. - """ - skip: Int - ): PullRequestReviewCommentConnection! + """ + The corresponding operation type for the action + """ + operationType: OperationType """ - The side of the diff on which this thread was placed. + The Organization associated with the Audit Entry. """ - diffSide: DiffSide! - id: ID! + organization: Organization """ - Whether this thread has been resolved + The name of the Organization. """ - isResolved: Boolean! + organizationName: String """ - The line in the file to which this thread refers + The HTTP path for the organization """ - line: Int + organizationResourcePath: URI """ - The original line in the file to which this thread refers. + The HTTP URL for the organization """ - originalLine: Int + organizationUrl: URI """ - The original start line in the file to which this thread refers (multi-line only). + The repository associated with the action """ - originalStartLine: Int + repository: Repository """ - Identifies the pull request associated with this thread. + The name of the repository """ - pullRequest: PullRequest! + repositoryName: String """ - Identifies the repository associated with this thread. + The HTTP path for the repository """ - repository: Repository! + repositoryResourcePath: URI """ - The user who resolved this thread + The HTTP URL for the repository """ - resolvedBy: User + repositoryUrl: URI """ - The side of the diff that the first line of the thread starts on (multi-line only) + The user affected by the action """ - startDiffSide: DiffSide + user: User """ - The start line in the file to which this thread refers (multi-line only) + For actions involving two users, the actor is the initiator and the user is the affected user. """ - startLine: Int + userLogin: String """ - Whether or not the viewer can resolve this thread + The HTTP path for the user. """ - viewerCanResolve: Boolean! + userResourcePath: URI """ - Whether or not the viewer can unresolve this thread + The HTTP URL for the user. """ - viewerCanUnresolve: Boolean! + userUrl: URI } """ -Review comment threads for a pull request review. +Audit log entry for a repo.config.enable_sockpuppet_disallowed event. """ -type PullRequestReviewThreadConnection { +type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PullRequestReviewThreadEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [PullRequestReviewThread] + 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 PullRequestReviewThreadEdge { """ - 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: PullRequestReviewThread -} + actorResourcePath: URI -""" -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. + The HTTP URL for the actor. """ - createdAt: DateTime! + actorUrl: URI """ - The last commit the viewer has seen. + The time the action was initiated """ - lastSeenCommit: Commit! + createdAt: PreciseDateTime! + id: ID! """ - The pull request to which the marker belongs. + The corresponding operation type for the action """ - pullRequest: PullRequest! -} + operationType: OperationType -""" -The possible states of a pull request. -""" -enum PullRequestState { """ - A pull request that has been closed without being merged. + The Organization associated with the Audit Entry. """ - CLOSED + organization: Organization """ - A pull request that has been closed by being merged. + The name of the Organization. """ - MERGED + organizationName: String """ - A pull request that is still open. + The HTTP path for the organization """ - OPEN -} + organizationResourcePath: URI -""" -The connection type for PullRequestTimelineItem. -""" -type PullRequestTimelineConnection { """ - A list of edges. + The HTTP URL for the organization """ - edges: [PullRequestTimelineItemEdge] + organizationUrl: URI """ - A list of nodes. + The repository associated with the action """ - nodes: [PullRequestTimelineItem] + 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 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 + """ + The HTTP URL for the repository + """ + repositoryUrl: URI -""" -An edge in a connection. -""" -type PullRequestTimelineItemEdge { """ - 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: PullRequestTimelineItem -} + userLogin: String -""" -An item in a pull request timeline -""" -union PullRequestTimelineItems = AddedToProjectEvent | AssignedEvent | AutomaticBaseChangeFailedEvent | AutomaticBaseChangeSucceededEvent | BaseRefChangedEvent | BaseRefForcePushedEvent | ClosedEvent | CommentDeletedEvent | ConnectedEvent | ConvertToDraftEvent | ConvertedNoteToIssueEvent | 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 HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} """ -The connection type for PullRequestTimelineItems. +Audit log entry for a repo.config.lock_anonymous_git_access event. """ -type PullRequestTimelineItemsConnection { +type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PullRequestTimelineItemsEdge] + action: String! """ - Identifies the count of items after applying `before` and `after` filters. + The user who initiated the action """ - filteredCount: Int! + actor: AuditEntryActor """ - A list of nodes. + The IP address of the actor """ - nodes: [PullRequestTimelineItems] + actorIp: String """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + A readable representation of the actor's location """ - pageCount: Int! + actorLocation: ActorLocation """ - Information to aid in pagination. + The username of the user who initiated the action """ - pageInfo: PageInfo! + actorLogin: String """ - Identifies the total count of items in the connection. + The HTTP path for the actor. """ - totalCount: Int! + actorResourcePath: URI """ - Identifies the date and time when the timeline was last updated. + The HTTP URL for the actor. """ - updatedAt: DateTime! -} + actorUrl: URI -""" -An edge in a connection. -""" -type PullRequestTimelineItemsEdge { """ - 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: PullRequestTimelineItems -} + operationType: OperationType -""" -The possible item types found in a timeline. -""" -enum PullRequestTimelineItemsItemType { """ - Represents a 'added_to_project' event on a given issue or pull request. + The Organization associated with the Audit Entry. """ - ADDED_TO_PROJECT_EVENT + organization: Organization """ - Represents an 'assigned' event on any assignable object. + The name of the Organization. """ - ASSIGNED_EVENT + organizationName: String """ - Represents a 'automatic_base_change_failed' event on a given pull request. + The HTTP path for the organization """ - AUTOMATIC_BASE_CHANGE_FAILED_EVENT + organizationResourcePath: URI """ - Represents a 'automatic_base_change_succeeded' event on a given pull request. + The HTTP URL for the organization """ - AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT + organizationUrl: URI """ - Represents a 'base_ref_changed' event on a given issue or pull request. + The repository associated with the action """ - BASE_REF_CHANGED_EVENT + repository: Repository """ - Represents a 'base_ref_force_pushed' event on a given pull request. + The name of the repository """ - BASE_REF_FORCE_PUSHED_EVENT + repositoryName: String """ - Represents a 'closed' event on any `Closable`. + The HTTP path for the repository """ - CLOSED_EVENT + repositoryResourcePath: URI """ - Represents a 'comment_deleted' event on a given issue or pull request. + The HTTP URL for the repository """ - COMMENT_DELETED_EVENT + repositoryUrl: URI """ - Represents a 'connected' event on a given issue or pull request. + The user affected by the action """ - CONNECTED_EVENT + user: User """ - Represents a 'converted_note_to_issue' 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. """ - CONVERTED_NOTE_TO_ISSUE_EVENT + userLogin: String """ - Represents a 'convert_to_draft' event on a given pull request. + The HTTP path for the user. """ - CONVERT_TO_DRAFT_EVENT + userResourcePath: URI """ - Represents a mention made by one issue or pull request to another. + The HTTP URL for the user. """ - CROSS_REFERENCED_EVENT + userUrl: URI +} +""" +Audit log entry for a repo.config.unlock_anonymous_git_access event. +""" +type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents a 'demilestoned' event on a given issue or pull request. + The action name """ - DEMILESTONED_EVENT + action: String! """ - Represents a 'deployed' event on a given pull request. + The user who initiated the action """ - DEPLOYED_EVENT + actor: AuditEntryActor """ - Represents a 'deployment_environment_changed' event on a given pull request. + The IP address of the actor """ - DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT + actorIp: String """ - Represents a 'disconnected' event on a given issue or pull request. + A readable representation of the actor's location """ - DISCONNECTED_EVENT + actorLocation: ActorLocation """ - Represents a 'head_ref_deleted' event on a given pull request. + The username of the user who initiated the action """ - HEAD_REF_DELETED_EVENT + actorLogin: String """ - Represents a 'head_ref_force_pushed' event on a given pull request. + The HTTP path for the actor. """ - HEAD_REF_FORCE_PUSHED_EVENT + actorResourcePath: URI """ - Represents a 'head_ref_restored' event on a given pull request. + The HTTP URL for the actor. """ - HEAD_REF_RESTORED_EVENT + actorUrl: URI """ - Represents a comment on an Issue. + The time the action was initiated """ - ISSUE_COMMENT + createdAt: PreciseDateTime! + id: ID! """ - Represents a 'labeled' event on a given issue or pull request. + The corresponding operation type for the action """ - LABELED_EVENT + operationType: OperationType """ - Represents a 'locked' event on a given issue or pull request. + The Organization associated with the Audit Entry. """ - LOCKED_EVENT + organization: Organization """ - Represents a 'marked_as_duplicate' event on a given issue or pull request. + The name of the Organization. """ - MARKED_AS_DUPLICATE_EVENT + organizationName: String """ - Represents a 'mentioned' event on a given issue or pull request. + The HTTP path for the organization """ - MENTIONED_EVENT + organizationResourcePath: URI """ - Represents a 'merged' event on a given pull request. + The HTTP URL for the organization """ - MERGED_EVENT + organizationUrl: URI """ - Represents a 'milestoned' event on a given issue or pull request. + The repository associated with the action """ - MILESTONED_EVENT + repository: Repository """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. + The name of the repository """ - MOVED_COLUMNS_IN_PROJECT_EVENT + repositoryName: String """ - Represents a 'pinned' event on a given issue or pull request. + The HTTP path for the repository """ - PINNED_EVENT + repositoryResourcePath: URI """ - Represents a Git commit part of a pull request. + The HTTP URL for the repository """ - PULL_REQUEST_COMMIT + repositoryUrl: URI """ - Represents a commit comment thread part of a pull request. + The user affected by the action """ - PULL_REQUEST_COMMIT_COMMENT_THREAD + user: User """ - A review object for a given pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - PULL_REQUEST_REVIEW + userLogin: String """ - A threaded list of comments for a given pull request. + The HTTP path for the user. """ - PULL_REQUEST_REVIEW_THREAD + userResourcePath: URI """ - Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. + The HTTP URL for the user. """ - PULL_REQUEST_REVISION_MARKER + userUrl: URI +} +""" +Audit log entry for a repo.create event. +""" +type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents a 'ready_for_review' event on a given pull request. + The action name """ - READY_FOR_REVIEW_EVENT + action: String! """ - Represents a 'referenced' event on a given `ReferencedSubject`. + The user who initiated the action """ - REFERENCED_EVENT + actor: AuditEntryActor """ - Represents a 'removed_from_project' event on a given issue or pull request. + The IP address of the actor """ - REMOVED_FROM_PROJECT_EVENT + actorIp: String """ - Represents a 'renamed' event on a given issue or pull request + A readable representation of the actor's location """ - RENAMED_TITLE_EVENT + actorLocation: ActorLocation """ - Represents a 'reopened' event on any `Closable`. + The username of the user who initiated the action """ - REOPENED_EVENT + actorLogin: String """ - Represents a 'review_dismissed' event on a given issue or pull request. + The HTTP path for the actor. """ - REVIEW_DISMISSED_EVENT + actorResourcePath: URI """ - Represents an 'review_requested' event on a given pull request. + The HTTP URL for the actor. """ - REVIEW_REQUESTED_EVENT + actorUrl: URI """ - Represents an 'review_request_removed' event on a given pull request. + The time the action was initiated """ - REVIEW_REQUEST_REMOVED_EVENT + createdAt: PreciseDateTime! """ - Represents a 'subscribed' event on a given `Subscribable`. + The name of the parent repository for this forked repository. """ - SUBSCRIBED_EVENT + forkParentName: String """ - Represents a 'transferred' event on a given issue or pull request. + The name of the root repository for this network. """ - TRANSFERRED_EVENT + forkSourceName: String + id: ID! """ - Represents an 'unassigned' event on any assignable object. + The corresponding operation type for the action """ - UNASSIGNED_EVENT + operationType: OperationType """ - Represents an 'unlabeled' event on a given issue or pull request. + The Organization associated with the Audit Entry. """ - UNLABELED_EVENT + organization: Organization """ - Represents an 'unlocked' event on a given issue or pull request. + The name of the Organization. """ - UNLOCKED_EVENT + organizationName: String """ - Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + The HTTP path for the organization """ - UNMARKED_AS_DUPLICATE_EVENT + organizationResourcePath: URI """ - Represents an 'unpinned' event on a given issue or pull request. + The HTTP URL for the organization """ - UNPINNED_EVENT + organizationUrl: URI """ - Represents an 'unsubscribed' event on a given `Subscribable`. + The repository associated with the action """ - UNSUBSCRIBED_EVENT + repository: Repository """ - Represents a 'user_blocked' event on a given user. + The name of the repository """ - USER_BLOCKED_EVENT -} + repositoryName: String -""" -The possible target states when updating a pull request. -""" -enum PullRequestUpdateState { """ - A pull request that has been closed without being merged. + The HTTP path for the repository """ - CLOSED + repositoryResourcePath: URI """ - A pull request that is still open. + The HTTP URL for the repository """ - OPEN -} - -""" -A Git push. -""" -type Push implements Node @preview(toggledBy: "antiope-preview") { - id: ID! + repositoryUrl: URI """ - The SHA after the push + The user affected by the action """ - nextSha: GitObjectID + user: User """ - The permalink for this push. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - permalink: URI! + userLogin: String """ - The SHA before the push + The HTTP path for the user. """ - previousSha: GitObjectID + userResourcePath: URI """ - The user who pushed + The HTTP URL for the user. """ - pusher: User! + userUrl: URI """ - The repository that was pushed to + The visibility of the repository """ - repository: Repository! + visibility: RepoCreateAuditEntryVisibility } """ -A team, user or app who has the ability to push to a protected branch. +The privacy of a repository """ -type PushAllowance implements Node { +enum RepoCreateAuditEntryVisibility { """ - The actor that can push. + The repository is visible only to users in the same business. """ - actor: PushAllowanceActor + INTERNAL """ - Identifies the branch protection rule associated with the allowed user or team. + The repository is visible only to those with explicit access. """ - branchProtectionRule: BranchProtectionRule - id: ID! -} + PRIVATE -""" -Types that can be an actor. -""" -union PushAllowanceActor = App | Team | User + """ + The repository is visible to everyone. + """ + PUBLIC +} """ -The connection type for PushAllowance. +Audit log entry for a repo.destroy event. """ -type PushAllowanceConnection { +type RepoDestroyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PushAllowanceEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [PushAllowance] + 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 PushAllowanceEdge { """ - 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: PushAllowance -} + actorResourcePath: URI -""" -The query root of GitHub's GraphQL interface. -""" -type Query { """ - Look up a code of conduct by its key + The HTTP URL for the actor. """ - codeOfConduct( - """ - The code of conduct's key - """ - key: String! - ): CodeOfConduct + actorUrl: URI """ - Look up a code of conduct by its key + The time the action was initiated """ - codesOfConduct: [CodeOfConduct] + createdAt: PreciseDateTime! + id: ID! """ - Look up an enterprise by URL slug. + The corresponding operation type for the action """ - enterprise( - """ - The enterprise invitation token. - """ - invitationToken: String - - """ - The enterprise URL slug. - """ - slug: String! - ): Enterprise + operationType: OperationType """ - Look up a pending enterprise administrator invitation by invitee, enterprise and role. + The Organization associated with the Audit Entry. """ - 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 + organization: Organization """ - Look up a pending enterprise administrator invitation by invitation token. + The name of the Organization. """ - enterpriseAdministratorInvitationByToken( - """ - The invitation token sent with the invitation email. - """ - invitationToken: String! - ): EnterpriseAdministratorInvitation + organizationName: String """ - Look up an open source license by its key + The HTTP path for the organization """ - license( - """ - The license's downcased SPDX ID - """ - key: String! - ): License + organizationResourcePath: URI """ - Return a list of known open source licenses + The HTTP URL for the organization """ - licenses: [License]! + organizationUrl: URI """ - Get alphabetically sorted list of Marketplace categories + The repository associated with the action """ - 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!]! + repository: Repository """ - Look up a Marketplace category by its slug. + The name of the repository """ - marketplaceCategory( - """ - The URL slug of the category. - """ - slug: String! - - """ - Also check topic aliases for the category slug - """ - useTopicAliases: Boolean - ): MarketplaceCategory + repositoryName: String """ - Look up a single Marketplace listing + The HTTP path for the repository """ - marketplaceListing( - """ - Select the listing that matches this slug. It's the short name of the listing used in its URL. - """ - slug: String! - ): MarketplaceListing + repositoryResourcePath: URI """ - Look up Marketplace listings + The HTTP URL for the repository """ - 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 + repositoryUrl: URI - """ - Select only listings where the primary category matches the given category slug. - """ - primaryCategoryOnly: Boolean = false + """ + The user affected by the action + """ + user: User - """ - Select the listings with these slugs, if they are visible to the viewer. - """ - slugs: [String] + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Also check topic aliases for the category slug - """ - useTopicAliases: Boolean + """ + The HTTP path for the user. + """ + userResourcePath: URI - """ - Select listings to which user has admin access. If omitted, listings visible to the - viewer are returned. - """ - viewerCanAdmin: Boolean + """ + The HTTP URL for the user. + """ + userUrl: URI - """ - Select only listings that offer a free trial. - """ - withFreeTrialsOnly: Boolean = false - ): MarketplaceListingConnection! + """ + The visibility of the repository + """ + visibility: RepoDestroyAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoDestroyAuditEntryVisibility { """ - Return information about the GitHub instance + The repository is visible only to users in the same business. """ - meta: GitHubMetadata! + INTERNAL """ - Fetches an object given its ID. + The repository is visible only to those with explicit access. """ - node( - """ - ID of the object. - """ - id: ID! - ): Node + PRIVATE """ - Lookup nodes by a list of IDs. + The repository is visible to everyone. """ - nodes( - """ - The list of node IDs. - """ - ids: [ID!]! - ): [Node]! + PUBLIC +} +""" +Audit log entry for a repo.remove_member event. +""" +type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Lookup a organization by login. + The action name """ - organization( - """ - The organization's login. - """ - login: String! - ): Organization + action: String! """ - The client's rate limit information. + The user who initiated the action """ - rateLimit( - """ - If true, calculate the cost for the query without evaluating it - """ - dryRun: Boolean = false - ): RateLimit + actor: AuditEntryActor """ - Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object + The IP address of the actor """ - relay: Query! + actorIp: String """ - Lookup a given repository by the owner and repository name. + A readable representation of the actor's location """ - repository( - """ - The name of the repository - """ - name: String! + actorLocation: ActorLocation - """ - The login field of a user or organization - """ - owner: String! - ): Repository + """ + The username of the user who initiated the action + """ + actorLogin: String """ - Lookup a repository owner (ie. either a User or an Organization) by login. + The HTTP path for the actor. """ - repositoryOwner( - """ - The username to lookup the owner by. - """ - login: String! - ): RepositoryOwner + actorResourcePath: URI """ - Lookup resource by a URL. + The HTTP URL for the actor. """ - resource( - """ - The URL. - """ - url: URI! - ): UniformResourceLocatable + actorUrl: URI """ - Perform a search across resources. + The time the action was initiated """ - search( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - """ - The search string to look for. - """ - query: String! + """ + The HTTP path for the organization + """ + organizationResourcePath: URI - """ - The types of search items to search within. - """ - type: SearchType! - ): SearchResultItemConnection! + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - GitHub Security Advisories + The repository associated with the action """ - securityAdvisories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + repository: Repository - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The name of the repository + """ + repositoryName: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP path for the repository + """ + repositoryResourcePath: URI - """ - Filter advisories by identifier, e.g. GHSA or CVE. - """ - identifier: SecurityAdvisoryIdentifierFilter + """ + The HTTP URL for the repository + """ + repositoryUrl: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The user affected by the action + """ + user: User - """ - Ordering options for the returned topics. - """ - orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Filter advisories to those published since a time in the past. - """ - publishedSince: DateTime + """ + The HTTP path for the user. + """ + userResourcePath: URI - """ - Filter advisories to those updated since a time in the past. - """ - updatedSince: DateTime - ): SecurityAdvisoryConnection! + """ + The HTTP URL for the user. + """ + userUrl: URI """ - Fetch a Security Advisory by its GHSA ID + The visibility of the repository """ - securityAdvisory( - """ - GitHub Security Advisory ID. - """ - ghsaId: String! - ): SecurityAdvisory + visibility: RepoRemoveMemberAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoRemoveMemberAuditEntryVisibility { """ - Software Vulnerabilities documented by GitHub Security Advisories + The repository is visible only to users in the same business. """ - securityVulnerabilities( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + INTERNAL - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The repository is visible only to those with explicit access. + """ + PRIVATE - """ - An ecosystem to filter vulnerabilities by. - """ - ecosystem: SecurityAdvisoryEcosystem + """ + The repository is visible to everyone. + """ + PUBLIC +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Audit log entry for a repo.remove_topic event. +""" +type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { + """ + The action name + """ + action: String! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The user who initiated the action + """ + actor: AuditEntryActor - """ - Ordering options for the returned topics. - """ - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + """ + The IP address of the actor + """ + actorIp: String - """ - A package name to filter vulnerabilities by. - """ - package: String + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation - """ - A list of severities to filter vulnerabilities by. - """ - severities: [SecurityAdvisorySeverity!] - ): SecurityVulnerabilityConnection! + """ + The username of the user who initiated the action + """ + actorLogin: String """ - Look up a single Sponsors Listing + The HTTP path for the actor. """ - sponsorsListing( - """ - Select the Sponsors listing which matches this slug - """ - slug: String! - ): SponsorsListing @deprecated(reason: "`Query.sponsorsListing` will be removed. Use `Sponsorable.sponsorsListing` instead. Removal on 2020-04-01 UTC.") + actorResourcePath: URI """ - Look up a topic by name. + The HTTP URL for the actor. """ - topic( - """ - The topic's name. - """ - name: String! - ): Topic + actorUrl: URI """ - Lookup a user by login. + The time the action was initiated """ - user( - """ - The user's login. - """ - login: String! - ): User + createdAt: PreciseDateTime! + id: ID! """ - The currently authenticated user. + The corresponding operation type for the action """ - viewer: User! -} + operationType: OperationType -""" -Represents the client's rate limit. -""" -type RateLimit { """ - The point cost for the current query counting against the rate limit. + The Organization associated with the Audit Entry. """ - cost: Int! + organization: Organization """ - The maximum number of points the client is permitted to consume in a 60 minute window. + The name of the Organization. """ - limit: Int! + organizationName: String """ - The maximum number of nodes this query may return + The HTTP path for the organization """ - nodeCount: Int! + organizationResourcePath: URI """ - The number of points remaining in the current rate limit window. + The HTTP URL for the organization """ - remaining: Int! + organizationUrl: URI """ - The time at which the current rate limit window resets in UTC epoch seconds. + The repository associated with the action """ - resetAt: DateTime! -} + repository: Repository -""" -Represents a subject that can be reacted on. -""" -interface Reactable { """ - Identifies the primary key from the database. + The name of the repository """ - databaseId: Int - id: ID! + repositoryName: String """ - A list of reactions grouped by content left on the subject. + The HTTP path for the repository """ - reactionGroups: [ReactionGroup!] + repositoryResourcePath: URI """ - A list of Reactions left on the Issue. + The HTTP URL for the repository """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + repositoryUrl: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The name of the topic added to the repository + """ + topic: Topic - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent + """ + The name of the topic added to the repository + """ + topicName: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The user affected by the action + """ + user: User - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + """ + The HTTP path for the user. + """ + userResourcePath: URI """ - Can user react to this subject + The HTTP URL for the user. """ - viewerCanReact: Boolean! + userUrl: URI } """ -The connection type for User. +The reasons a piece of content can be reported or minimized. """ -type ReactingUserConnection { +enum ReportedContentClassifiers { """ - A list of edges. + An abusive or harassing piece of content """ - edges: [ReactingUserEdge] + ABUSE """ - A list of nodes. + A duplicated piece of content """ - nodes: [User] + DUPLICATE """ - Information to aid in pagination. + An irrelevant piece of content """ - pageInfo: PageInfo! + OFF_TOPIC """ - Identifies the total count of items in the connection. + An outdated piece of content """ - totalCount: Int! -} + OUTDATED -""" -Represents a user that's made a reaction. -""" -type ReactingUserEdge { """ - A cursor for use in pagination. + The content has been resolved """ - cursor: String! - node: User! + RESOLVED """ - The moment when the user made the reaction. + A spammy piece of content """ - reactedAt: DateTime! + SPAM } """ -An emoji reaction to a particular piece of content. +A repository contains the content for a project. """ -type Reaction implements Node { +type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable { """ - Identifies the emoji reaction. + 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. """ - content: ReactionContent! + allowUpdateBranch: Boolean! """ - Identifies the date and time when the object was created. + Identifies the date and time when the repository was archived. """ - createdAt: DateTime! + archivedAt: DateTime """ - Identifies the primary key from the database. + A list of users that can be assigned to issues in this repository. """ - databaseId: Int - id: ID! + assignableUsers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The reactable piece of content - """ - reactable: Reactable! + """ + 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! """ - Identifies the user who created this reaction. + Whether or not Auto-merge can be enabled on pull requests in this repository. """ - user: User -} + autoMergeAllowed: Boolean! -""" -A list of reactions that have been left on the subject. -""" -type ReactionConnection { """ - A list of edges. + A list of branch protection rules for this repository. """ - edges: [ReactionEdge] + 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! """ - A list of nodes. + Returns the code of conduct for this repository """ - nodes: [Reaction] + codeOfConduct: CodeOfConduct """ - Information to aid in pagination. + Information extracted from the repository's `CODEOWNERS` file. """ - pageInfo: PageInfo! + codeowners( + """ + The ref name used to return the associated `CODEOWNERS` file. + """ + refName: String + ): RepositoryCodeowners """ - Identifies the total count of items in the connection. + A list of collaborators associated with the repository. """ - totalCount: Int! + collaborators( + """ + Collaborators affiliation level with a repository. + """ + affiliation: CollaboratorAffiliation - """ - Whether or not the authenticated user has left a reaction on the subject. - """ - viewerHasReacted: Boolean! -} + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Emojis that can be attached to Issues, Pull Requests and Comments. -""" -enum ReactionContent { - """ - Represents the `:confused:` emoji. - """ - CONFUSED + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Represents the `:eyes:` emoji. - """ - EYES + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Represents the `:heart:` emoji. - """ - HEART + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Represents the `:hooray:` emoji. - """ - HOORAY + """ + The login of one specific collaborator. + """ + login: String - """ - Represents the `:laugh:` emoji. - """ - LAUGH + """ + Filters users with query on user name and login + """ + query: String + ): RepositoryCollaboratorConnection """ - Represents the `:rocket:` emoji. + A list of commit comments associated with the repository. """ - ROCKET + commitComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Represents the `:-1:` emoji. - """ - THUMBS_DOWN + """ + 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! """ - Represents the `:+1:` emoji. + Returns a list of contact links associated to the repository """ - THUMBS_UP -} + contactLinks: [RepositoryContactLink!] -""" -An edge in a connection. -""" -type ReactionEdge { """ - A cursor for use in pagination. + Returns the contributing guidelines for this repository. """ - cursor: String! + contributingGuidelines: ContributingGuidelines """ - The item at the end of the edge. + Identifies the date and time when the object was created. """ - node: Reaction -} + createdAt: DateTime! -""" -A group of emoji reactions to a particular piece of content. -""" -type ReactionGroup { """ - Identifies the emoji reaction. + Identifies the primary key from the database. """ - content: ReactionContent! + databaseId: Int """ - Identifies when the reaction was created. + The Ref associated with the repository's default branch. """ - createdAt: DateTime + defaultBranchRef: Ref """ - The subject that was reacted to. + Whether or not branches are automatically deleted when merged in this repository. """ - subject: Reactable! + deleteBranchOnMerge: Boolean! """ - Users who have reacted to the reaction subject with the emotion represented by this reaction group + A list of dependency manifests contained in the repository """ - users( + dependencyGraphManifests( """ Returns the elements in the list that come after the specified cursor. """ @@ -24506,6 +42170,16 @@ type ReactionGroup { """ before: String + """ + Cursor to paginate dependencies + """ + dependenciesAfter: String + + """ + Number of dependencies to fetch + """ + dependenciesFirst: Int + """ Returns the first _n_ elements from the list. """ @@ -24515,87 +42189,146 @@ type ReactionGroup { Returns the last _n_ elements from the list. """ last: Int - ): ReactingUserConnection! - """ - Whether or not the authenticated user has left a reaction on the subject. - """ - viewerHasReacted: Boolean! -} + """ + Flag to scope to only manifests with dependencies + """ + withDependencies: Boolean + ): DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview") -""" -Ways in which lists of reactions can be ordered upon return. -""" -input ReactionOrder { """ - The direction in which to order reactions by the specified field. + A list of deploy keys that are on this repository. """ - direction: OrderDirection! + deployKeys( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The field in which to order reactions by. - """ - field: ReactionOrderField! -} + """ + 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! -""" -A list of fields that reactions can be ordered by. -""" -enum ReactionOrderField { """ - Allows ordering a list of reactions by when they were created. + Deployments associated with the repository """ - CREATED_AT -} + 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! -""" -Represents a 'ready_for_review' event on a given pull request. -""" -type ReadyForReviewEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + The description of the repository. """ - actor: Actor + description: String """ - Identifies the date and time when the object was created. + The description of the repository rendered to HTML. """ - createdAt: DateTime! - id: ID! + descriptionHTML: HTML! """ - PullRequest referenced by event. + Returns a single discussion from the current repository by number. """ - pullRequest: PullRequest! + discussion( + """ + The number for the discussion to be returned. + """ + number: Int! + ): Discussion """ - The HTTP path for this ready for review event. + A list of discussion categories that are available in the repository. """ - resourcePath: URI! + discussionCategories( + """ + 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 + + """ + 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! """ - The HTTP URL for this ready for review event. + A discussion category by slug. """ - url: URI! -} + discussionCategory( + """ + The slug of the discussion category to be returned. + """ + slug: String! + ): DiscussionCategory -""" -Represents a Git reference. -""" -type Ref implements Node { """ - A list of pull requests with this ref as the head ref. + A list of discussions that have been opened in the repository. """ - associatedPullRequests( + discussions( """ Returns the elements in the list that come after the specified cursor. """ after: String """ - The base ref name to filter the pull requests by. + Only show answered or unanswered discussions """ - baseRefName: String + answered: Boolean = null """ Returns the elements in the list that come before the specified cursor. @@ -24603,19 +42336,14 @@ type Ref implements Node { before: String """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - The head ref name to filter the pull requests by. + Only include discussions that belong to the category with this ID. """ - headRefName: String + categoryId: ID = null """ - A list of label names to filter the pull requests by. + Returns the first _n_ elements from the list. """ - labels: [String!] + first: Int """ Returns the last _n_ elements from the list. @@ -24623,262 +42351,260 @@ type Ref implements Node { last: Int """ - Ordering options for pull requests returned from the connection. + Ordering options for discussions returned from the connection. """ - orderBy: IssueOrder + orderBy: DiscussionOrder = {field: UPDATED_AT, direction: DESC} """ - A list of states to filter the pull requests by. + A list of states to filter the discussions by. """ - states: [PullRequestState!] - ): PullRequestConnection! - id: ID! + states: [DiscussionState!] = [] + ): DiscussionConnection! """ - The ref name. + The number of kilobytes this repository occupies on disk. """ - name: String! + diskUsage: Int """ - The ref's prefix, such as `refs/heads/` or `refs/tags/`. + Returns a single active environment from the current repository by name. """ - prefix: String! + environment( + """ + The name of the environment to be returned. + """ + name: String! + ): Environment """ - The repository the ref belongs to. + A list of environments that are in this repository. """ - repository: Repository! + environments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The object the ref points to. + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - **Upcoming Change on 2019-07-01 UTC** - **Description:** Type for `target` will change from `GitObject!` to `GitObject`. - **Reason:** The `target` field may return `null` values and is changing to nullable - """ - target: GitObject! -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The connection type for Ref. -""" -type RefConnection { - """ - A list of edges. - """ - edges: [RefEdge] + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - A list of nodes. - """ - nodes: [Ref] + """ + Ordering options for the environments + """ + orderBy: Environments = {field: NAME, direction: ASC} + ): EnvironmentConnection! """ - Information to aid in pagination. + Returns how many forks there are of this repository in the whole network. """ - pageInfo: PageInfo! + forkCount: Int! """ - Identifies the total count of items in the connection. + Whether this repository allows forks. """ - totalCount: Int! -} + forkingAllowed: Boolean! -""" -An edge in a connection. -""" -type RefEdge { """ - A cursor for use in pagination. + A list of direct forked repositories. """ - cursor: String! + 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] - """ - The item at the end of the edge. - """ - node: Ref -} + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -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. - """ - direction: OrderDirection! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The field in which to order refs by. - """ - field: RefOrderField! -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Properties by which ref connections can be ordered. -""" -enum RefOrderField { - """ - Order refs by their alphanumeric name - """ - ALPHABETICAL + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean - """ - Order refs by underlying commit date if the ref prefix is refs/tags/ - """ - TAG_COMMIT_DATE -} + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean -""" -A ref update -""" -input RefUpdate @preview(toggledBy: "update-refs-preview") { - """ - The value this ref should be updated to. - """ - afterOid: GitObjectID! + """ + 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 value this ref needs to point to before the update. + The funding links for this repository """ - beforeOid: GitObjectID + fundingLinks: [FundingLink!]! """ - Force a non fast-forward update. + Indicates if the repository has the Discussions feature enabled. """ - force: Boolean = false + hasDiscussionsEnabled: Boolean! """ - The fully qualified name of the ref to be update. For example `refs/heads/branch-name` + Indicates if the repository has issues feature enabled. """ - name: GitRefname! -} + hasIssuesEnabled: Boolean! -""" -Represents a 'referenced' event on a given `ReferencedSubject`. -""" -type ReferencedEvent implements Node { """ - Identifies the actor who performed the event. + Indicates if the repository has the Projects feature enabled. """ - actor: Actor + hasProjectsEnabled: Boolean! """ - Identifies the commit associated with the 'referenced' event. + Whether vulnerability alerts are enabled for the repository. """ - commit: Commit + hasVulnerabilityAlertsEnabled: Boolean! """ - Identifies the repository associated with the 'referenced' event. + Indicates if the repository has wiki feature enabled. """ - commitRepository: Repository! + hasWikiEnabled: Boolean! """ - Identifies the date and time when the object was created. + The repository's URL. """ - createdAt: DateTime! + homepageUrl: URI id: ID! """ - Reference originated in a different repository. + The interaction ability settings for this repository. """ - isCrossRepository: Boolean! + interactionAbility: RepositoryInteractionAbility """ - Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. + Indicates if the repository is unmaintained. """ - isDirectReference: Boolean! + isArchived: Boolean! """ - Object referenced by event. + Returns true if blank issue creation is allowed """ - subject: ReferencedSubject! -} - -""" -Any referencable object -""" -union ReferencedSubject = Issue | PullRequest + isBlankIssuesEnabled: Boolean! -""" -Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { """ - A unique identifier for the client performing the mutation. + Returns whether or not this repository disabled. """ - clientMutationId: String + isDisabled: Boolean! """ - The ID of the enterprise on which to set an identity provider. + Returns whether or not this repository is empty. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) -} + isEmpty: Boolean! -""" -Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { """ - A unique identifier for the client performing the mutation. + Identifies if the repository is a fork. """ - clientMutationId: String + isFork: Boolean! """ - The identity provider for the enterprise. + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. """ - identityProvider: EnterpriseIdentityProvider -} + isInOrganization: Boolean! + + """ + Indicates if the repository has been locked or not. + """ + isLocked: Boolean! -""" -A release contains the content for a release. -""" -type Release implements Node & UniformResourceLocatable { """ - The author of the release + Identifies if the repository is a mirror. """ - author: User + isMirror: Boolean! """ - Identifies the date and time when the object was created. + Identifies if the repository is private or internal. """ - createdAt: DateTime! + isPrivate: Boolean! """ - The description of the release. + Returns true if this repository has a security policy """ - description: String + isSecurityPolicyEnabled: Boolean """ - The description of this release rendered to HTML. + Identifies if the repository is a template that can be used to generate new repositories. """ - descriptionHTML: HTML - id: ID! + isTemplate: Boolean! """ - Whether or not the release is a draft + Is this repository a user configuration repository? """ - isDraft: Boolean! + isUserConfigurationRepository: Boolean! """ - Whether or not the release is a prerelease + Returns a single issue from the current repository by number. """ - isPrerelease: Boolean! + issue( + """ + The number for the issue to be returned. + """ + number: Int! + ): Issue """ - The title of the release. + Returns a single issue-like object from the current repository by number. """ - name: String + issueOrPullRequest( + """ + The number for the issue to be returned. + """ + number: Int! + ): IssueOrPullRequest """ - Identifies the date and time when the release was created. + Returns a list of issue templates associated to the repository """ - publishedAt: DateTime + issueTemplates: [IssueTemplate!] """ - List of releases assets which are dependent on this release. + A list of issues that have been opened in the repository. """ - releaseAssets( + issues( """ Returns the elements in the list that come after the specified cursor. """ @@ -24889,742 +42615,1038 @@ type Release implements Node & UniformResourceLocatable { """ 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 """ - A list of names to filter the assets by. + Ordering options for issues returned from the connection. """ - name: String - ): ReleaseAssetConnection! + orderBy: IssueOrder - """ - The HTTP path for this issue - """ - resourcePath: URI! + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! """ - A description of the release, rendered to HTML without any links in it. + Returns a single label by name """ - shortDescriptionHTML( + label( """ - How many characters to return. + Label name """ - limit: Int = 200 - ): HTML + name: String! + ): Label """ - The Git tag the release points to + A list of labels associated with the repository. """ - tag: Ref + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The name of the release's Git tag - """ - tagName: String! + """ + 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 HTTP URL for this issue - """ - url: URI! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -A release asset contains the content for a release asset. -""" -type ReleaseAsset implements Node { - """ - The asset's content-type - """ - contentType: String! + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + If provided, searches labels by name and description. + """ + query: String + ): LabelConnection """ - The number of times this asset was downloaded + A list containing a breakdown of the language composition of the repository. """ - downloadCount: Int! + languages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Identifies the URL where you can download the release asset via the browser. - """ - downloadUrl: URI! - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies the title of the release asset. - """ - name: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Release that the asset is associated with - """ - release: Release + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The size (in bytes) of the asset - """ - size: Int! + """ + Order for connection + """ + orderBy: LanguageOrder + ): LanguageConnection """ - Identifies the date and time when the object was last updated. + Get the latest release for the repository if one exists. """ - updatedAt: DateTime! + latestRelease: Release """ - The user that performed the upload + The license associated with the repository """ - uploadedBy: User! + licenseInfo: License """ - Identifies the URL of the release asset. + The reason the repository has been locked. """ - url: URI! -} + lockReason: RepositoryLockReason -""" -The connection type for ReleaseAsset. -""" -type ReleaseAssetConnection { """ - A list of edges. + A list of Users that can be mentioned in the context of the repository. """ - edges: [ReleaseAssetEdge] + mentionableUsers( + """ + 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 -""" -An edge in a connection. -""" -type ReleaseAssetEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Filters users with query on user name and login + """ + query: String + ): UserConnection! """ - The item at the end of the edge. + Whether or not PRs are merged with a merge commit on this repository. """ - node: ReleaseAsset -} + mergeCommitAllowed: Boolean! -""" -The connection type for Release. -""" -type ReleaseConnection { """ - A list of edges. + How the default commit message will be generated when merging a pull request. """ - edges: [ReleaseEdge] + mergeCommitMessage: MergeCommitMessage! """ - A list of nodes. + How the default commit title will be generated when merging a pull request. """ - nodes: [Release] + mergeCommitTitle: MergeCommitTitle! """ - Information to aid in pagination. + The merge queue for a specified branch, otherwise the default branch if not provided. """ - pageInfo: PageInfo! + mergeQueue( + """ + The name of the branch to get the merge queue for. Case sensitive. + """ + branch: String + ): MergeQueue """ - Identifies the total count of items in the connection. + Returns a single milestone from the current repository by number. """ - totalCount: Int! -} + milestone( + """ + The number for the milestone to be returned. + """ + number: Int! + ): Milestone -""" -An edge in a connection. -""" -type ReleaseEdge { """ - A cursor for use in pagination. + A list of milestones associated with the repository. """ - cursor: String! + milestones( + """ + 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 milestones. + """ + orderBy: MilestoneOrder + + """ + Filters milestones with a query on the title + """ + query: String + + """ + Filter by the state of the milestones. + """ + states: [MilestoneState!] + ): MilestoneConnection """ - The item at the end of the edge. + The repository's original mirror URL. """ - node: Release -} + mirrorUrl: URI -""" -Ways in which lists of releases can be ordered upon return. -""" -input ReleaseOrder { """ - The direction in which to order releases by the specified field. + The name of the repository. """ - direction: OrderDirection! + name: String! """ - The field in which to order releases by. + The repository's name with owner. """ - field: ReleaseOrderField! -} + nameWithOwner: String! -""" -Properties by which release connections can be ordered. -""" -enum ReleaseOrderField { """ - Order releases by creation time + A Git object in the repository """ - CREATED_AT + object( + """ + A Git revision expression suitable for rev-parse + """ + expression: String + + """ + The Git object ID + """ + oid: GitObjectID + ): GitObject """ - Order releases alphabetically by name + The image used to represent this repository in Open Graph data. """ - NAME -} + openGraphImageUrl: URI! -""" -Autogenerated input type of RemoveAssigneesFromAssignable -""" -input RemoveAssigneesFromAssignableInput { """ - The id of the assignable object to remove assignees from. + The User owner of the repository. """ - assignableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Assignable") + owner: RepositoryOwner! """ - The id of users to remove as assignees. + A list of packages under the owner. """ - assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"]) + 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 unique identifier for the client performing the mutation. + The repository parent, if this is a fork. """ - clientMutationId: String -} + parent: Repository -""" -Autogenerated return type of RemoveAssigneesFromAssignable -""" -type RemoveAssigneesFromAssignablePayload { """ - The item that was unassigned. + A list of discussions that have been pinned in this repository. """ - assignable: Assignable + pinnedDiscussions( + """ + 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 + ): PinnedDiscussionConnection! """ - A unique identifier for the client performing the mutation. + A list of pinned issues for this repository. """ - clientMutationId: String -} + pinnedIssues( + """ + 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 + ): PinnedIssueConnection -""" -Autogenerated input type of RemoveEnterpriseAdmin -""" -input RemoveEnterpriseAdminInput { """ - A unique identifier for the client performing the mutation. + The primary language of the repository's code. """ - clientMutationId: String + primaryLanguage: Language """ - The Enterprise ID from which to remove the administrator. + Find project by number. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + project( + """ + The project number to find. + """ + number: Int! + ): Project """ - The login of the user to remove as an administrator. + Finds and returns the Project according to the provided Project number. """ - login: String! -} + projectV2( + """ + The Project number. + """ + number: Int! + ): ProjectV2 -""" -Autogenerated return type of RemoveEnterpriseAdmin -""" -type RemoveEnterpriseAdminPayload { """ - The user who was removed as an administrator. + A list of projects under the owner. """ - admin: User + 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 unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - The updated enterprise. + The HTTP path listing the repository's projects """ - enterprise: Enterprise + projectsResourcePath: URI! """ - A message confirming the result of removing an administrator. + The HTTP URL listing the repository's projects """ - message: String + projectsUrl: URI! """ - The viewer performing the mutation. + List of projects linked to this repository. """ - viewer: User -} + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Autogenerated input type of RemoveEnterpriseIdentityProvider -""" -input RemoveEnterpriseIdentityProviderInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The ID of the enterprise from which to remove the identity provider. - """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Autogenerated return type of RemoveEnterpriseIdentityProvider -""" -type RemoveEnterpriseIdentityProviderPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The identity provider that was removed from the enterprise. - """ - identityProvider: EnterpriseIdentityProvider -} + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} -""" -Autogenerated input type of RemoveEnterpriseOrganization -""" -input RemoveEnterpriseOrganizationInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + A project to search for linked to the repo. + """ + query: String + ): ProjectV2Connection! """ - The ID of the enterprise from which the organization should be removed. + Returns a single pull request from the current repository by number. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + pullRequest( + """ + The number for the pull request to be returned. + """ + number: Int! + ): PullRequest """ - The ID of the organization to remove from the enterprise. + Returns a list of pull request templates associated to the repository """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) -} + pullRequestTemplates: [PullRequestTemplate!] -""" -Autogenerated return type of RemoveEnterpriseOrganization -""" -type RemoveEnterpriseOrganizationPayload { """ - A unique identifier for the client performing the mutation. + A list of pull requests that have been opened in the repository. """ - clientMutationId: String + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The updated enterprise. - """ - enterprise: Enterprise + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String - """ - The organization that was removed from the enterprise. - """ - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The viewer performing the mutation. - """ - viewer: User -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Autogenerated input type of RemoveLabelsFromLabelable -""" -input RemoveLabelsFromLabelableInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + The head ref name to filter the pull requests by. + """ + headRefName: String - """ - The ids of labels to remove. - """ - labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"]) + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] - """ - The id of the Labelable to remove labels from. - """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -Autogenerated return type of RemoveLabelsFromLabelable -""" -type RemoveLabelsFromLabelablePayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder - """ - The Labelable the labels were removed from. - """ - labelable: Labelable -} + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! -""" -Autogenerated input type of RemoveOutsideCollaborator -""" -input RemoveOutsideCollaboratorInput { """ - A unique identifier for the client performing the mutation. + Identifies the date and time when the repository was last pushed to. """ - clientMutationId: String + pushedAt: DateTime """ - The ID of the organization to remove the outside collaborator from. + Whether or not rebase-merging is enabled on this repository. """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + rebaseMergeAllowed: Boolean! """ - The ID of the outside collaborator to remove. + Recent projects that this user has modified in the context of the owner. """ - userId: ID! @possibleTypes(concreteTypes: ["User"]) -} + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Autogenerated return type of RemoveOutsideCollaborator -""" -type RemoveOutsideCollaboratorPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The user that was removed as an outside collaborator. - """ - removedUser: User -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Autogenerated input type of RemoveReaction -""" -input RemoveReactionInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! """ - The name of the emoji reaction to remove. + Fetch a given ref from the repository """ - content: ReactionContent! + 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 Node ID of the subject to modify. + Fetch a list of refs from the repository """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "Issue", "IssueComment", "PullRequest", "PullRequestReview", "PullRequestReviewComment", "TeamDiscussion", "TeamDiscussionComment"], abstractType: "Reactable") -} + refs( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Autogenerated return type of RemoveReaction -""" -type RemoveReactionPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The reaction object. - """ - reaction: Reaction + """ + 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 reactable subject. + Lookup a single release given various criteria. """ - subject: Reactable -} + release( + """ + The name of the Tag the Release was created from + """ + tagName: String! + ): Release -""" -Autogenerated input type of RemoveStar -""" -input RemoveStarInput { """ - A unique identifier for the client performing the mutation. + List of releases which are dependent on this repository. """ - clientMutationId: String + 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! """ - The Starrable ID to unstar. + A list of applied repository-topic associations for this repository. """ - starrableId: ID! @possibleTypes(concreteTypes: ["Gist", "Repository", "Topic"], abstractType: "Starrable") -} + repositoryTopics( + """ + 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 + ): RepositoryTopicConnection! -""" -Autogenerated return type of RemoveStar -""" -type RemoveStarPayload { """ - A unique identifier for the client performing the mutation. + The HTTP path for this repository """ - clientMutationId: String + resourcePath: URI! """ - The starrable. + Returns a single ruleset from the current repository by ID. """ - starrable: Starrable -} + ruleset( + """ + The ID of the ruleset to be returned. + """ + databaseId: Int! + + """ + Include rulesets configured at higher levels that apply to this repository + """ + includeParents: Boolean = true + ): RepositoryRuleset -""" -Represents a 'removed_from_project' event on a given issue or pull request. -""" -type RemovedFromProjectEvent implements Node { """ - Identifies the actor who performed the event. + A list of rulesets for this repository. """ - actor: Actor + rulesets( + """ + 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 + + """ + Return rulesets configured at higher levels that apply to this repository + """ + includeParents: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): RepositoryRulesetConnection """ - Identifies the date and time when the object was created. + The security policy URL. """ - createdAt: DateTime! + securityPolicyUrl: URI """ - Identifies the primary key from the database. + A description of the repository, rendered to HTML without any links in it. """ - databaseId: Int - id: ID! + shortDescriptionHTML( + """ + How many characters to return. + """ + limit: Int = 200 + ): HTML! """ - Project referenced by event. + Whether or not squash-merging is enabled on this repository. """ - project: Project @preview(toggledBy: "starfox-preview") + squashMergeAllowed: Boolean! """ - Column name referenced by this project event. + How the default commit message will be generated when squash merging a pull request. """ - projectColumnName: String! @preview(toggledBy: "starfox-preview") -} + squashMergeCommitMessage: SquashMergeCommitMessage! -""" -Represents a 'renamed' event on a given issue or pull request -""" -type RenamedTitleEvent implements Node { """ - Identifies the actor who performed the event. + How the default commit title will be generated when squash merging a pull request. """ - actor: Actor + squashMergeCommitTitle: SquashMergeCommitTitle! """ - Identifies the date and time when the object was created. + Whether a squash merge commit can use the pull request title as default. """ - createdAt: DateTime! + squashPrTitleUsedAsDefault: Boolean! + @deprecated( + reason: "`squashPrTitleUsedAsDefault` will be removed. Use `Repository.squashMergeCommitTitle` instead. Removal on 2023-04-01 UTC." + ) """ - Identifies the current title of the issue or pull request. + The SSH URL to clone this repository """ - currentTitle: String! - id: ID! + sshUrl: GitSSHRemote! """ - Identifies the previous title of the issue or pull request. + Returns a count of how many stargazers there are on this object """ - previousTitle: String! + stargazerCount: Int! """ - Subject that was renamed. + A list of users who have starred this starrable. """ - subject: RenamedTitleSubject! -} + stargazers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -An object which has a renamable title -""" -union RenamedTitleSubject = Issue | PullRequest + """ + 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! -""" -Autogenerated input type of ReopenIssue -""" -input ReopenIssueInput { """ - A unique identifier for the client performing the mutation. + Returns a list of all submodules in this repository parsed from the + .gitmodules file as of the default branch's HEAD commit. """ - clientMutationId: String + 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! """ - ID of the issue to be opened. + Temporary authentication token for cloning this repository. """ - issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) -} + tempCloneToken: String -""" -Autogenerated return type of ReopenIssue -""" -type ReopenIssuePayload { """ - A unique identifier for the client performing the mutation. + The repository from which this repository was generated, if any. """ - clientMutationId: String + templateRepository: Repository """ - The issue that was opened. + Identifies the date and time when the object was last updated. """ - issue: Issue -} + updatedAt: DateTime! -""" -Autogenerated input type of ReopenPullRequest -""" -input ReopenPullRequestInput { """ - A unique identifier for the client performing the mutation. + The HTTP URL for this repository """ - clientMutationId: String + url: URI! """ - ID of the pull request to be reopened. + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + usesCustomOpenGraphImage: Boolean! -""" -Autogenerated return type of ReopenPullRequest -""" -type ReopenPullRequestPayload { """ - A unique identifier for the client performing the mutation. + Indicates whether the viewer has admin permissions on this repository. """ - clientMutationId: String + viewerCanAdminister: Boolean! """ - The pull request that was reopened. + Can the current viewer create new projects on this owner. """ - pullRequest: PullRequest -} + viewerCanCreateProjects: Boolean! -""" -Represents a 'reopened' event on any `Closable`. -""" -type ReopenedEvent implements Node { """ - Identifies the actor who performed the event. + Check if the viewer is able to change their subscription status for the repository. """ - actor: Actor + viewerCanSubscribe: Boolean! """ - Object that was reopened. + Indicates whether the viewer can update the topics of this repository. """ - closable: Closable! + viewerCanUpdateTopics: Boolean! """ - Identifies the date and time when the object was created. + The last commit email for the viewer. """ - createdAt: DateTime! - id: ID! -} + viewerDefaultCommitEmail: String -""" -Audit log entry for a repo.access event. -""" -type RepoAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + The last used merge method by the viewer or the default for the repository. """ - action: String! + viewerDefaultMergeMethod: PullRequestMergeMethod! """ - The user who initiated the action + Returns a boolean indicating whether the viewing user has starred this starrable. """ - actor: AuditEntryActor + viewerHasStarred: Boolean! """ - The IP address of the actor + The users permission level on the repository. Will return null if authenticated as an GitHub App. """ - actorIp: String + viewerPermission: RepositoryPermission """ - A readable representation of the actor's location + A list of emails this viewer can commit with. """ - actorLocation: ActorLocation + viewerPossibleCommitEmails: [String!] """ - The username of the user who initiated the action + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - actorLogin: String + viewerSubscription: SubscriptionState """ - The HTTP path for the actor. + Indicates the repository's visibility level. """ - actorResourcePath: URI + visibility: RepositoryVisibility! """ - The HTTP URL for the actor. + Returns a single vulnerability alert from the current repository by number. """ - actorUrl: URI + vulnerabilityAlert( + """ + The number for the vulnerability alert to be returned. + """ + number: Int! + ): RepositoryVulnerabilityAlert """ - The time the action was initiated + A list of vulnerability alerts that are on this repository. """ - createdAt: PreciseDateTime! - id: ID! + 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 + + """ + Filter by the scope of the alert's dependency + """ + dependencyScopes: [RepositoryVulnerabilityAlertDependencyScope!] + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter by the state of the alert + """ + states: [RepositoryVulnerabilityAlertState!] + ): RepositoryVulnerabilityAlertConnection """ - The corresponding operation type for the action + A list of users watching the repository. """ - operationType: OperationType + 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! """ - The Organization associated with the Audit Entry. + Whether contributors are required to sign off on web-based commits in this repository. """ - organization: Organization + webCommitSignoffRequired: Boolean! +} +""" +The affiliation of a user to a repository +""" +enum RepositoryAffiliation { """ - The name of the Organization. + Repositories that the user has been added to as a collaborator. """ - organizationName: String + COLLABORATOR """ - The HTTP path for the organization + 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. """ - organizationResourcePath: URI + ORGANIZATION_MEMBER """ - The HTTP URL for the organization + Repositories that are owned by the authenticated user. """ - organizationUrl: URI + OWNER +} +""" +Metadata for an audit entry with action repo.* +""" +interface RepositoryAuditEntryData { """ The repository associated with the action """ @@ -25644,1368 +43666,1655 @@ type RepoAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryD The HTTP URL for the repository """ repositoryUrl: URI +} +""" +Information extracted from a repository's `CODEOWNERS` file. +""" +type RepositoryCodeowners { """ - The user affected by the action + Any problems that were encountered while parsing the `CODEOWNERS` file. """ - user: User + errors: [RepositoryCodeownersError!]! +} +""" +An error in a `CODEOWNERS` file. +""" +type RepositoryCodeownersError { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The column number where the error occurs. """ - userLogin: String + column: Int! """ - The HTTP path for the user. + A short string describing the type of error. """ - userResourcePath: URI + kind: String! """ - The HTTP URL for the user. + The line number where the error occurs. """ - userUrl: URI + line: Int! """ - The visibility of the repository + A complete description of the error, combining information from other fields. """ - visibility: RepoAccessAuditEntryVisibility -} + message: String! -""" -The privacy of a repository -""" -enum RepoAccessAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The path to the file when the error occurs. """ - INTERNAL + path: String! """ - The repository is visible only to those with explicit access. + The content of the line where the error occurs. """ - PRIVATE + source: String! """ - The repository is visible to everyone. + A suggestion of how to fix the error. """ - PUBLIC + suggestion: String } """ -Audit log entry for a repo.add_member event. +The connection type for User. """ -type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { - """ - The action name - """ - action: String! - - """ - The user who initiated the action - """ - actor: AuditEntryActor - +type RepositoryCollaboratorConnection { """ - The IP address of the actor + A list of edges. """ - actorIp: String + edges: [RepositoryCollaboratorEdge] """ - A readable representation of the actor's location + A list of nodes. """ - actorLocation: ActorLocation + nodes: [User] """ - 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! +} +""" +Represents a user who is a collaborator of a repository. +""" +type RepositoryCollaboratorEdge { """ - The HTTP URL for the actor. + A cursor for use in pagination. """ - actorUrl: URI + cursor: String! + node: User! """ - The time the action was initiated + The permission the user has on the repository. """ - createdAt: PreciseDateTime! - id: ID! + permission: RepositoryPermission! """ - The corresponding operation type for the action + A list of sources for the user's access to the repository. """ - operationType: OperationType + permissionSources: [PermissionSource!] +} +""" +A list of repositories owned by the subject. +""" +type RepositoryConnection { """ - The Organization associated with the Audit Entry. + A list of edges. """ - organization: Organization + edges: [RepositoryEdge] """ - The name of the Organization. + A list of nodes. """ - organizationName: String + nodes: [Repository] """ - 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! """ - The repository associated with the action + The total size in kilobytes of all repositories in the connection. """ - repository: Repository + totalDiskUsage: Int! +} +""" +A repository contact link. +""" +type RepositoryContactLink { """ - The name of the repository + The contact link purpose. """ - repositoryName: String + about: String! """ - The HTTP path for the repository + The contact link name. """ - repositoryResourcePath: URI + name: String! """ - The HTTP URL for the repository + The contact link URL. """ - repositoryUrl: URI + url: URI! +} +""" +The reason a repository is listed as 'contributed'. +""" +enum RepositoryContributionType { """ - The user affected by the action + Created a commit """ - user: User + COMMIT """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Created an issue """ - userLogin: String + ISSUE """ - The HTTP path for the user. + Created a pull request """ - userResourcePath: URI + PULL_REQUEST """ - The HTTP URL for the user. + Reviewed a pull request """ - userUrl: URI + PULL_REQUEST_REVIEW """ - The visibility of the repository + Created the repository """ - visibility: RepoAddMemberAuditEntryVisibility + REPOSITORY } """ -The privacy of a repository +Represents an author of discussions in repositories. """ -enum RepoAddMemberAuditEntryVisibility { +interface RepositoryDiscussionAuthor { """ - The repository is visible only to users in the same business. + Discussions this user has started. """ - INTERNAL + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The repository is visible only to those with explicit access. - """ - PRIVATE + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null - """ - The repository is visible to everyone. - """ - PUBLIC -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Audit log entry for a repo.add_topic event. -""" -type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { - """ - 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 + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Filter discussions to only those in a specific repository. + """ + repositoryId: ID - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! +} +""" +Represents an author of discussion comments in repositories. +""" +interface RepositoryDiscussionCommentAuthor { """ - The HTTP path for the actor. + Discussion comments this user has authored. """ - actorResourcePath: URI + repositoryDiscussionComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP URL for the actor. - """ - actorUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The time the action was initiated - """ - createdAt: PreciseDateTime! - id: ID! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + 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 { """ - 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: Repository +} +""" +Parameters to be used for the repository_id condition +""" +type RepositoryIdConditionTarget { """ - The HTTP URL for the organization + One of these repo IDs must match the repo. """ - organizationUrl: URI + repositoryIds: [ID!]! +} +""" +Parameters to be used for the repository_id condition +""" +input RepositoryIdConditionTargetInput { """ - The repository associated with the action + One of these repo IDs must match the repo. """ - repository: Repository + repositoryIds: [ID!]! +} +""" +A subset of repository info. +""" +interface RepositoryInfo { """ - The name of the repository + Identifies the date and time when the repository was archived. """ - repositoryName: String + archivedAt: DateTime """ - 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 + The description of the repository. """ - repositoryUrl: URI + description: String """ - The name of the topic added to the repository + The description of the repository rendered to HTML. """ - topic: Topic + descriptionHTML: HTML! """ - The name of the topic added to the repository + Returns how many forks there are of this repository in the whole network. """ - topicName: String + forkCount: Int! """ - The user affected by the action + Indicates if the repository has the Discussions feature enabled. """ - user: User + hasDiscussionsEnabled: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Indicates if the repository has issues feature enabled. """ - userLogin: String + hasIssuesEnabled: Boolean! """ - The HTTP path for the user. + Indicates if the repository has the Projects feature enabled. """ - userResourcePath: URI + hasProjectsEnabled: Boolean! """ - The HTTP URL for the user. + Indicates if the repository has wiki feature enabled. """ - userUrl: URI -} + hasWikiEnabled: Boolean! -""" -Audit log entry for a repo.archived event. -""" -type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + The repository's URL. """ - action: String! + homepageUrl: URI """ - The user who initiated the action + Indicates if the repository is unmaintained. """ - actor: AuditEntryActor + isArchived: Boolean! """ - The IP address of the actor + Identifies if the repository is a fork. """ - actorIp: String + isFork: Boolean! """ - A readable representation of the actor's location + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. """ - actorLocation: ActorLocation + isInOrganization: Boolean! """ - The username of the user who initiated the action + Indicates if the repository has been locked or not. """ - actorLogin: String + isLocked: Boolean! """ - The HTTP path for the actor. + Identifies if the repository is a mirror. """ - actorResourcePath: URI + isMirror: Boolean! """ - The HTTP URL for the actor. + Identifies if the repository is private or internal. """ - actorUrl: URI + isPrivate: Boolean! """ - The time the action was initiated + Identifies if the repository is a template that can be used to generate new repositories. """ - createdAt: PreciseDateTime! - id: ID! + isTemplate: Boolean! """ - The corresponding operation type for the action + The license associated with the repository """ - operationType: OperationType + licenseInfo: License """ - The Organization associated with the Audit Entry. + The reason the repository has been locked. """ - organization: Organization + lockReason: RepositoryLockReason """ - The name of the Organization. + The repository's original mirror URL. """ - organizationName: String + mirrorUrl: URI """ - The HTTP path for the organization + The name of the repository. """ - organizationResourcePath: URI + name: String! """ - The HTTP URL for the organization + The repository's name with owner. """ - organizationUrl: URI + nameWithOwner: String! """ - The repository associated with the action + The image used to represent this repository in Open Graph data. """ - repository: Repository + openGraphImageUrl: URI! """ - The name of the repository + The User owner of the repository. """ - repositoryName: String + owner: RepositoryOwner! """ - The HTTP path for the repository + Identifies the date and time when the repository was last pushed to. """ - repositoryResourcePath: URI + pushedAt: DateTime """ - The HTTP URL for the repository + The HTTP path for this repository """ - repositoryUrl: URI + resourcePath: URI! """ - The user affected by the action + A description of the repository, rendered to HTML without any links in it. """ - user: User + shortDescriptionHTML( + """ + How many characters to return. + """ + limit: Int = 200 + ): HTML! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the date and time when the object was last updated. """ - userLogin: String + updatedAt: DateTime! """ - The HTTP path for the user. + The HTTP URL for this repository """ - userResourcePath: URI + url: URI! """ - The HTTP URL for the user. + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. """ - userUrl: URI + usesCustomOpenGraphImage: Boolean! """ - The visibility of the repository + Indicates the repository's visibility level. """ - visibility: RepoArchivedAuditEntryVisibility + visibility: RepositoryVisibility! } """ -The privacy of a repository +Repository interaction limit that applies to this object. """ -enum RepoArchivedAuditEntryVisibility { +type RepositoryInteractionAbility { """ - The repository is visible only to users in the same business. + The time the currently active limit expires. """ - INTERNAL + expiresAt: DateTime """ - The repository is visible only to those with explicit access. + The current limit that is enabled on this object. """ - PRIVATE + limit: RepositoryInteractionLimit! """ - The repository is visible to everyone. + The origin of the currently active interaction limit. """ - PUBLIC + origin: RepositoryInteractionLimitOrigin! } """ -Audit log entry for a repo.change_merge_setting event. +A repository interaction limit. """ -type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { - """ - The action name +enum RepositoryInteractionLimit { """ - action: String! - - """ - The user who initiated the action + Users that are not collaborators will not be able to interact with the repository. """ - actor: AuditEntryActor + COLLABORATORS_ONLY """ - The IP address of the actor + Users that have not previously committed to a repository’s default branch will be unable to interact with the repository. """ - actorIp: String + CONTRIBUTORS_ONLY """ - A readable representation of the actor's location + Users that have recently created their account will be unable to interact with the repository. """ - actorLocation: ActorLocation + EXISTING_USERS """ - The username of the user who initiated the action + No interaction limits are enabled. """ - actorLogin: String + NO_LIMIT +} +""" +The length for a repository interaction limit to be enabled for. +""" +enum RepositoryInteractionLimitExpiry { """ - The HTTP path for the actor. + The interaction limit will expire after 1 day. """ - actorResourcePath: URI + ONE_DAY """ - The HTTP URL for the actor. + The interaction limit will expire after 1 month. """ - actorUrl: URI + ONE_MONTH """ - The time the action was initiated + The interaction limit will expire after 1 week. """ - createdAt: PreciseDateTime! - id: ID! + ONE_WEEK """ - Whether the change was to enable (true) or disable (false) the merge type + The interaction limit will expire after 6 months. """ - isEnabled: Boolean + SIX_MONTHS """ - The merge method affected by the change + The interaction limit will expire after 3 days. """ - mergeType: RepoChangeMergeSettingAuditEntryMergeType + THREE_DAYS +} +""" +Indicates where an interaction limit is configured. +""" +enum RepositoryInteractionLimitOrigin { """ - The corresponding operation type for the action + A limit that is configured at the organization level. """ - operationType: OperationType + ORGANIZATION """ - The Organization associated with the Audit Entry. + A limit that is configured at the repository level. """ - organization: Organization + REPOSITORY """ - The name of the Organization. + A limit that is configured at the user-wide level. """ - organizationName: String + USER +} +""" +An invitation for a user to be added to a repository. +""" +type RepositoryInvitation implements Node { """ - The HTTP path for the organization + The email address that received the invitation. """ - organizationResourcePath: URI + email: String + id: ID! """ - The HTTP URL for the organization + The user who received the invitation. """ - organizationUrl: URI + invitee: User """ - The repository associated with the action + The user who created the invitation. """ - repository: Repository + inviter: User! """ - The name of the repository + The permalink for this repository invitation. """ - repositoryName: String + permalink: URI! """ - The HTTP path for the repository + The permission granted on this repository by this invitation. """ - repositoryResourcePath: URI + permission: RepositoryPermission! """ - The HTTP URL for the repository + The Repository the user is invited to. """ - repositoryUrl: URI + repository: RepositoryInfo +} +""" +A list of repository invitations. +""" +type RepositoryInvitationConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [RepositoryInvitationEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [RepositoryInvitation] """ - 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! } """ -The merge options available for pull requests to this repository. +An edge in a connection. """ -enum RepoChangeMergeSettingAuditEntryMergeType { - """ - The pull request is added to the base branch in a merge commit. - """ - MERGE - +type RepositoryInvitationEdge { """ - Commits from the pull request are added onto the base branch individually without a merge commit. + A cursor for use in pagination. """ - REBASE + cursor: String! """ - The pull request's commits are squashed into a single commit before they are merged to the base branch. + The item at the end of the edge. """ - SQUASH + node: RepositoryInvitation } """ -Audit log entry for a repo.config.disable_anonymous_git_access event. +Ordering options for repository invitation connections. """ -type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +input RepositoryInvitationOrder { """ - The action name + The ordering direction. """ - action: String! + direction: OrderDirection! """ - The user who initiated the action + The field to order repository invitations by. """ - actor: AuditEntryActor + field: RepositoryInvitationOrderField! +} +""" +Properties by which repository invitation connections can be ordered. +""" +enum RepositoryInvitationOrderField { """ - The IP address of the actor + Order repository invitations by creation time """ - actorIp: String + CREATED_AT +} +""" +The possible reasons a given repository could be in a locked state. +""" +enum RepositoryLockReason { """ - A readable representation of the actor's location + The repository is locked due to a billing related reason. """ - actorLocation: ActorLocation + BILLING """ - The username of the user who initiated the action + The repository is locked due to a migration. """ - actorLogin: String + MIGRATING """ - The HTTP path for the actor. + The repository is locked due to a move. """ - actorResourcePath: URI + MOVING """ - The HTTP URL for the actor. + The repository is locked due to a rename. """ - actorUrl: URI + RENAME """ - The time the action was initiated + The repository is locked due to a trade controls related reason. """ - createdAt: PreciseDateTime! - id: ID! + TRADE_RESTRICTION +} +""" +A GitHub Enterprise Importer (GEI) repository migration. +""" +type RepositoryMigration implements Migration & Node { """ - The corresponding operation type for the action + The migration flag to continue on error. """ - operationType: OperationType + continueOnError: Boolean! """ - 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: String """ - The HTTP path for the organization + The reason the migration failed. """ - organizationResourcePath: URI + failureReason: String + id: ID! """ - The HTTP URL for the organization + The URL for the migration log (expires 1 day after migration completes). """ - organizationUrl: URI + migrationLogUrl: URI """ - The repository associated with the action + The migration source. """ - repository: Repository + migrationSource: MigrationSource! """ - The name of the repository + The target repository name. """ - repositoryName: String + repositoryName: String! """ - The HTTP path for the repository + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. """ - repositoryResourcePath: URI + sourceUrl: URI! """ - The HTTP URL for the repository + The migration state. """ - repositoryUrl: URI + state: MigrationState! """ - The user affected by the action + The number of warnings encountered for this migration. To review the warnings, + check the [Migration Log](https://docs.github.com/en/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/accessing-your-migration-logs-for-github-enterprise-importer). """ - user: User + warningsCount: Int! +} +""" +The connection type for RepositoryMigration. +""" +type RepositoryMigrationConnection { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of edges. """ - userLogin: String + edges: [RepositoryMigrationEdge] """ - The HTTP path for the user. + A list of nodes. """ - userResourcePath: URI + nodes: [RepositoryMigration] """ - The HTTP URL for the user. + Information to aid in pagination. """ - userUrl: URI + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -Audit log entry for a repo.config.disable_collaborators_only event. +Represents a repository migration. """ -type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryMigrationEdge { """ - 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: RepositoryMigration +} +""" +Ordering options for repository migrations. +""" +input RepositoryMigrationOrder { """ - The IP address of the actor + The ordering direction. """ - actorIp: String + direction: RepositoryMigrationOrderDirection! """ - A readable representation of the actor's location + The field to order repository migrations by. """ - actorLocation: ActorLocation + field: RepositoryMigrationOrderField! +} +""" +Possible directions in which to order a list of repository migrations when provided an `orderBy` argument. +""" +enum RepositoryMigrationOrderDirection { """ - The username of the user who initiated the action + Specifies an ascending order for a given `orderBy` argument. """ - actorLogin: String + ASC """ - The HTTP path for the actor. + Specifies a descending order for a given `orderBy` argument. """ - actorResourcePath: URI + DESC +} +""" +Properties by which repository migrations can be ordered. +""" +enum RepositoryMigrationOrderField { """ - The HTTP URL for the actor. + Order mannequins why when they were created. """ - actorUrl: URI + CREATED_AT +} +""" +Parameters to be used for the repository_name condition +""" +type RepositoryNameConditionTarget { """ - The time the action was initiated + Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match. """ - createdAt: PreciseDateTime! - id: ID! + exclude: [String!]! """ - The corresponding operation type for the action + Array of repository names or patterns to include. One of these patterns must + match for the condition to pass. Also accepts `~ALL` to include all repositories. """ - operationType: OperationType + include: [String!]! """ - The Organization associated with the Audit Entry. + Target changes that match these patterns will be prevented except by those with bypass permissions. """ - organization: Organization + protected: Boolean! +} +""" +Parameters to be used for the repository_name condition +""" +input RepositoryNameConditionTargetInput { """ - The name of the Organization. + Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match. """ - organizationName: String + exclude: [String!]! """ - The HTTP path for the organization + Array of repository names or patterns to include. One of these patterns must + match for the condition to pass. Also accepts `~ALL` to include all repositories. """ - organizationResourcePath: URI + include: [String!]! """ - The HTTP URL for the organization + Target changes that match these patterns will be prevented except by those with bypass permissions. """ - organizationUrl: URI + protected: Boolean +} +""" +Represents a object that belongs to a repository. +""" +interface RepositoryNode { """ - The repository associated with the action + The repository associated with this node. """ - repository: Repository + repository: Repository! +} +""" +Ordering options for repository connections +""" +input RepositoryOrder { """ - The name of the repository + The ordering direction. """ - repositoryName: String + direction: OrderDirection! """ - The HTTP path for the repository + The field to order repositories by. """ - repositoryResourcePath: URI + field: RepositoryOrderField! +} +""" +Properties by which repository connections can be ordered. +""" +enum RepositoryOrderField { """ - The HTTP URL for the repository + Order repositories by creation time """ - repositoryUrl: URI + CREATED_AT """ - The user affected by the action + Order repositories by name """ - user: User + NAME """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Order repositories by push time """ - userLogin: String + PUSHED_AT """ - The HTTP path for the user. + Order repositories by number of stargazers """ - userResourcePath: URI + STARGAZERS """ - The HTTP URL for the user. + Order repositories by update time """ - userUrl: URI + UPDATED_AT } """ -Audit log entry for a repo.config.disable_contributors_only event. +Represents an owner of a Repository. """ -type RepoConfigDisableContributorsOnlyAuditEntry 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 - """ - 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 + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean - """ - The time the action was initiated - """ - createdAt: PreciseDateTime! - id: ID! + """ + If non-null, filters repositories according to whether they are archived and not maintained + """ + isArchived: Boolean - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean - """ - 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 + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder - """ - The HTTP URL for the organization - """ - organizationUrl: URI + """ + 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 repository associated with the action + Find Repository. """ - repository: Repository + 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 name of the repository + The HTTP URL for the owner. """ - repositoryName: String + resourcePath: URI! """ - The HTTP path for the repository + The HTTP URL for the owner. """ - repositoryResourcePath: URI + url: URI! +} +""" +The access level to a repository +""" +enum RepositoryPermission { """ - The HTTP URL for the repository + Can read, clone, and push to this repository. Can also manage issues, pull + requests, and repository settings, including adding collaborators """ - repositoryUrl: URI + ADMIN """ - The user affected by the action + Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings """ - user: User + MAINTAIN """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Can read and clone this repository. Can also open and comment on issues and pull requests """ - userLogin: String + READ """ - The HTTP path for the user. + Can read and clone this repository. Can also manage issues and pull requests """ - userResourcePath: URI + TRIAGE """ - The HTTP URL for the user. + Can read, clone, and push to this repository. Can also manage issues and pull requests """ - userUrl: URI + WRITE } """ -Audit log entry for a repo.config.disable_sockpuppet_disallowed event. +The privacy of a repository """ -type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +enum RepositoryPrivacy { """ - The action name + Private """ - action: String! + PRIVATE """ - The user who initiated the action + Public """ - actor: AuditEntryActor + PUBLIC +} - """ - The IP address of the actor - """ - actorIp: String +""" +A repository rule. +""" +type RepositoryRule implements Node { + id: ID! """ - A readable representation of the actor's location + The parameters for this rule. """ - actorLocation: ActorLocation + parameters: RuleParameters """ - The username of the user who initiated the action + The repository ruleset associated with this rule configuration """ - actorLogin: String + repositoryRuleset: RepositoryRuleset """ - The HTTP path for the actor. + The type of rule. """ - actorResourcePath: URI + type: RepositoryRuleType! +} +""" +Set of conditions that determine if a ruleset will evaluate +""" +type RepositoryRuleConditions { """ - The HTTP URL for the actor. + Configuration for the ref_name condition """ - actorUrl: URI + refName: RefNameConditionTarget """ - The time the action was initiated + Configuration for the repository_id condition """ - createdAt: PreciseDateTime! - id: ID! + repositoryId: RepositoryIdConditionTarget """ - The corresponding operation type for the action + Configuration for the repository_name condition """ - operationType: OperationType + repositoryName: RepositoryNameConditionTarget +} +""" +Specifies the conditions required for a ruleset to evaluate +""" +input RepositoryRuleConditionsInput { """ - The Organization associated with the Audit Entry. + Configuration for the ref_name condition """ - organization: Organization + refName: RefNameConditionTargetInput """ - The name of the Organization. + Configuration for the repository_id condition """ - organizationName: String + repositoryId: RepositoryIdConditionTargetInput """ - The HTTP path for the organization + Configuration for the repository_name condition """ - organizationResourcePath: URI + repositoryName: RepositoryNameConditionTargetInput +} +""" +The connection type for RepositoryRule. +""" +type RepositoryRuleConnection { """ - The HTTP URL for the organization + A list of edges. """ - organizationUrl: URI + edges: [RepositoryRuleEdge] """ - The repository associated with the action + A list of nodes. """ - repository: Repository + nodes: [RepositoryRule] """ - The name of the repository + Information to aid in pagination. """ - repositoryName: String + pageInfo: PageInfo! """ - The HTTP path for the repository + Identifies the total count of items in the connection. """ - repositoryResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryRuleEdge { """ - The HTTP URL for the repository + A cursor for use in pagination. """ - repositoryUrl: URI + cursor: String! """ - The user affected by the action + The item at the end of the edge. """ - user: User + node: RepositoryRule +} +""" +Specifies the attributes for a new or updated rule. +""" +input RepositoryRuleInput { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Optional ID of this rule when updating """ - userLogin: String + id: ID @possibleTypes(concreteTypes: ["RepositoryRule"]) """ - The HTTP path for the user. + The parameters for the rule. """ - userResourcePath: URI + parameters: RuleParametersInput """ - The HTTP URL for the user. + The type of rule to create. """ - userUrl: URI + type: RepositoryRuleType! } """ -Audit log entry for a repo.config.enable_anonymous_git_access event. +The rule types supported in rulesets """ -type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +enum RepositoryRuleType { """ - The action name + Branch name pattern """ - action: String! + BRANCH_NAME_PATTERN """ - The user who initiated the action + Committer email pattern """ - actor: AuditEntryActor + COMMITTER_EMAIL_PATTERN """ - The IP address of the actor + Commit author email pattern """ - actorIp: String + COMMIT_AUTHOR_EMAIL_PATTERN """ - A readable representation of the actor's location + Commit message pattern """ - actorLocation: ActorLocation + COMMIT_MESSAGE_PATTERN """ - The username of the user who initiated the action + Only allow users with bypass permission to create matching refs. """ - actorLogin: String + CREATION """ - The HTTP path for the actor. + Only allow users with bypass permissions to delete matching refs. """ - actorResourcePath: URI + DELETION """ - The HTTP URL for the actor. + Prevent users with push access from force pushing to refs. """ - actorUrl: URI + NON_FAST_FORWARD """ - The time the action was initiated + Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. """ - createdAt: PreciseDateTime! - id: ID! + PULL_REQUEST """ - The corresponding operation type for the action + Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule. """ - operationType: OperationType + REQUIRED_DEPLOYMENTS """ - The Organization associated with the Audit Entry. + Prevent merge commits from being pushed to matching refs. """ - organization: Organization + REQUIRED_LINEAR_HISTORY """ - The name of the Organization. + Commits pushed to matching refs must have verified signatures. """ - organizationName: String + REQUIRED_SIGNATURES """ - The HTTP path for the organization + Choose which status checks must pass before branches can be merged into a + branch that matches this rule. When enabled, commits must first be pushed to + another branch, then merged or pushed directly to a ref that matches this rule + after status checks have passed. """ - organizationResourcePath: URI + REQUIRED_STATUS_CHECKS """ - The HTTP URL for the organization + Tag name pattern """ - organizationUrl: URI + TAG_NAME_PATTERN """ - The repository associated with the action + Only allow users with bypass permission to update matching refs. """ - repository: Repository + UPDATE +} +""" +A repository ruleset. +""" +type RepositoryRuleset implements Node { """ - The name of the repository + The actors that can bypass this ruleset """ - repositoryName: String + bypassActors( + """ + 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 + ): RepositoryRulesetBypassActorConnection """ - The HTTP path for the repository + The set of conditions that must evaluate to true for this ruleset to apply """ - repositoryResourcePath: URI + conditions: RepositoryRuleConditions! """ - The HTTP URL for the repository + Identifies the date and time when the object was created. """ - repositoryUrl: URI + createdAt: DateTime! """ - The user affected by the action + Identifies the primary key from the database. """ - user: User + databaseId: Int """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The enforcement level of this ruleset """ - userLogin: String + enforcement: RuleEnforcement! + id: ID! """ - The HTTP path for the user. + Name of the ruleset. """ - userResourcePath: URI + name: String! """ - The HTTP URL for the user. + List of rules. """ - userUrl: URI -} + rules( + """ + 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 type of rule. + """ + type: RepositoryRuleType + ): RepositoryRuleConnection -""" -Audit log entry for a repo.config.enable_collaborators_only event. -""" -type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + Source of ruleset. """ - action: String! + source: RuleSource! """ - The user who initiated the action + Target of the ruleset. """ - actor: AuditEntryActor + target: RepositoryRulesetTarget """ - The IP address of the actor + Identifies the date and time when the object was last updated. """ - actorIp: String + updatedAt: DateTime! +} +""" +A team or app that has the ability to bypass a rules defined on a ruleset +""" +type RepositoryRulesetBypassActor implements Node { """ - A readable representation of the actor's location + The actor that can bypass rules. """ - actorLocation: ActorLocation + actor: BypassActor """ - The username of the user who initiated the action + The mode for the bypass actor """ - actorLogin: String + bypassMode: RepositoryRulesetBypassActorBypassMode + id: ID! """ - The HTTP path for the actor. + This actor represents the ability for an organization admin to bypass """ - actorResourcePath: URI + organizationAdmin: Boolean! """ - The HTTP URL for the actor. + If the actor is a repository role, the repository role's ID that can bypass """ - actorUrl: URI + repositoryRoleDatabaseId: Int """ - The time the action was initiated + If the actor is a repository role, the repository role's name that can bypass """ - createdAt: PreciseDateTime! - id: ID! + repositoryRoleName: String """ - The corresponding operation type for the action + Identifies the ruleset associated with the allowed actor """ - operationType: OperationType + repositoryRuleset: RepositoryRuleset +} +""" +The bypass mode for a specific actor on a ruleset. +""" +enum RepositoryRulesetBypassActorBypassMode { """ - The Organization associated with the Audit Entry. + The actor can always bypass rules """ - organization: Organization + ALWAYS """ - The name of the Organization. + The actor can only bypass rules via a pull request """ - organizationName: String + PULL_REQUEST +} +""" +The connection type for RepositoryRulesetBypassActor. +""" +type RepositoryRulesetBypassActorConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [RepositoryRulesetBypassActorEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [RepositoryRulesetBypassActor] """ - The repository associated with the action + Information to aid in pagination. """ - repository: Repository + pageInfo: PageInfo! """ - The name of the repository + Identifies the total count of items in the connection. """ - repositoryName: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryRulesetBypassActorEdge { """ - The HTTP path for the repository + A cursor for use in pagination. """ - repositoryResourcePath: URI + cursor: String! """ - The HTTP URL for the repository + The item at the end of the edge. """ - repositoryUrl: URI + node: RepositoryRulesetBypassActor +} +""" +Specifies the attributes for a new or updated ruleset bypass actor. Only one of +`actor_id`, `repository_role_database_id`, or `organization_admin` should be specified. +""" +input RepositoryRulesetBypassActorInput { """ - The user affected by the action + For Team and Integration bypasses, the Team or Integration ID """ - user: User + actorId: ID """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The bypass mode for this actor. """ - userLogin: String + bypassMode: RepositoryRulesetBypassActorBypassMode! """ - The HTTP path for the user. + For org admin bupasses, true """ - userResourcePath: URI + organizationAdmin: Boolean """ - The HTTP URL for the user. + For role bypasses, the role database ID """ - userUrl: URI + repositoryRoleDatabaseId: Int } """ -Audit log entry for a repo.config.enable_contributors_only event. +The connection type for RepositoryRuleset. """ -type RepoConfigEnableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryRulesetConnection { """ - The action name + A list of edges. """ - action: String! + edges: [RepositoryRulesetEdge] """ - The user who initiated the action + A list of nodes. """ - actor: AuditEntryActor + nodes: [RepositoryRuleset] """ - 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 RepositoryRulesetEdge { """ - 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: RepositoryRuleset +} +""" +The targets supported for rulesets +""" +enum RepositoryRulesetTarget { """ - The HTTP URL for the actor. + Branch """ - actorUrl: URI + BRANCH """ - The time the action was initiated + Tag """ - createdAt: PreciseDateTime! - id: ID! + TAG +} - """ - The corresponding operation type for the action - """ - operationType: OperationType +""" +A repository-topic connects a repository to a topic. +""" +type RepositoryTopic implements Node & UniformResourceLocatable { + id: ID! """ - The Organization associated with the Audit Entry. + The HTTP path for this repository-topic. """ - organization: Organization + resourcePath: URI! """ - The name of the Organization. + The topic. """ - organizationName: String + topic: Topic! """ - The HTTP path for the organization + The HTTP URL for this repository-topic. """ - organizationResourcePath: URI + url: URI! +} +""" +The connection type for RepositoryTopic. +""" +type RepositoryTopicConnection { """ - The HTTP URL for the organization + A list of edges. """ - organizationUrl: URI + edges: [RepositoryTopicEdge] """ - The repository associated with the action + A list of nodes. """ - repository: Repository + nodes: [RepositoryTopic] """ - The name of the repository + Information to aid in pagination. """ - repositoryName: String + pageInfo: PageInfo! """ - The HTTP path for the repository + Identifies the total count of items in the connection. """ - repositoryResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryTopicEdge { """ - The HTTP URL for the repository + A cursor for use in pagination. """ - repositoryUrl: URI + cursor: String! """ - The user affected by the action + The item at the end of the edge. """ - user: User + node: RepositoryTopic +} +""" +The repository's visibility level. +""" +enum RepositoryVisibility { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The repository is visible only to users in the same business. """ - userLogin: String + INTERNAL """ - The HTTP path for the user. + The repository is visible only to those with explicit access. """ - userResourcePath: URI + PRIVATE """ - The HTTP URL for the user. + The repository is visible to everyone. """ - userUrl: URI + PUBLIC } """ -Audit log entry for a repo.config.enable_sockpuppet_disallowed event. +Audit log entry for a repository_visibility_change.disable event. """ -type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ The action name """ @@ -27045,6 +45354,21 @@ type RepoConfigEnableSockpuppetDisallowedAuditEntry 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! """ @@ -27072,26 +45396,6 @@ type RepoConfigEnableSockpuppetDisallowedAuditEntry 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 """ @@ -27114,9 +45418,9 @@ type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node } """ -Audit log entry for a repo.config.lock_anonymous_git_access event. +Audit log entry for a repository_visibility_change.enable event. """ -type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ The action name """ @@ -27156,6 +45460,21 @@ type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & O 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! """ @@ -27183,26 +45502,6 @@ type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & O """ 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 """ @@ -27225,793 +45524,889 @@ type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & O } """ -Audit log entry for a repo.config.unlock_anonymous_git_access event. +A Dependabot alert for a repository with a dependency affected by a security vulnerability. """ -type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVulnerabilityAlert implements Node & RepositoryNode { """ - The action name + When was the alert auto-dismissed? """ - action: String! + autoDismissedAt: DateTime """ - The user who initiated the action + When was the alert created? """ - actor: AuditEntryActor + createdAt: DateTime! """ - The IP address of the actor + The associated Dependabot update """ - actorIp: String + dependabotUpdate: DependabotUpdate """ - A readable representation of the actor's location + The scope of an alert's dependency """ - actorLocation: ActorLocation + dependencyScope: RepositoryVulnerabilityAlertDependencyScope """ - The username of the user who initiated the action + Comment explaining the reason the alert was dismissed """ - actorLogin: String + dismissComment: String """ - The HTTP path for the actor. + The reason the alert was dismissed """ - actorResourcePath: URI + dismissReason: String """ - The HTTP URL for the actor. + When was the alert dismissed? """ - actorUrl: URI + dismissedAt: DateTime """ - The time the action was initiated + The user who dismissed the alert """ - createdAt: PreciseDateTime! - id: ID! + dismisser: User """ - The corresponding operation type for the action + When was the alert fixed? """ - operationType: OperationType + fixedAt: DateTime + id: ID! """ - The Organization associated with the Audit Entry. + Identifies the alert number. """ - organization: Organization + number: Int! """ - The name of the Organization. + The associated repository """ - organizationName: String + repository: Repository! """ - The HTTP path for the organization + The associated security advisory """ - organizationResourcePath: URI + securityAdvisory: SecurityAdvisory """ - The HTTP URL for the organization + The associated security vulnerability """ - organizationUrl: URI + securityVulnerability: SecurityVulnerability """ - The repository associated with the action + Identifies the state of the alert. """ - repository: Repository + state: RepositoryVulnerabilityAlertState! """ - The name of the repository + The vulnerable manifest filename """ - repositoryName: String + vulnerableManifestFilename: String! """ - The HTTP path for the repository + The vulnerable manifest path """ - repositoryResourcePath: URI + vulnerableManifestPath: String! """ - The HTTP URL for the repository + The vulnerable requirements """ - repositoryUrl: URI + vulnerableRequirements: String +} +""" +The connection type for RepositoryVulnerabilityAlert. +""" +type RepositoryVulnerabilityAlertConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [RepositoryVulnerabilityAlertEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [RepositoryVulnerabilityAlert] """ - 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.create event. +The possible scopes of an alert's dependency. """ -type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +enum RepositoryVulnerabilityAlertDependencyScope { """ - The action name + A dependency that is only used in development """ - action: String! + DEVELOPMENT """ - The user who initiated the action + A dependency that is leveraged during application runtime """ - actor: AuditEntryActor + RUNTIME +} +""" +An edge in a connection. +""" +type RepositoryVulnerabilityAlertEdge { """ - The IP address of the actor + A cursor for use in pagination. """ - actorIp: String + cursor: String! """ - A readable representation of the actor's location + The item at the end of the edge. """ - actorLocation: ActorLocation + node: RepositoryVulnerabilityAlert +} +""" +The possible states of an alert +""" +enum RepositoryVulnerabilityAlertState { """ - The username of the user who initiated the action + An alert that has been automatically closed by Dependabot. """ - actorLogin: String + AUTO_DISMISSED """ - The HTTP path for the actor. + An alert that has been manually closed by a user. """ - actorResourcePath: URI + DISMISSED """ - The HTTP URL for the actor. + An alert that has been resolved by a code change. """ - actorUrl: URI + FIXED """ - The time the action was initiated + An alert that is still open. """ - createdAt: PreciseDateTime! + OPEN +} +""" +Autogenerated input type of RequestReviews +""" +input RequestReviewsInput { """ - The name of the parent repository for this forked repository. + A unique identifier for the client performing the mutation. """ - forkParentName: String + clientMutationId: String """ - The name of the root repository for this netork. + The Node ID of the pull request to modify. """ - forkSourceName: String - id: ID! + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) """ - The corresponding operation type for the action + The Node IDs of the team to request. """ - operationType: OperationType + teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"]) """ - The Organization associated with the Audit Entry. + Add users to the set rather than replace. """ - organization: Organization + union: Boolean = false """ - The name of the Organization. + The Node IDs of the user to request. """ - organizationName: String + userIds: [ID!] @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of RequestReviews +""" +type RequestReviewsPayload { """ - The HTTP path for the organization + Identifies the actor who performed the event. """ - organizationResourcePath: URI + actor: Actor """ - 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 pull request that is getting requests. """ - repository: Repository + pullRequest: PullRequest """ - The name of the repository + The edge from the pull request to the requested reviewers. """ - repositoryName: String + requestedReviewersEdge: UserEdge +} +""" +The possible states that can be requested when creating a check run. +""" +enum RequestableCheckStatusState { """ - The HTTP path for the repository + The check suite or run has been completed. """ - repositoryResourcePath: URI + COMPLETED """ - The HTTP URL for the repository + The check suite or run is in progress. """ - repositoryUrl: URI + IN_PROGRESS """ - The user affected by the action + The check suite or run is in pending state. """ - user: User + PENDING """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The check suite or run has been queued. """ - userLogin: String + QUEUED """ - The HTTP path for the user. + The check suite or run is in waiting state. """ - userResourcePath: URI + WAITING +} - """ - The HTTP URL for the user. - """ - userUrl: URI +""" +Types that can be requested reviewers. +""" +union RequestedReviewer = Bot | Mannequin | Team | User +""" +The connection type for RequestedReviewer. +""" +type RequestedReviewerConnection { """ - The visibility of the repository + A list of edges. """ - visibility: RepoCreateAuditEntryVisibility -} + edges: [RequestedReviewerEdge] -""" -The privacy of a repository -""" -enum RepoCreateAuditEntryVisibility { """ - The repository is visible only to users in the same business. + A list of nodes. """ - INTERNAL + nodes: [RequestedReviewer] """ - The repository is visible only to those with explicit access. + Information to aid in pagination. """ - PRIVATE + pageInfo: PageInfo! """ - The repository is visible to everyone. + Identifies the total count of items in the connection. """ - PUBLIC + totalCount: Int! } """ -Audit log entry for a repo.destroy event. +An edge in a connection. """ -type RepoDestroyAuditEntry 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! +} + +""" +Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule. +""" +type RequiredDeploymentsParameters { """ - A readable representation of the actor's location + The environments that must be successfully deployed to before branches can be merged. """ - actorLocation: ActorLocation + requiredDeploymentEnvironments: [String!]! +} +""" +Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule. +""" +input RequiredDeploymentsParametersInput { """ - The username of the user who initiated the action + The environments that must be successfully deployed to before branches can be merged. """ - actorLogin: String + requiredDeploymentEnvironments: [String!]! +} +""" +Represents a required status check for a protected branch, but not any specific run of that check. +""" +type RequiredStatusCheckDescription { """ - The HTTP path for the actor. + The App that must provide this status in order for it to be accepted. """ - actorResourcePath: URI + app: App """ - The HTTP URL for the actor. + The name of this status. """ - actorUrl: URI + context: String! +} +""" +Specifies the attributes for a new or updated required status check. +""" +input RequiredStatusCheckInput { """ - The time the action was initiated + 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. """ - createdAt: PreciseDateTime! - id: ID! + appId: ID """ - The corresponding operation type for the action + Status check context that must pass for commits to be accepted to the matching branch. """ - operationType: OperationType + context: String! +} +""" +Choose which status checks must pass before branches can be merged into a branch +that matches this rule. When enabled, commits must first be pushed to another +branch, then merged or pushed directly to a ref that matches this rule after +status checks have passed. +""" +type RequiredStatusChecksParameters { """ - The Organization associated with the Audit Entry. + Status checks that are required. """ - organization: Organization + requiredStatusChecks: [StatusCheckConfiguration!]! """ - The name of the Organization. + Whether pull requests targeting a matching branch must be tested with the + latest code. This setting will not take effect unless at least one status + check is enabled. """ - organizationName: String + strictRequiredStatusChecksPolicy: Boolean! +} +""" +Choose which status checks must pass before branches can be merged into a branch +that matches this rule. When enabled, commits must first be pushed to another +branch, then merged or pushed directly to a ref that matches this rule after +status checks have passed. +""" +input RequiredStatusChecksParametersInput { """ - The HTTP path for the organization + Status checks that are required. """ - organizationResourcePath: URI + requiredStatusChecks: [StatusCheckConfigurationInput!]! """ - The HTTP URL for the organization + Whether pull requests targeting a matching branch must be tested with the + latest code. This setting will not take effect unless at least one status + check is enabled. """ - organizationUrl: URI + strictRequiredStatusChecksPolicy: Boolean! +} +""" +Autogenerated input type of RerequestCheckSuite +""" +input RerequestCheckSuiteInput { """ - The repository associated with the action + The Node ID of the check suite. """ - repository: Repository + checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"]) """ - 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 Node ID of the repository. """ - repositoryResourcePath: URI + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} +""" +Autogenerated return type of RerequestCheckSuite +""" +type RerequestCheckSuitePayload { """ - The HTTP URL for the repository + The requested check suite. """ - repositoryUrl: URI + checkSuite: CheckSuite """ - The user affected by the action + A unique identifier for the client performing the mutation. """ - user: User + clientMutationId: String +} +""" +Autogenerated input type of ResolveReviewThread +""" +input ResolveReviewThreadInput { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A unique identifier for the client performing the mutation. """ - userLogin: String + clientMutationId: String """ - The HTTP path for the user. + The ID of the thread to resolve """ - userResourcePath: URI + threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) +} +""" +Autogenerated return type of ResolveReviewThread +""" +type ResolveReviewThreadPayload { """ - The HTTP URL for the user. + A unique identifier for the client performing the mutation. """ - userUrl: URI + clientMutationId: String """ - The visibility of the repository + The thread to resolve. """ - visibility: RepoDestroyAuditEntryVisibility + thread: PullRequestReviewThread } """ -The privacy of a repository +Represents a private contribution a user made on GitHub. """ -enum RepoDestroyAuditEntryVisibility { +type RestrictedContribution implements Contribution { """ - The repository is visible only to users in the same business. + 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. """ - INTERNAL + isRestricted: Boolean! """ - The repository is visible only to those with explicit access. + When this contribution was made. """ - PRIVATE + occurredAt: DateTime! """ - The repository is visible to everyone. + The HTTP path for this contribution. """ - PUBLIC -} + resourcePath: URI! -""" -Audit log entry for a repo.remove_member event. -""" -type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + The HTTP URL for this contribution. """ - action: String! + url: URI! """ - The user who initiated the action + The user who made this contribution. """ - actor: AuditEntryActor + user: User! +} +""" +Autogenerated input type of RetireSponsorsTier +""" +input RetireSponsorsTierInput { """ - 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 ID of the published tier to retire. """ - actorLocation: ActorLocation + tierId: ID! @possibleTypes(concreteTypes: ["SponsorsTier"]) +} +""" +Autogenerated return type of RetireSponsorsTier +""" +type RetireSponsorsTierPayload { """ - 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 tier that was retired. """ - actorResourcePath: URI + sponsorsTier: SponsorsTier +} +""" +Autogenerated input type of RevertPullRequest +""" +input RevertPullRequestInput { """ - The HTTP URL for the actor. + The description of the revert pull request. """ - actorUrl: URI + body: String """ - The time the action was initiated + A unique identifier for the client performing the mutation. """ - createdAt: PreciseDateTime! - id: ID! + clientMutationId: String """ - The corresponding operation type for the action + Indicates whether the revert pull request should be a draft. """ - operationType: OperationType + draft: Boolean = false """ - The Organization associated with the Audit Entry. + The ID of the pull request to revert. """ - organization: Organization + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) """ - The name of the Organization. + The title of the revert pull request. """ - organizationName: String + title: String +} +""" +Autogenerated return type of RevertPullRequest +""" +type RevertPullRequestPayload { """ - 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 was reverted. """ - organizationUrl: URI + pullRequest: PullRequest """ - The repository associated with the action + The new pull request that reverts the input pull request. """ - repository: Repository + revertPullRequest: PullRequest +} +""" +A user, team, or app who has the ability to dismiss a review on a protected branch. +""" +type ReviewDismissalAllowance implements Node { """ - The name of the repository + The actor that can dismiss. """ - repositoryName: String + actor: ReviewDismissalAllowanceActor """ - The HTTP path for the repository + Identifies the branch protection rule associated with the allowed user, team, or app. """ - repositoryResourcePath: URI + branchProtectionRule: BranchProtectionRule + id: ID! +} + +""" +Types that can be an actor. +""" +union ReviewDismissalAllowanceActor = App | Team | User +""" +The connection type for ReviewDismissalAllowance. +""" +type ReviewDismissalAllowanceConnection { """ - The HTTP URL for the repository + A list of edges. """ - repositoryUrl: URI + edges: [ReviewDismissalAllowanceEdge] """ - The user affected by the action + A list of nodes. """ - user: User + nodes: [ReviewDismissalAllowance] """ - 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! +} +""" +An edge in a connection. +""" +type ReviewDismissalAllowanceEdge { """ - The HTTP URL for the user. + A cursor for use in pagination. """ - userUrl: URI + cursor: String! """ - The visibility of the repository + The item at the end of the edge. """ - visibility: RepoRemoveMemberAuditEntryVisibility + node: ReviewDismissalAllowance } """ -The privacy of a repository +Represents a 'review_dismissed' event on a given issue or pull request. """ -enum RepoRemoveMemberAuditEntryVisibility { - """ - The repository is visible only to users in the same business. - """ - INTERNAL - +type ReviewDismissedEvent implements Node & UniformResourceLocatable { """ - The repository is visible only to those with explicit access. + Identifies the actor who performed the event. """ - PRIVATE + actor: Actor """ - The repository is visible to everyone. + Identifies the date and time when the object was created. """ - PUBLIC -} + createdAt: DateTime! -""" -Audit log entry for a repo.remove_topic event. -""" -type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { """ - The action name + Identifies the primary key from the database. """ - action: String! + databaseId: Int """ - The user who initiated the action + Identifies the optional message associated with the 'review_dismissed' event. """ - actor: AuditEntryActor + dismissalMessage: String """ - The IP address of the actor + Identifies the optional message associated with the event, rendered to HTML. """ - actorIp: String + dismissalMessageHTML: String + id: ID! """ - A readable representation of the actor's location + Identifies the previous state of the review with the 'review_dismissed' event. """ - actorLocation: ActorLocation + previousReviewState: PullRequestReviewState! """ - The username of the user who initiated the action + PullRequest referenced by event. """ - actorLogin: String + pullRequest: PullRequest! """ - The HTTP path for the actor. + Identifies the commit which caused the review to become stale. """ - actorResourcePath: URI + pullRequestCommit: PullRequestCommit """ - The HTTP URL for the actor. + The HTTP path for this review dismissed event. """ - actorUrl: URI + resourcePath: URI! """ - The time the action was initiated + Identifies the review associated with the 'review_dismissed' event. """ - createdAt: PreciseDateTime! - id: ID! + review: PullRequestReview """ - The corresponding operation type for the action + The HTTP URL for this review dismissed event. """ - operationType: OperationType + url: URI! +} +""" +A request for a user to review a pull request. +""" +type ReviewRequest implements Node { """ - The Organization associated with the Audit Entry. + Whether this request was created for a code owner """ - organization: Organization + asCodeOwner: Boolean! """ - The name of the Organization. + Identifies the primary key from the database. """ - organizationName: String + databaseId: Int + id: ID! """ - The HTTP path for the organization + Identifies the pull request associated with this review request. """ - organizationResourcePath: URI + pullRequest: PullRequest! """ - The HTTP URL for the organization + The reviewer that is requested. """ - organizationUrl: URI + requestedReviewer: RequestedReviewer +} +""" +The connection type for ReviewRequest. +""" +type ReviewRequestConnection { """ - The repository associated with the action + A list of edges. """ - repository: Repository + edges: [ReviewRequestEdge] """ - The name of the repository + A list of nodes. """ - repositoryName: String + nodes: [ReviewRequest] """ - The HTTP path for the repository + Information to aid in pagination. """ - repositoryResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the repository + Identifies the total count of items in the connection. """ - repositoryUrl: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type ReviewRequestEdge { """ - The name of the topic added to the repository + A cursor for use in pagination. """ - topic: Topic + cursor: String! """ - The name of the topic added to the repository + The item at the end of the edge. """ - topicName: String + node: ReviewRequest +} +""" +Represents an 'review_request_removed' event on a given pull request. +""" +type ReviewRequestRemovedEvent 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 date and time when the object was created. """ - userLogin: String + createdAt: DateTime! + id: ID! """ - The HTTP path for the user. + PullRequest referenced by event. """ - userResourcePath: URI + pullRequest: PullRequest! """ - The HTTP URL for the user. + Identifies the reviewer whose review request was removed. """ - userUrl: URI + requestedReviewer: RequestedReviewer } """ -The reasons a piece of content can be reported or minimized. +Represents an 'review_requested' event on a given pull request. """ -enum ReportedContentClassifiers { +type ReviewRequestedEvent implements Node { """ - An abusive or harassing piece of content + Identifies the actor who performed the event. """ - ABUSE + actor: Actor """ - A duplicated piece of content + Identifies the date and time when the object was created. """ - DUPLICATE + createdAt: DateTime! + id: ID! """ - An irrelevant piece of content + PullRequest referenced by event. """ - OFF_TOPIC + pullRequest: PullRequest! """ - An outdated piece of content + Identifies the reviewer whose review was requested. """ - OUTDATED + requestedReviewer: RequestedReviewer +} + +""" +A hovercard context with a message describing the current code review state of the pull +request. +""" +type ReviewStatusHovercardContext implements HovercardContext { + """ + A string describing this context + """ + message: String! """ - The content has been resolved + An octicon to accompany this context """ - RESOLVED + octicon: String! """ - A spammy piece of content + The current status of the pull request with respect to code review. """ - SPAM + reviewDecision: PullRequestReviewDecision } """ -A repository contains the content for a project. +Autogenerated input type of RevokeEnterpriseOrganizationsMigratorRole """ -type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable { +input RevokeEnterpriseOrganizationsMigratorRoleInput { """ - A list of users that can be assigned to issues in this repository. + A unique identifier for the client performing the mutation. """ - 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! + clientMutationId: String """ - A list of branch protection rules for this repository. + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. """ - 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! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - Returns the code of conduct for this repository + The login of the user to revoke the migrator role """ - codeOfConduct: CodeOfConduct + login: String! +} +""" +Autogenerated return type of RevokeEnterpriseOrganizationsMigratorRole +""" +type RevokeEnterpriseOrganizationsMigratorRolePayload { """ - A list of collaborators associated with the repository. + A unique identifier for the client performing the mutation. """ - 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 + clientMutationId: String """ - A list of commit comments associated with the repository. + The organizations that had the migrator role revoked for the given user. """ - commitComments( + organizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -28031,587 +46426,435 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & Returns the last _n_ elements from the list. """ last: Int - ): CommitCommentConnection! + ): OrganizationConnection +} +""" +Autogenerated input type of RevokeMigratorRole +""" +input RevokeMigratorRoleInput { """ - Identifies the date and time when the object was created. + The user login or Team slug to revoke the migrator role from. """ - createdAt: DateTime! + actor: String! """ - Identifies the primary key from the database. + Specifies the type of the actor, can be either USER or TEAM. """ - databaseId: Int + actorType: ActorType! """ - The Ref associated with the repository's default branch. + A unique identifier for the client performing the mutation. """ - defaultBranchRef: Ref + clientMutationId: String """ - Whether or not branches are automatically deleted when merged in this repository. + The ID of the organization that the user/team belongs to. """ - deleteBranchOnMerge: Boolean! + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} +""" +Autogenerated return type of RevokeMigratorRole +""" +type RevokeMigratorRolePayload { """ - A list of dependency manifests contained in the repository + A unique identifier for the client performing the mutation. """ - 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") + clientMutationId: String """ - A list of deploy keys that are on this repository. + Did the operation succeed? """ - 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! + success: Boolean +} +""" +Possible roles a user may have in relation to an organization. +""" +enum RoleInOrganization { """ - Deployments associated with the repository + A user who is a direct member of the organization. """ - 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! + DIRECT_MEMBER """ - The description of the repository. + A user with full administrative access to the organization. """ - description: String + OWNER """ - The description of the repository rendered to HTML. + A user who is unaffiliated with the organization. """ - descriptionHTML: HTML! + UNAFFILIATED +} +""" +The level of enforcement for a rule or ruleset. +""" +enum RuleEnforcement { """ - The number of kilobytes this repository occupies on disk. + Rules will be enforced """ - diskUsage: Int + ACTIVE """ - Returns how many forks there are of this repository in the whole network. + Do not evaluate or enforce rules """ - forkCount: Int! + DISABLED """ - A list of direct forked repositories. + Allow admins to test rules before enforcing them. Admins can view insights on + the Rule Insights page (`evaluate` is only available with GitHub Enterprise). """ - 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] + EVALUATE +} - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! +""" +Types which can be parameters for `RepositoryRule` objects. +""" +union RuleParameters = + BranchNamePatternParameters + | CommitAuthorEmailPatternParameters + | CommitMessagePatternParameters + | CommitterEmailPatternParameters + | PullRequestParameters + | RequiredDeploymentsParameters + | RequiredStatusChecksParameters + | TagNamePatternParameters + | UpdateParameters +""" +Specifies the parameters for a `RepositoryRule` object. Only one of the fields should be specified. +""" +input RuleParametersInput { """ - The funding links for this repository + Parameters used for the `branch_name_pattern` rule type """ - fundingLinks: [FundingLink!]! + branchNamePattern: BranchNamePatternParametersInput """ - Indicates if the repository has issues feature enabled. + Parameters used for the `commit_author_email_pattern` rule type """ - hasIssuesEnabled: Boolean! + commitAuthorEmailPattern: CommitAuthorEmailPatternParametersInput """ - Indicates if the repository has the Projects feature enabled. + Parameters used for the `commit_message_pattern` rule type """ - hasProjectsEnabled: Boolean! + commitMessagePattern: CommitMessagePatternParametersInput """ - Indicates if the repository has wiki feature enabled. + Parameters used for the `committer_email_pattern` rule type """ - hasWikiEnabled: Boolean! + committerEmailPattern: CommitterEmailPatternParametersInput """ - The repository's URL. + Parameters used for the `pull_request` rule type """ - homepageUrl: URI - id: ID! + pullRequest: PullRequestParametersInput """ - Indicates if the repository is unmaintained. + Parameters used for the `required_deployments` rule type """ - isArchived: Boolean! + requiredDeployments: RequiredDeploymentsParametersInput """ - Returns whether or not this repository disabled. + Parameters used for the `required_status_checks` rule type """ - isDisabled: Boolean! + requiredStatusChecks: RequiredStatusChecksParametersInput """ - Identifies if the repository is a fork. + Parameters used for the `tag_name_pattern` rule type """ - isFork: Boolean! + tagNamePattern: TagNamePatternParametersInput """ - Indicates if the repository has been locked or not. + Parameters used for the `update` rule type """ - isLocked: Boolean! + update: UpdateParametersInput +} + +""" +Types which can have `RepositoryRule` objects. +""" +union RuleSource = Organization | Repository +""" +The possible digest algorithms used to sign SAML requests for an identity provider. +""" +enum SamlDigestAlgorithm { """ - Identifies if the repository is a mirror. + SHA1 """ - isMirror: Boolean! + SHA1 """ - Identifies if the repository is private. + SHA256 """ - isPrivate: Boolean! + SHA256 """ - Identifies if the repository is a template that can be used to generate new repositories. + SHA384 """ - isTemplate: Boolean! + SHA384 """ - Returns a single issue from the current repository by number. + SHA512 """ - issue( - """ - The number for the issue to be returned. - """ - number: Int! - ): Issue + SHA512 +} +""" +The possible signature algorithms used to sign SAML requests for a Identity Provider. +""" +enum SamlSignatureAlgorithm { """ - Returns a single issue-like object from the current repository by number. + RSA-SHA1 """ - issueOrPullRequest( - """ - The number for the issue to be returned. - """ - number: Int! - ): IssueOrPullRequest + RSA_SHA1 """ - A list of issues that have been opened in the repository. + RSA-SHA256 """ - 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! + RSA_SHA256 """ - Returns a single label by name + RSA-SHA384 """ - label( - """ - Label name - """ - name: String! - ): Label + RSA_SHA384 """ - A list of labels associated with the repository. + RSA-SHA512 """ - 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} - - """ - If provided, searches labels by name and description. - """ - query: String - ): LabelConnection + RSA_SHA512 +} +""" +A Saved Reply is text a user can use to reply quickly. +""" +type SavedReply implements Node { """ - A list containing a breakdown of the language composition of the repository. + The body of the saved reply. """ - languages( - """ - 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 + body: String! - """ - Order for connection - """ - orderBy: LanguageOrder - ): LanguageConnection + """ + The saved reply body rendered to HTML. + """ + bodyHTML: HTML! """ - The license associated with the repository + Identifies the primary key from the database. """ - licenseInfo: License + databaseId: Int + id: ID! """ - The reason the repository has been locked. + The title of the saved reply. """ - lockReason: RepositoryLockReason + title: String! """ - A list of Users that can be mentioned in the context of the repository. + The user that saved this reply. """ - mentionableUsers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + user: Actor +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +The connection type for SavedReply. +""" +type SavedReplyConnection { + """ + A list of edges. + """ + edges: [SavedReplyEdge] - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + A list of nodes. + """ + nodes: [SavedReply] - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! - """ - Filters users with query on user name and login - """ - query: String - ): UserConnection! + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} +""" +An edge in a connection. +""" +type SavedReplyEdge { """ - Whether or not PRs are merged with a merge commit on this repository. + A cursor for use in pagination. """ - mergeCommitAllowed: Boolean! + cursor: String! """ - Returns a single milestone from the current repository by number. + The item at the end of the edge. """ - milestone( - """ - The number for the milestone to be returned. - """ - number: Int! - ): Milestone + node: SavedReply +} +""" +Ordering options for saved reply connections. +""" +input SavedReplyOrder { """ - A list of milestones associated with the repository. + The ordering direction. """ - milestones( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + direction: OrderDirection! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The field to order saved replies by. + """ + field: SavedReplyOrderField! +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Properties by which saved reply connections can be ordered. +""" +enum SavedReplyOrderField { + """ + Order saved reply by when they were updated. + """ + UPDATED_AT +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +The results of a search. +""" +union SearchResultItem = App | Discussion | Issue | MarketplaceListing | Organization | PullRequest | Repository | User - """ - Ordering options for milestones. - """ - orderBy: MilestoneOrder +""" +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 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. + """ + codeCount: Int! - """ - Filter by the state of the milestones. - """ - states: [MilestoneState!] - ): MilestoneConnection + """ + 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. + """ + discussionCount: Int! """ - The repository's original mirror URL. + A list of edges. """ - mirrorUrl: URI + edges: [SearchResultItemEdge] """ - The name of the repository. + 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. """ - name: String! + issueCount: Int! """ - The repository's name with owner. + A list of nodes. """ - nameWithOwner: String! + nodes: [SearchResultItem] """ - A Git object in the repository + Information to aid in pagination. """ - object( - """ - A Git revision expression suitable for rev-parse - """ - expression: String + pageInfo: PageInfo! - """ - The Git object ID - """ - oid: GitObjectID - ): GitObject + """ + 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. + """ + repositoryCount: Int! """ - The image used to represent this repository in Open Graph data. + 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. """ - openGraphImageUrl: URI! + userCount: Int! """ - The User owner of the repository. + 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. """ - owner: RepositoryOwner! + wikiCount: Int! +} +""" +An edge in a connection. +""" +type SearchResultItemEdge { """ - A list of packages under the owner. + A cursor for use in pagination. """ - packages( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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: SearchResultItem - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Text matches on the result found. + """ + textMatches: [TextMatch] +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Represents the individual results of a search. +""" +enum SearchType { + """ + Returns matching discussions in repositories. + """ + DISCUSSION - """ - Find packages by their names. - """ - names: [String] + """ + Returns results matching issues in repositories. + """ + ISSUE - """ - Ordering of the returned packages. - """ - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + """ + Returns results matching repositories. + """ + REPOSITORY - """ - Filter registry package by type. - """ - packageType: PackageType + """ + Returns results matching users and organizations on GitHub. + """ + USER +} - """ - Find packages in a repository by ID. - """ - repositoryId: ID - ): PackageConnection! +""" +A GitHub Security Advisory +""" +type SecurityAdvisory implements Node { + """ + The classification of the advisory + """ + classification: SecurityAdvisoryClassification! """ - The repository parent, if this is a fork. + The CVSS associated with this advisory """ - parent: Repository + cvss: CVSS! """ - A list of pinned issues for this repository. + CWEs associated with this Advisory """ - pinnedIssues( + cwes( """ Returns the elements in the list that come after the specified cursor. """ @@ -28631,116 +46874,97 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & Returns the last _n_ elements from the list. """ last: Int - ): PinnedIssueConnection @preview(toggledBy: "elektra-preview") + ): CWEConnection! """ - The primary language of the repository's code. + Identifies the primary key from the database. """ - primaryLanguage: Language + databaseId: Int """ - Find project by number. + This is a long plaintext description of the advisory """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + description: String! """ - A list of projects under the owner. + The GitHub Security Advisory ID """ - projects( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + ghsaId: String! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + A list of identifiers for this advisory + """ + identifiers: [SecurityAdvisoryIdentifier!]! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The permalink for the advisory's dependabot alerts page + """ + notificationsPermalink: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The organization that originated the advisory + """ + origin: String! - """ - Ordering options for projects returned from the connection - """ - orderBy: ProjectOrder + """ + The permalink for the advisory + """ + permalink: URI - """ - Query to search projects by, currently only searching by name. - """ - search: String + """ + When the advisory was published + """ + publishedAt: DateTime! - """ - A list of states to filter the projects by. - """ - states: [ProjectState!] - ): ProjectConnection! + """ + A list of references for this advisory + """ + references: [SecurityAdvisoryReference!]! """ - The HTTP path listing the repository's projects + The severity of the advisory """ - projectsResourcePath: URI! + severity: SecurityAdvisorySeverity! """ - The HTTP URL listing the repository's projects + A short plaintext summary of the advisory """ - projectsUrl: URI! + summary: String! """ - Returns a single pull request from the current repository by number. + When the advisory was last updated """ - pullRequest( - """ - The number for the pull request to be returned. - """ - number: Int! - ): PullRequest + updatedAt: DateTime! """ - A list of pull requests that have been opened in the repository. + Vulnerabilities associated with this Advisory """ - pullRequests( + vulnerabilities( """ 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. + A list of advisory classifications to filter vulnerabilities by. """ - first: Int + classifications: [SecurityAdvisoryClassification!] """ - The head ref name to filter the pull requests by. + An ecosystem to filter vulnerabilities by. """ - headRefName: String + ecosystem: SecurityAdvisoryEcosystem """ - A list of label names to filter the pull requests by. + Returns the first _n_ elements from the list. """ - labels: [String!] + first: Int """ Returns the last _n_ elements from the list. @@ -28748,398 +46972,336 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & last: Int """ - Ordering options for pull requests returned from the connection. + Ordering options for the returned topics. """ - orderBy: IssueOrder + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} """ - A list of states to filter the pull requests by. + A package name to filter vulnerabilities by. """ - states: [PullRequestState!] - ): PullRequestConnection! + package: String + + """ + A list of severities to filter vulnerabilities by. + """ + severities: [SecurityAdvisorySeverity!] + ): SecurityVulnerabilityConnection! """ - Identifies when the repository was last pushed to. + When the advisory was withdrawn, if it has been withdrawn """ - pushedAt: DateTime + withdrawnAt: DateTime +} +""" +Classification of the advisory. +""" +enum SecurityAdvisoryClassification { """ - Whether or not rebase-merging is enabled on this repository. + Classification of general advisories. """ - rebaseMergeAllowed: Boolean! + GENERAL """ - Fetch a given ref from the repository + Classification of malware advisories. """ - 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 + MALWARE +} +""" +The connection type for SecurityAdvisory. +""" +type SecurityAdvisoryConnection { """ - Fetch a list of refs from the repository + A list of edges. """ - 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 - - """ - 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 + edges: [SecurityAdvisoryEdge] """ - Lookup a single release given various criteria. + A list of nodes. """ - release( - """ - The name of the Tag the Release was created from - """ - tagName: String! - ): Release + nodes: [SecurityAdvisory] """ - List of releases which are dependent on this repository. + Information to aid in pagination. """ - releases( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 possible ecosystems of a security vulnerability's package. +""" +enum SecurityAdvisoryEcosystem { + """ + GitHub Actions + """ + ACTIONS - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + PHP packages hosted at packagist.org + """ + COMPOSER - """ - Order for connection - """ - orderBy: ReleaseOrder - ): ReleaseConnection! + """ + Erlang/Elixir packages hosted at hex.pm + """ + ERLANG """ - A list of applied repository-topic associations for this repository. + Go modules """ - repositoryTopics( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + GO - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Java artifacts hosted at the Maven central repository + """ + MAVEN - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + JavaScript packages hosted at npmjs.com + """ + NPM - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): RepositoryTopicConnection! + """ + .NET packages hosted at the NuGet Gallery + """ + NUGET """ - The HTTP path for this repository + Python packages hosted at PyPI.org """ - resourcePath: URI! + PIP """ - A description of the repository, rendered to HTML without any links in it. + Dart packages hosted at pub.dev """ - shortDescriptionHTML( - """ - How many characters to return. - """ - limit: Int = 200 - ): HTML! + PUB """ - Whether or not squash-merging is enabled on this repository. + Ruby gems hosted at RubyGems.org """ - squashMergeAllowed: Boolean! + RUBYGEMS """ - The SSH URL to clone this repository + Rust crates """ - sshUrl: GitSSHRemote! + RUST """ - A list of users who have starred this starrable. + Swift packages """ - 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! + SWIFT +} +""" +An edge in a connection. +""" +type SecurityAdvisoryEdge { """ - Returns a list of all submodules in this repository parsed from the - .gitmodules file as of the default branch's HEAD commit. + A cursor for use in pagination. """ - 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! + cursor: String! """ - Temporary authentication token for cloning this repository. + The item at the end of the edge. """ - tempCloneToken: String + node: SecurityAdvisory +} +""" +A GitHub Security Advisory Identifier +""" +type SecurityAdvisoryIdentifier { """ - The repository from which this repository was generated, if any. + The identifier type, e.g. GHSA, CVE """ - templateRepository: Repository + type: String! """ - Identifies the date and time when the object was last updated. + The identifier """ - updatedAt: DateTime! + value: String! +} +""" +An advisory identifier to filter results on. +""" +input SecurityAdvisoryIdentifierFilter { """ - The HTTP URL for this repository + The identifier type. """ - url: URI! + type: SecurityAdvisoryIdentifierType! """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + The identifier string. Supports exact or partial matching. """ - usesCustomOpenGraphImage: Boolean! + value: String! +} +""" +Identifier formats available for advisories. +""" +enum SecurityAdvisoryIdentifierType { """ - Indicates whether the viewer has admin permissions on this repository. + Common Vulnerabilities and Exposures Identifier. """ - viewerCanAdminister: Boolean! + CVE """ - Can the current viewer create new projects on this owner. + GitHub Security Advisory ID. """ - viewerCanCreateProjects: Boolean! + GHSA +} +""" +Ordering options for security advisory connections +""" +input SecurityAdvisoryOrder { """ - Check if the viewer is able to change their subscription status for the repository. + The ordering direction. """ - viewerCanSubscribe: Boolean! + direction: OrderDirection! """ - Indicates whether the viewer can update the topics of this repository. + The field to order security advisories by. """ - viewerCanUpdateTopics: Boolean! + field: SecurityAdvisoryOrderField! +} +""" +Properties by which security advisory connections can be ordered. +""" +enum SecurityAdvisoryOrderField { """ - Returns a boolean indicating whether the viewing user has starred this starrable. + Order advisories by publication time """ - viewerHasStarred: Boolean! + PUBLISHED_AT """ - The users permission level on the repository. Will return null if authenticated as an GitHub App. + Order advisories by update time """ - viewerPermission: RepositoryPermission + UPDATED_AT +} +""" +An individual package +""" +type SecurityAdvisoryPackage { """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + The ecosystem the package belongs to, e.g. RUBYGEMS, NPM """ - viewerSubscription: SubscriptionState + ecosystem: SecurityAdvisoryEcosystem! """ - A list of vulnerability alerts that are on this repository. + The package name """ - 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 + name: String! +} +""" +An individual package version +""" +type SecurityAdvisoryPackageVersion { """ - A list of users watching the repository. + The package name or version """ - 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 + identifier: String! +} - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! +""" +A GitHub Security Advisory Reference +""" +type SecurityAdvisoryReference { + """ + A publicly accessible reference + """ + url: URI! } """ -The affiliation of a user to a repository +Severity of the vulnerability. """ -enum RepositoryAffiliation { +enum SecurityAdvisorySeverity { """ - Repositories that the user has been added to as a collaborator. + Critical. """ - COLLABORATOR + CRITICAL """ - 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. + High. """ - ORGANIZATION_MEMBER + HIGH """ - Repositories that are owned by the authenticated user. + Low. """ - OWNER + LOW + + """ + Moderate. + """ + MODERATE } """ -Metadata for an audit entry with action repo.* +An individual vulnerability within an Advisory """ -interface RepositoryAuditEntryData { +type SecurityVulnerability { """ - The repository associated with the action + The Advisory associated with this Vulnerability """ - repository: Repository + advisory: SecurityAdvisory! """ - The name of the repository + The first version containing a fix for the vulnerability """ - repositoryName: String + firstPatchedVersion: SecurityAdvisoryPackageVersion """ - The HTTP path for the repository + A description of the vulnerable package """ - repositoryResourcePath: URI + package: SecurityAdvisoryPackage! """ - The HTTP URL for the repository + The severity of the vulnerability within this package """ - repositoryUrl: URI + severity: SecurityAdvisorySeverity! + + """ + When the vulnerability was last updated + """ + updatedAt: DateTime! + + """ + 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 + """ + vulnerableVersionRange: String! } """ -The connection type for User. +The connection type for SecurityVulnerability. """ -type RepositoryCollaboratorConnection { +type SecurityVulnerabilityConnection { """ A list of edges. """ - edges: [RepositoryCollaboratorEdge] + edges: [SecurityVulnerabilityEdge] """ A list of nodes. """ - nodes: [User] + nodes: [SecurityVulnerability] """ Information to aid in pagination. @@ -29153,298 +47315,394 @@ type RepositoryCollaboratorConnection { } """ -Represents a user who is a collaborator of a repository. +An edge in a connection. """ -type RepositoryCollaboratorEdge { +type SecurityVulnerabilityEdge { """ A cursor for use in pagination. """ cursor: String! - node: User! """ - The permission the user has on the repository. + The item at the end of the edge. + """ + node: SecurityVulnerability +} - **Upcoming Change on 2020-10-01 UTC** - **Description:** Type for `permission` will change from `RepositoryPermission!` to `String`. - **Reason:** This field may return additional values +""" +Ordering options for security vulnerability connections +""" +input SecurityVulnerabilityOrder { """ - permission: RepositoryPermission! + The ordering direction. + """ + direction: OrderDirection! """ - A list of sources for the user's access to the repository. + The field to order security vulnerabilities by. """ - permissionSources: [PermissionSource!] + field: SecurityVulnerabilityOrderField! } """ -A list of repositories owned by the subject. +Properties by which security vulnerability connections can be ordered. """ -type RepositoryConnection { +enum SecurityVulnerabilityOrderField { """ - A list of edges. + Order vulnerability by update time """ - edges: [RepositoryEdge] + UPDATED_AT +} +""" +Autogenerated input type of SetEnterpriseIdentityProvider +""" +input SetEnterpriseIdentityProviderInput { """ - A list of nodes. + A unique identifier for the client performing the mutation. """ - nodes: [Repository] + clientMutationId: String """ - Information to aid in pagination. + The digest algorithm used to sign SAML requests for the identity provider. """ - pageInfo: PageInfo! + digestMethod: SamlDigestAlgorithm! """ - Identifies the total count of items in the connection. + The ID of the enterprise on which to set an identity provider. """ - totalCount: Int! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The total size in kilobytes of all repositories in the connection. + The x509 certificate used by the identity provider to sign assertions and responses. """ - totalDiskUsage: Int! + idpCertificate: String! + + """ + The Issuer Entity ID for the SAML identity provider + """ + issuer: 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 reason a repository is listed as 'contributed'. +Autogenerated return type of SetEnterpriseIdentityProvider """ -enum RepositoryContributionType { +type SetEnterpriseIdentityProviderPayload { """ - Created a commit + A unique identifier for the client performing the mutation. """ - COMMIT + clientMutationId: String """ - Created an issue + The identity provider for the enterprise. """ - ISSUE + identityProvider: EnterpriseIdentityProvider +} +""" +Autogenerated input type of SetOrganizationInteractionLimit +""" +input SetOrganizationInteractionLimitInput { """ - Created a pull request + A unique identifier for the client performing the mutation. """ - PULL_REQUEST + clientMutationId: String """ - Reviewed a pull request + When this limit should expire. """ - PULL_REQUEST_REVIEW + expiry: RepositoryInteractionLimitExpiry """ - Created the repository + The limit to set. """ - REPOSITORY + limit: RepositoryInteractionLimit! + + """ + The ID of the organization to set a limit for. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) } """ -An edge in a connection. +Autogenerated return type of SetOrganizationInteractionLimit """ -type RepositoryEdge { +type SetOrganizationInteractionLimitPayload { """ - 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 organization that the interaction limit was set for. """ - node: Repository + organization: Organization } """ -A subset of repository info. +Autogenerated input type of SetRepositoryInteractionLimit """ -interface RepositoryInfo { +input SetRepositoryInteractionLimitInput { """ - Identifies the date and time when the object was created. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime! + clientMutationId: String """ - The description of the repository. + When this limit should expire. """ - description: String + expiry: RepositoryInteractionLimitExpiry """ - The description of the repository rendered to HTML. + The limit to set. """ - descriptionHTML: HTML! + limit: RepositoryInteractionLimit! """ - Returns how many forks there are of this repository in the whole network. + The ID of the repository to set a limit for. """ - forkCount: Int! + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} +""" +Autogenerated return type of SetRepositoryInteractionLimit +""" +type SetRepositoryInteractionLimitPayload { """ - Indicates if the repository has issues feature enabled. + A unique identifier for the client performing the mutation. """ - hasIssuesEnabled: Boolean! + clientMutationId: String """ - Indicates if the repository has the Projects feature enabled. + The repository that the interaction limit was set for. """ - hasProjectsEnabled: Boolean! + repository: Repository +} +""" +Autogenerated input type of SetUserInteractionLimit +""" +input SetUserInteractionLimitInput { """ - Indicates if the repository has wiki feature enabled. + A unique identifier for the client performing the mutation. """ - hasWikiEnabled: Boolean! + clientMutationId: String """ - The repository's URL. + When this limit should expire. """ - homepageUrl: URI + expiry: RepositoryInteractionLimitExpiry """ - Indicates if the repository is unmaintained. + The limit to set. """ - isArchived: Boolean! + limit: RepositoryInteractionLimit! """ - Identifies if the repository is a fork. + The ID of the user to set a limit for. """ - isFork: Boolean! + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of SetUserInteractionLimit +""" +type SetUserInteractionLimitPayload { """ - Indicates if the repository has been locked or not. + A unique identifier for the client performing the mutation. """ - isLocked: Boolean! + clientMutationId: String """ - Identifies if the repository is a mirror. + The user that the interaction limit was set for. """ - isMirror: Boolean! + user: User +} +""" +Represents an S/MIME signature on a Commit or Tag. +""" +type SmimeSignature implements GitSignature { """ - Identifies if the repository is private. + Email used to sign this object. """ - isPrivate: Boolean! + email: String! """ - Identifies if the repository is a template that can be used to generate new repositories. + True if the signature is valid and verified by GitHub. """ - isTemplate: Boolean! + isValid: Boolean! """ - The license associated with the repository + Payload for GPG signing object. Raw ODB object without the signature header. """ - licenseInfo: License + payload: String! """ - The reason the repository has been locked. + ASCII-armored signature header from object. """ - lockReason: RepositoryLockReason + signature: String! """ - The repository's original mirror URL. + GitHub user corresponding to the email signing this commit. """ - mirrorUrl: URI + signer: User """ - The name of the repository. + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. """ - name: String! + state: GitSignatureState! """ - The repository's name with owner. + True if the signature was made with GitHub's signing key. """ - nameWithOwner: String! + wasSignedByGitHub: Boolean! +} +""" +Social media profile associated with a user. +""" +type SocialAccount { """ - The image used to represent this repository in Open Graph data. + Name of the social media account as it appears on the profile. """ - openGraphImageUrl: URI! + displayName: String! """ - The User owner of the repository. + Software or company that hosts the social media account. """ - owner: RepositoryOwner! + provider: SocialAccountProvider! """ - Identifies when the repository was last pushed to. + URL of the social media account. """ - pushedAt: DateTime + url: URI! +} +""" +The connection type for SocialAccount. +""" +type SocialAccountConnection { """ - The HTTP path for this repository + A list of edges. """ - resourcePath: URI! + edges: [SocialAccountEdge] """ - A description of the repository, rendered to HTML without any links in it. + A list of nodes. """ - shortDescriptionHTML( - """ - How many characters to return. - """ - limit: Int = 200 - ): HTML! + nodes: [SocialAccount] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type SocialAccountEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: SocialAccount +} + +""" +Software or company that hosts social media accounts. +""" +enum SocialAccountProvider { + """ + Social media and networking website. + """ + FACEBOOK """ - Identifies the date and time when the object was last updated. + Catch-all for social media providers that do not yet have specific handling. """ - updatedAt: DateTime! + GENERIC """ - The HTTP URL for this repository + Fork of Mastodon with a greater focus on local posting. """ - url: URI! + HOMETOWN """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + Social media website with a focus on photo and video sharing. """ - usesCustomOpenGraphImage: Boolean! -} + INSTAGRAM -""" -An invitation for a user to be added to a repository. -""" -type RepositoryInvitation implements Node { """ - The email address that received the invitation. + Professional networking website. """ - email: String - id: ID! + LINKEDIN """ - The user who received the invitation. + Open-source federated microblogging service. """ - invitee: User + MASTODON """ - The user who created the invitation. + Social news aggregation and discussion website. """ - inviter: User! + REDDIT """ - The permission granted on this repository by this invitation. + Live-streaming service. + """ + TWITCH - **Upcoming Change on 2020-10-01 UTC** - **Description:** Type for `permission` will change from `RepositoryPermission!` to `String`. - **Reason:** This field may return additional values """ - permission: RepositoryPermission! + Microblogging website. + """ + TWITTER """ - The Repository the user is invited to. + Online video platform. """ - repository: RepositoryInfo + YOUTUBE } """ -The connection type for RepositoryInvitation. +Entities that can sponsor others via GitHub Sponsors """ -type RepositoryInvitationConnection { +union Sponsor = Organization | User + +""" +The connection type for Sponsor. +""" +type SponsorConnection { """ A list of edges. """ - edges: [RepositoryInvitationEdge] + edges: [SponsorEdge] """ A list of nodes. """ - nodes: [RepositoryInvitation] + nodes: [Sponsor] """ Information to aid in pagination. @@ -29458,9 +47716,9 @@ type RepositoryInvitationConnection { } """ -An edge in a connection. +Represents a user or organization who is sponsoring someone in GitHub Sponsors. """ -type RepositoryInvitationEdge { +type SponsorEdge { """ A cursor for use in pagination. """ @@ -29469,149 +47727,269 @@ type RepositoryInvitationEdge { """ The item at the end of the edge. """ - node: RepositoryInvitation + node: Sponsor } """ -Ordering options for repository invitation connections. +Ordering options for connections to get sponsor entities for GitHub Sponsors. """ -input RepositoryInvitationOrder { +input SponsorOrder { """ The ordering direction. """ direction: OrderDirection! """ - The field to order repository invitations by. + The field to order sponsor entities by. """ - field: RepositoryInvitationOrderField! + field: SponsorOrderField! } """ -Properties by which repository invitation connections can be ordered. +Properties by which sponsor connections can be ordered. """ -enum RepositoryInvitationOrderField { +enum SponsorOrderField { """ - Order repository invitations by creation time + Order sponsorable entities by login (username). """ - CREATED_AT + LOGIN """ - Order repository invitations by invitee login + Order sponsors by their relevance to the viewer. """ - INVITEE_LOGIN @deprecated(reason: "`INVITEE_LOGIN` is no longer a valid field value. Repository invitations can now be associated with an email, not only an invitee. Removal on 2020-10-01 UTC.") + RELEVANCE } """ -The possible reasons a given repository could be in a locked state. +Entities that can sponsor or be sponsored through GitHub Sponsors. """ -enum RepositoryLockReason { +interface Sponsorable { """ - The repository is locked due to a billing related reason. + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). """ - BILLING + estimatedNextSponsorsPayoutInCents: Int! """ - The repository is locked due to a migration. + True if this user/organization has a GitHub Sponsors listing. """ - MIGRATING + hasSponsorsListing: Boolean! """ - The repository is locked due to a move. + Whether the given account is sponsoring this user/organization. """ - MOVING + isSponsoredBy( + """ + The target account's login. + """ + accountLogin: String! + ): Boolean! """ - The repository is locked due to a rename. + True if the viewer is sponsored by this user/organization. """ - RENAME -} + isSponsoringViewer: Boolean! -""" -Represents a object that belongs to a repository. -""" -interface RepositoryNode { """ - The repository associated with this node. + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). """ - repository: Repository! -} + monthlyEstimatedSponsorsIncomeInCents: Int! -""" -Ordering options for repository connections -""" -input RepositoryOrder { """ - The ordering direction. + List of users and organizations this entity is sponsoring. """ - direction: OrderDirection! + sponsoring( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The field to order repositories by. - """ - field: RepositoryOrderField! -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Properties by which repository connections can be ordered. -""" -enum RepositoryOrderField { - """ - Order repositories by creation time - """ - CREATED_AT + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the users and organizations returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! """ - Order repositories by name + List of sponsors for this user or organization. """ - NAME + sponsors( + """ + 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 sponsors returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + + """ + 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! """ - Order repositories by push time + Events involving this sponsorable, such as new sponsorships. """ - PUSHED_AT + sponsorsActivities( + """ + Filter activities to only the specified actions. + """ + actions: [SponsorsActivityAction!] = [] + + """ + 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 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 + + """ + Whether or not to include private activities in the result set. Defaults to including public and private activities. + """ + includePrivate: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for activity returned from the connection. + """ + 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! """ - Order repositories by number of stargazers + The GitHub Sponsors listing for this user or organization. """ - STARGAZERS + sponsorsListing: SponsorsListing """ - Order repositories by update time + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - UPDATED_AT -} + 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 -""" -Represents an owner of a Repository. -""" -interface RepositoryOwner { """ - A URL pointing to the owner's public avatar. + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - avatarUrl( + sponsorshipForViewerAsSponsorable( """ - The size of the resulting square image. + Whether to return the sponsorship only if it's still active. Pass false to + get the sponsorship back even if it has been cancelled. """ - size: Int - ): URI! - id: ID! + activeOnly: Boolean = true + ): Sponsorship """ - The username used to login. + List of sponsorship updates sent from this sponsorable to sponsors. """ - login: String! + sponsorshipNewsletters( + """ + 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 sponsorship updates returned from the connection. + """ + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - A list of repositories that the user owns. + The sponsorships where this user or organization is the maintainer receiving the funds. """ - repositories( + sponsorshipsAsMaintainer( """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. """ - affiliations: [RepositoryAffiliation] + activeOnly: Boolean = true """ Returns the elements in the list that come after the specified cursor. @@ -29629,140 +48007,262 @@ interface RepositoryOwner { first: Int """ - If non-null, filters repositories according to whether they are forks of another repository + Whether or not to include private sponsorships in the result set """ - isFork: Boolean + includePrivate: Boolean = false """ - If non-null, filters repositories according to whether they have been locked + Returns the last _n_ elements from the list. """ - isLocked: Boolean + last: Int """ - 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 sponsorships where this user or organization is the funder. + """ + sponsorshipsAsSponsor( """ - Ordering options for repositories returned from the connection + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. """ - orderBy: RepositoryOrder + activeOnly: Boolean = true """ - 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. + Returns the elements in the list that come after the specified cursor. """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + after: String """ - If non-null, filters repositories according to privacy + Returns the elements in the list that come before the specified cursor. """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + 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! """ - Find Repository. + 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. """ - repository( + totalSponsorshipAmountAsSponsorInCents( """ - Name of Repository to find. + Filter payments to those that occurred on or after this time. """ - name: String! - ): Repository + 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 HTTP URL for the owner. + Whether or not the viewer is able to sponsor this user/organization. """ - resourcePath: URI! + viewerCanSponsor: Boolean! """ - The HTTP URL for the owner. + True if the viewer is sponsoring this user/organization. """ - url: URI! + viewerIsSponsoring: Boolean! } """ -The access level to a repository +Entities that can be sponsored via GitHub Sponsors """ -enum RepositoryPermission { +union SponsorableItem = Organization | User + +""" +The connection type for SponsorableItem. +""" +type SponsorableItemConnection { """ - Can read, clone, and push to this repository. Can also manage issues, pull - requests, and repository settings, including adding collaborators + A list of edges. """ - ADMIN + edges: [SponsorableItemEdge] """ - Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings + A list of nodes. """ - MAINTAIN + nodes: [SponsorableItem] """ - Can read and clone this repository. Can also open and comment on issues and pull requests + Information to aid in pagination. """ - READ + pageInfo: PageInfo! """ - Can read and clone this repository. Can also manage issues and pull requests + Identifies the total count of items in the connection. """ - TRIAGE + totalCount: Int! +} +""" +An edge in a connection. +""" +type SponsorableItemEdge { """ - Can read, clone, and push to this repository. Can also manage issues and pull requests + A cursor for use in pagination. """ - WRITE + cursor: String! + + """ + The item at the end of the edge. + """ + node: SponsorableItem } """ -The privacy of a repository +Ordering options for connections to get sponsorable entities for GitHub Sponsors. """ -enum RepositoryPrivacy { +input SponsorableOrder { """ - Private + The ordering direction. """ - PRIVATE + direction: OrderDirection! """ - Public + The field to order sponsorable entities by. """ - PUBLIC + field: SponsorableOrderField! } """ -A repository-topic connects a repository to a topic. +Properties by which sponsorable connections can be ordered. """ -type RepositoryTopic implements Node & UniformResourceLocatable { +enum SponsorableOrderField { + """ + Order sponsorable entities by login (username). + """ + LOGIN +} + +""" +An event related to sponsorship activity. +""" +type SponsorsActivity implements Node { + """ + What action this activity indicates took place. + """ + action: SponsorsActivityAction! + + """ + The sponsor's current privacy level. + """ + currentPrivacyLevel: SponsorshipPrivacy id: ID! """ - The HTTP path for this repository-topic. + The tier that the sponsorship used to use, for tier change events. """ - resourcePath: URI! + previousSponsorsTier: SponsorsTier """ - The topic. + The user or organization who triggered this activity and was/is sponsoring the sponsorable. """ - topic: Topic! + sponsor: Sponsor """ - The HTTP URL for this repository-topic. + The user or organization that is being sponsored, the maintainer. """ - url: URI! + sponsorable: Sponsorable! + + """ + The associated sponsorship tier. + """ + sponsorsTier: SponsorsTier + + """ + The timestamp of this event. + """ + timestamp: DateTime + + """ + Was this sponsorship made alongside other sponsorships at the same time from the same sponsor? + """ + viaBulkSponsorship: Boolean! } """ -The connection type for RepositoryTopic. +The possible actions that GitHub Sponsors activities can represent. """ -type RepositoryTopicConnection { +enum SponsorsActivityAction { + """ + The activity was cancelling a sponsorship. + """ + CANCELLED_SPONSORSHIP + + """ + The activity was starting a sponsorship. + """ + NEW_SPONSORSHIP + + """ + The activity was scheduling a downgrade or cancellation. + """ + PENDING_CHANGE + + """ + The activity was funds being refunded to the sponsor or GitHub. + """ + REFUND + + """ + The activity was disabling matching for a previously matched sponsorship. + """ + SPONSOR_MATCH_DISABLED + + """ + 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 edges. """ - edges: [RepositoryTopicEdge] + edges: [SponsorsActivityEdge] """ A list of nodes. """ - nodes: [RepositoryTopic] + nodes: [SponsorsActivity] """ Information to aid in pagination. @@ -29778,7 +48278,7 @@ type RepositoryTopicConnection { """ An edge in a connection. """ -type RepositoryTopicEdge { +type SponsorsActivityEdge { """ A cursor for use in pagination. """ @@ -29787,1619 +48287,1400 @@ type RepositoryTopicEdge { """ The item at the end of the edge. """ - node: RepositoryTopic + node: SponsorsActivity } """ -The repository's visibility level. +Ordering options for GitHub Sponsors activity connections. """ -enum RepositoryVisibility { +input SponsorsActivityOrder { """ - The repository is visible only to users in the same business. + The ordering direction. """ - INTERNAL + direction: OrderDirection! """ - The repository is visible only to those with explicit access. + The field to order activity by. """ - PRIVATE + field: SponsorsActivityOrderField! +} +""" +Properties by which GitHub Sponsors activity connections can be ordered. +""" +enum SponsorsActivityOrderField { """ - The repository is visible to everyone. + Order activities by when they happened. """ - PUBLIC + TIMESTAMP } """ -Audit log entry for a repository_visibility_change.disable event. +The possible time periods for which Sponsors activities can be requested. """ -type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +enum SponsorsActivityPeriod { """ - The action name + Don't restrict the activity to any date range, include all activity. """ - action: String! + ALL """ - The user who initiated the action + The previous calendar day. """ - actor: AuditEntryActor + DAY """ - The IP address of the actor + The previous thirty days. """ - actorIp: String + MONTH """ - A readable representation of the actor's location + The previous seven days. """ - actorLocation: ActorLocation + WEEK +} + +""" +Represents countries or regions for billing and residence for a GitHub Sponsors profile. +""" +enum SponsorsCountryOrRegionCode { + """ + Andorra + """ + AD """ - The username of the user who initiated the action + United Arab Emirates """ - actorLogin: String + AE """ - The HTTP path for the actor. + Afghanistan """ - actorResourcePath: URI + AF """ - The HTTP URL for the actor. + Antigua and Barbuda """ - actorUrl: URI + AG """ - The time the action was initiated + Anguilla """ - createdAt: PreciseDateTime! + AI """ - The HTTP path for this enterprise. + Albania """ - enterpriseResourcePath: URI + AL """ - The slug of the enterprise. + Armenia """ - enterpriseSlug: String + AM """ - The HTTP URL for this enterprise. + Angola """ - enterpriseUrl: URI - id: ID! + AO """ - The corresponding operation type for the action + Antarctica """ - operationType: OperationType + AQ """ - The Organization associated with the Audit Entry. + Argentina """ - organization: Organization + AR """ - The name of the Organization. + American Samoa """ - organizationName: String + AS """ - The HTTP path for the organization + Austria """ - organizationResourcePath: URI + AT """ - The HTTP URL for the organization + Australia """ - organizationUrl: URI + AU """ - The user affected by the action + Aruba """ - user: User + AW + + """ + Åland + """ + AX + + """ + Azerbaijan + """ + AZ + + """ + Bosnia and Herzegovina + """ + BA + + """ + Barbados + """ + BB + + """ + Bangladesh + """ + BD + + """ + Belgium + """ + BE + + """ + Burkina Faso + """ + BF + + """ + Bulgaria + """ + BG + + """ + Bahrain + """ + BH + + """ + Burundi + """ + BI + + """ + Benin + """ + BJ + + """ + Saint Barthélemy + """ + BL + + """ + Bermuda + """ + BM + + """ + Brunei Darussalam + """ + BN + + """ + Bolivia + """ + BO + + """ + Bonaire, Sint Eustatius and Saba + """ + BQ + + """ + Brazil + """ + BR + + """ + Bahamas + """ + BS + + """ + Bhutan + """ + BT + + """ + Bouvet Island + """ + BV + + """ + Botswana + """ + BW + + """ + Belarus + """ + BY """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Belize """ - userLogin: String + BZ """ - The HTTP path for the user. + Canada """ - userResourcePath: URI + CA """ - The HTTP URL for the user. + Cocos (Keeling) Islands """ - userUrl: URI -} + CC -""" -Audit log entry for a repository_visibility_change.enable event. -""" -type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - The action name + Congo (Kinshasa) """ - action: String! + CD """ - The user who initiated the action + Central African Republic """ - actor: AuditEntryActor + CF """ - The IP address of the actor + Congo (Brazzaville) """ - actorIp: String + CG """ - A readable representation of the actor's location + Switzerland """ - actorLocation: ActorLocation + CH """ - The username of the user who initiated the action + Côte d'Ivoire """ - actorLogin: String + CI """ - The HTTP path for the actor. + Cook Islands """ - actorResourcePath: URI + CK """ - The HTTP URL for the actor. + Chile """ - actorUrl: URI + CL """ - The time the action was initiated + Cameroon """ - createdAt: PreciseDateTime! + CM """ - The HTTP path for this enterprise. + China """ - enterpriseResourcePath: URI + CN """ - The slug of the enterprise. + Colombia """ - enterpriseSlug: String + CO """ - The HTTP URL for this enterprise. + Costa Rica """ - enterpriseUrl: URI - id: ID! + CR """ - The corresponding operation type for the action + Cape Verde """ - operationType: OperationType + CV """ - The Organization associated with the Audit Entry. + Curaçao """ - organization: Organization + CW """ - The name of the Organization. + Christmas Island """ - organizationName: String + CX """ - The HTTP path for the organization + Cyprus """ - organizationResourcePath: URI + CY """ - The HTTP URL for the organization + Czech Republic """ - organizationUrl: URI + CZ """ - The user affected by the action + Germany """ - user: User + DE """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Djibouti """ - userLogin: String + DJ """ - The HTTP path for the user. + Denmark """ - userResourcePath: URI + DK """ - The HTTP URL for the user. + Dominica """ - userUrl: URI -} + DM -""" -A alert for a repository with an affected vulnerability. -""" -type RepositoryVulnerabilityAlert implements Node & RepositoryNode { """ - When was the alert created? + Dominican Republic """ - createdAt: DateTime! + DO """ - The reason the alert was dismissed + Algeria """ - dismissReason: String + DZ """ - When was the alert dimissed? + Ecuador """ - dismissedAt: DateTime + EC """ - The user who dismissed the alert + Estonia """ - dismisser: User - id: ID! + EE """ - The associated repository + Egypt """ - repository: Repository! + EG """ - The associated security advisory + Western Sahara """ - securityAdvisory: SecurityAdvisory + EH """ - The associated security vulnerablity + Eritrea """ - securityVulnerability: SecurityVulnerability + ER """ - The vulnerable manifest filename + Spain """ - vulnerableManifestFilename: String! + ES """ - The vulnerable manifest path + Ethiopia """ - vulnerableManifestPath: String! + ET """ - The vulnerable requirements + Finland """ - vulnerableRequirements: String -} + FI -""" -The connection type for RepositoryVulnerabilityAlert. -""" -type RepositoryVulnerabilityAlertConnection { """ - A list of edges. + Fiji """ - edges: [RepositoryVulnerabilityAlertEdge] + FJ """ - A list of nodes. + Falkland Islands """ - nodes: [RepositoryVulnerabilityAlert] + FK """ - Information to aid in pagination. + Micronesia """ - pageInfo: PageInfo! + FM """ - Identifies the total count of items in the connection. + Faroe Islands """ - totalCount: Int! -} + FO -""" -An edge in a connection. -""" -type RepositoryVulnerabilityAlertEdge { """ - A cursor for use in pagination. + France """ - cursor: String! + FR """ - The item at the end of the edge. + Gabon """ - node: RepositoryVulnerabilityAlert -} + GA -""" -Autogenerated input type of RequestReviews -""" -input RequestReviewsInput { """ - A unique identifier for the client performing the mutation. + United Kingdom """ - clientMutationId: String + GB """ - The Node ID of the pull request to modify. + Grenada """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + GD """ - The Node IDs of the team to request. + Georgia """ - teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"]) + GE """ - Add users to the set rather than replace. + French Guiana """ - union: Boolean + GF """ - The Node IDs of the user to request. + Guernsey """ - userIds: [ID!] @possibleTypes(concreteTypes: ["User"]) -} + GG -""" -Autogenerated return type of RequestReviews -""" -type RequestReviewsPayload { """ - Identifies the actor who performed the event. + Ghana """ - actor: Actor + GH """ - A unique identifier for the client performing the mutation. + Gibraltar """ - clientMutationId: String + GI """ - The pull request that is getting requests. + Greenland """ - pullRequest: PullRequest + GL """ - The edge from the pull request to the requested reviewers. + Gambia """ - requestedReviewersEdge: UserEdge -} + GM -""" -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. + Guinea """ - COMPLETED + GN """ - The check suite or run is in progress. + Guadeloupe """ - IN_PROGRESS + GP """ - The check suite or run has been queued. + Equatorial Guinea """ - QUEUED -} - -""" -Types that can be requested reviewers. -""" -union RequestedReviewer = Mannequin | Team | User + GQ -""" -Autogenerated input type of RerequestCheckSuite -""" -input RerequestCheckSuiteInput @preview(toggledBy: "antiope-preview") { """ - The Node ID of the check suite. + Greece """ - checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"]) + GR """ - A unique identifier for the client performing the mutation. + South Georgia and South Sandwich Islands """ - clientMutationId: String + GS """ - The Node ID of the repository. + Guatemala """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) -} + GT -""" -Autogenerated return type of RerequestCheckSuite -""" -type RerequestCheckSuitePayload @preview(toggledBy: "antiope-preview") { """ - The requested check suite. + Guam """ - checkSuite: CheckSuite + GU """ - A unique identifier for the client performing the mutation. + Guinea-Bissau """ - clientMutationId: String -} + GW -""" -Autogenerated input type of ResolveReviewThread -""" -input ResolveReviewThreadInput { """ - A unique identifier for the client performing the mutation. + Guyana """ - clientMutationId: String + GY """ - The ID of the thread to resolve + Hong Kong """ - threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) -} + HK -""" -Autogenerated return type of ResolveReviewThread -""" -type ResolveReviewThreadPayload { """ - A unique identifier for the client performing the mutation. + Heard and McDonald Islands """ - clientMutationId: String + HM """ - The thread to resolve. + Honduras """ - thread: PullRequestReviewThread -} + HN -""" -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. + Croatia """ - isRestricted: Boolean! + HR """ - When this contribution was made. + Haiti """ - occurredAt: DateTime! + HT """ - The HTTP path for this contribution. + Hungary """ - resourcePath: URI! + HU """ - The HTTP URL for this contribution. + Indonesia """ - url: URI! + ID """ - The user who made this contribution. + Ireland """ - user: User! -} + IE -""" -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. + Israel """ - actor: ReviewDismissalAllowanceActor + IL """ - Identifies the branch protection rule associated with the allowed user or team. + Isle of Man """ - branchProtectionRule: BranchProtectionRule - id: ID! -} + IM -""" -Types that can be an actor. -""" -union ReviewDismissalAllowanceActor = Team | User - -""" -The connection type for ReviewDismissalAllowance. -""" -type ReviewDismissalAllowanceConnection { """ - A list of edges. + India """ - edges: [ReviewDismissalAllowanceEdge] + IN """ - A list of nodes. + British Indian Ocean Territory """ - nodes: [ReviewDismissalAllowance] + IO """ - Information to aid in pagination. + Iraq """ - pageInfo: PageInfo! + IQ """ - Identifies the total count of items in the connection. + Iran """ - totalCount: Int! -} + IR -""" -An edge in a connection. -""" -type ReviewDismissalAllowanceEdge { """ - A cursor for use in pagination. + Iceland """ - cursor: String! + IS """ - The item at the end of the edge. + Italy """ - node: ReviewDismissalAllowance -} + IT -""" -Represents a 'review_dismissed' event on a given issue or pull request. -""" -type ReviewDismissedEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + Jersey """ - actor: Actor + JE """ - Identifies the date and time when the object was created. + Jamaica """ - createdAt: DateTime! + JM """ - Identifies the primary key from the database. + Jordan """ - databaseId: Int + JO """ - Identifies the optional message associated with the 'review_dismissed' event. + Japan """ - dismissalMessage: String + JP """ - Identifies the optional message associated with the event, rendered to HTML. + Kenya """ - dismissalMessageHTML: String - id: ID! + KE """ - Identifies the previous state of the review with the 'review_dismissed' event. + Kyrgyzstan """ - previousReviewState: PullRequestReviewState! + KG """ - PullRequest referenced by event. + Cambodia """ - pullRequest: PullRequest! + KH """ - Identifies the commit which caused the review to become stale. + Kiribati """ - pullRequestCommit: PullRequestCommit + KI """ - The HTTP path for this review dismissed event. + Comoros """ - resourcePath: URI! + KM """ - Identifies the review associated with the 'review_dismissed' event. + Saint Kitts and Nevis """ - review: PullRequestReview + KN """ - The HTTP URL for this review dismissed event. + Korea, South """ - url: URI! -} + KR -""" -A request for a user to review a pull request. -""" -type ReviewRequest implements Node { """ - Identifies the primary key from the database. + Kuwait """ - databaseId: Int - id: ID! + KW """ - Identifies the pull request associated with this review request. + Cayman Islands """ - pullRequest: PullRequest! + KY """ - The reviewer that is requested. + Kazakhstan """ - requestedReviewer: RequestedReviewer -} + KZ -""" -The connection type for ReviewRequest. -""" -type ReviewRequestConnection { """ - A list of edges. + Laos """ - edges: [ReviewRequestEdge] + LA """ - A list of nodes. + Lebanon """ - nodes: [ReviewRequest] + LB """ - Information to aid in pagination. + Saint Lucia """ - pageInfo: PageInfo! + LC """ - Identifies the total count of items in the connection. + Liechtenstein """ - totalCount: Int! -} + LI -""" -An edge in a connection. -""" -type ReviewRequestEdge { """ - A cursor for use in pagination. + Sri Lanka """ - cursor: String! + LK """ - The item at the end of the edge. + Liberia """ - node: ReviewRequest -} + LR -""" -Represents an 'review_request_removed' event on a given pull request. -""" -type ReviewRequestRemovedEvent implements Node { """ - Identifies the actor who performed the event. + Lesotho """ - actor: Actor + LS """ - Identifies the date and time when the object was created. + Lithuania """ - createdAt: DateTime! - id: ID! + LT """ - PullRequest referenced by event. + Luxembourg """ - pullRequest: PullRequest! + LU """ - Identifies the reviewer whose review request was removed. + Latvia """ - requestedReviewer: RequestedReviewer -} + LV -""" -Represents an 'review_requested' event on a given pull request. -""" -type ReviewRequestedEvent implements Node { """ - Identifies the actor who performed the event. + Libya """ - actor: Actor + LY """ - Identifies the date and time when the object was created. + Morocco """ - createdAt: DateTime! - id: ID! + MA """ - PullRequest referenced by event. + Monaco """ - pullRequest: PullRequest! + MC """ - Identifies the reviewer whose review was requested. + Moldova """ - requestedReviewer: RequestedReviewer -} + MD -""" -A hovercard context with a message describing the current code review state of the pull -request. -""" -type ReviewStatusHovercardContext implements HovercardContext { """ - A string describing this context + Montenegro """ - message: String! + ME """ - An octicon to accompany this context + Saint Martin (French part) """ - octicon: String! + MF """ - The current status of the pull request with respect to code review. + Madagascar """ - reviewDecision: PullRequestReviewDecision -} + MG -""" -The possible digest algorithms used to sign SAML requests for an identity provider. -""" -enum SamlDigestAlgorithm { """ - SHA1 + Marshall Islands """ - SHA1 + MH """ - SHA256 + Macedonia """ - SHA256 + MK """ - SHA384 + Mali """ - SHA384 + ML """ - SHA512 + Myanmar """ - SHA512 -} + MM -""" -The possible signature algorithms used to sign SAML requests for a Identity Provider. -""" -enum SamlSignatureAlgorithm { """ - RSA-SHA1 + Mongolia """ - RSA_SHA1 + MN """ - RSA-SHA256 + Macau """ - RSA_SHA256 + MO """ - RSA-SHA384 + Northern Mariana Islands """ - RSA_SHA384 + MP """ - RSA-SHA512 + Martinique """ - RSA_SHA512 -} + MQ -""" -A Saved Reply is text a user can use to reply quickly. -""" -type SavedReply implements Node { """ - The body of the saved reply. + Mauritania """ - body: String! + MR """ - The saved reply body rendered to HTML. + Montserrat """ - bodyHTML: HTML! + MS """ - Identifies the primary key from the database. + Malta """ - databaseId: Int - id: ID! + MT """ - The title of the saved reply. + Mauritius """ - title: String! + MU """ - The user that saved this reply. + Maldives """ - user: Actor -} + MV -""" -The connection type for SavedReply. -""" -type SavedReplyConnection { """ - A list of edges. + Malawi """ - edges: [SavedReplyEdge] + MW """ - A list of nodes. + Mexico """ - nodes: [SavedReply] + MX """ - Information to aid in pagination. + Malaysia """ - pageInfo: PageInfo! + MY """ - Identifies the total count of items in the connection. + Mozambique """ - totalCount: Int! -} + MZ -""" -An edge in a connection. -""" -type SavedReplyEdge { """ - A cursor for use in pagination. + Namibia """ - cursor: String! + NA """ - The item at the end of the edge. + New Caledonia """ - node: SavedReply -} + NC -""" -Ordering options for saved reply connections. -""" -input SavedReplyOrder { """ - The ordering direction. + Niger """ - direction: OrderDirection! + NE """ - The field to order saved replies by. + Norfolk Island """ - field: SavedReplyOrderField! -} + NF -""" -Properties by which saved reply connections can be ordered. -""" -enum SavedReplyOrderField { """ - Order saved reply by when they were updated. + Nigeria """ - UPDATED_AT -} + NG -""" -The results of a search. -""" -union SearchResultItem = App | Issue | MarketplaceListing | Organization | PullRequest | Repository | User - -""" -A list of results that matched against a search query. -""" -type SearchResultItemConnection { """ - The number of pieces of code that matched the search query. + Nicaragua """ - codeCount: Int! + NI """ - A list of edges. + Netherlands """ - edges: [SearchResultItemEdge] + NL """ - The number of issues that matched the search query. + Norway """ - issueCount: Int! + NO """ - A list of nodes. + Nepal """ - nodes: [SearchResultItem] + NP """ - Information to aid in pagination. + Nauru """ - pageInfo: PageInfo! + NR """ - The number of repositories that matched the search query. + Niue """ - repositoryCount: Int! + NU """ - The number of users that matched the search query. + New Zealand """ - userCount: Int! + NZ """ - The number of wiki pages that matched the search query. + Oman """ - wikiCount: Int! -} + OM -""" -An edge in a connection. -""" -type SearchResultItemEdge { """ - A cursor for use in pagination. + Panama """ - cursor: String! + PA """ - The item at the end of the edge. + Peru """ - node: SearchResultItem + PE """ - Text matches on the result found. + French Polynesia """ - textMatches: [TextMatch] -} + PF -""" -Represents the individual results of a search. -""" -enum SearchType { """ - Returns results matching issues in repositories. + Papua New Guinea """ - ISSUE + PG """ - Returns results matching repositories. + Philippines """ - REPOSITORY + PH """ - Returns results matching users and organizations on GitHub. + Pakistan """ - USER -} + PK -""" -A GitHub Security Advisory -""" -type SecurityAdvisory implements Node { """ - Identifies the primary key from the database. + Poland """ - databaseId: Int + PL """ - This is a long plaintext description of the advisory + Saint Pierre and Miquelon """ - description: String! + PM """ - The GitHub Security Advisory ID + Pitcairn """ - ghsaId: String! - id: ID! + PN """ - A list of identifiers for this advisory + Puerto Rico """ - identifiers: [SecurityAdvisoryIdentifier!]! + PR """ - The organization that originated the advisory + Palestine """ - origin: String! + PS """ - The permalink for the advisory + Portugal """ - permalink: URI + PT """ - When the advisory was published + Palau """ - publishedAt: DateTime! + PW """ - A list of references for this advisory + Paraguay """ - references: [SecurityAdvisoryReference!]! + PY """ - The severity of the advisory + Qatar """ - severity: SecurityAdvisorySeverity! + QA """ - A short plaintext summary of the advisory + Reunion """ - summary: String! + RE """ - When the advisory was last updated + Romania """ - updatedAt: DateTime! + RO """ - Vulnerabilities associated with this Advisory + Serbia """ - 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 - - """ - 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 + RS - """ - Ordering options for the returned topics. - """ - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + """ + Russian Federation + """ + RU - """ - A package name to filter vulnerabilities by. - """ - package: String + """ + Rwanda + """ + RW - """ - A list of severities to filter vulnerabilities by. - """ - severities: [SecurityAdvisorySeverity!] - ): SecurityVulnerabilityConnection! + """ + Saudi Arabia + """ + SA """ - When the advisory was withdrawn, if it has been withdrawn + Solomon Islands """ - withdrawnAt: DateTime -} + SB -""" -The connection type for SecurityAdvisory. -""" -type SecurityAdvisoryConnection { """ - A list of edges. + Seychelles """ - edges: [SecurityAdvisoryEdge] + SC """ - A list of nodes. + Sudan """ - nodes: [SecurityAdvisory] + SD """ - Information to aid in pagination. + Sweden """ - pageInfo: PageInfo! + SE """ - Identifies the total count of items in the connection. + Singapore """ - totalCount: Int! -} + SG -""" -The possible ecosystems of a security vulnerability's package. -""" -enum SecurityAdvisoryEcosystem { """ - PHP packages hosted at packagist.org + Saint Helena """ - COMPOSER + SH """ - Java artifacts hosted at the Maven central repository + Slovenia """ - MAVEN + SI """ - JavaScript packages hosted at npmjs.com + Svalbard and Jan Mayen Islands """ - NPM + SJ """ - .NET packages hosted at the NuGet Gallery + Slovakia """ - NUGET + SK """ - Python packages hosted at PyPI.org + Sierra Leone """ - PIP + SL """ - Ruby gems hosted at RubyGems.org + San Marino """ - RUBYGEMS -} + SM -""" -An edge in a connection. -""" -type SecurityAdvisoryEdge { """ - A cursor for use in pagination. + Senegal """ - cursor: String! + SN """ - The item at the end of the edge. + Somalia """ - node: SecurityAdvisory -} + SO -""" -A GitHub Security Advisory Identifier -""" -type SecurityAdvisoryIdentifier { """ - The identifier type, e.g. GHSA, CVE + Suriname """ - type: String! + SR """ - The identifier + South Sudan """ - value: String! -} + SS -""" -An advisory identifier to filter results on. -""" -input SecurityAdvisoryIdentifierFilter { """ - The identifier type. + Sao Tome and Principe """ - type: SecurityAdvisoryIdentifierType! + ST """ - The identifier string. Supports exact or partial matching. + El Salvador """ - value: String! -} + SV -""" -Identifier formats available for advisories. -""" -enum SecurityAdvisoryIdentifierType { """ - Common Vulnerabilities and Exposures Identifier. + Sint Maarten (Dutch part) """ - CVE + SX """ - GitHub Security Advisory ID. + Swaziland """ - GHSA -} + SZ -""" -Ordering options for security advisory connections -""" -input SecurityAdvisoryOrder { """ - The ordering direction. + Turks and Caicos Islands """ - direction: OrderDirection! + TC """ - The field to order security advisories by. + Chad """ - field: SecurityAdvisoryOrderField! -} + TD -""" -Properties by which security advisory connections can be ordered. -""" -enum SecurityAdvisoryOrderField { """ - Order advisories by publication time + French Southern Lands """ - PUBLISHED_AT + TF """ - Order advisories by update time + Togo """ - UPDATED_AT -} + TG -""" -An individual package -""" -type SecurityAdvisoryPackage { """ - The ecosystem the package belongs to, e.g. RUBYGEMS, NPM + Thailand """ - ecosystem: SecurityAdvisoryEcosystem! + TH """ - The package name + Tajikistan """ - name: String! -} + TJ -""" -An individual package version -""" -type SecurityAdvisoryPackageVersion { """ - The package name or version + Tokelau """ - identifier: String! -} + TK -""" -A GitHub Security Advisory Reference -""" -type SecurityAdvisoryReference { """ - A publicly accessible reference + Timor-Leste """ - url: URI! -} + TL -""" -Severity of the vulnerability. -""" -enum SecurityAdvisorySeverity { """ - Critical. + Turkmenistan """ - CRITICAL + TM """ - High. + Tunisia """ - HIGH + TN """ - Low. + Tonga """ - LOW + TO """ - Moderate. + Turkey """ - MODERATE -} + TR -""" -An individual vulnerability within an Advisory -""" -type SecurityVulnerability { """ - The Advisory associated with this Vulnerability + Trinidad and Tobago """ - advisory: SecurityAdvisory! + TT """ - The first version containing a fix for the vulnerability + Tuvalu """ - firstPatchedVersion: SecurityAdvisoryPackageVersion + TV """ - A description of the vulnerable package + Taiwan """ - package: SecurityAdvisoryPackage! + TW """ - The severity of the vulnerability within this package + Tanzania """ - severity: SecurityAdvisorySeverity! + TZ """ - When the vulnerability was last updated + Ukraine """ - updatedAt: DateTime! + UA """ - 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 + Uganda """ - vulnerableVersionRange: String! -} + UG -""" -The connection type for SecurityVulnerability. -""" -type SecurityVulnerabilityConnection { """ - A list of edges. + United States Minor Outlying Islands """ - edges: [SecurityVulnerabilityEdge] + UM """ - A list of nodes. + United States of America """ - nodes: [SecurityVulnerability] + US """ - Information to aid in pagination. + Uruguay """ - pageInfo: PageInfo! + UY """ - Identifies the total count of items in the connection. + Uzbekistan """ - totalCount: Int! -} + UZ -""" -An edge in a connection. -""" -type SecurityVulnerabilityEdge { """ - A cursor for use in pagination. + Vatican City """ - cursor: String! + VA """ - The item at the end of the edge. + Saint Vincent and the Grenadines """ - node: SecurityVulnerability -} + VC -""" -Ordering options for security vulnerability connections -""" -input SecurityVulnerabilityOrder { """ - The ordering direction. + Venezuela """ - direction: OrderDirection! + VE """ - The field to order security vulnerabilities by. + Virgin Islands, British """ - field: SecurityVulnerabilityOrderField! -} + VG -""" -Properties by which security vulnerability connections can be ordered. -""" -enum SecurityVulnerabilityOrderField { """ - Order vulnerability by update time + Virgin Islands, U.S. """ - UPDATED_AT -} + VI -""" -Autogenerated input type of SetEnterpriseIdentityProvider -""" -input SetEnterpriseIdentityProviderInput { """ - A unique identifier for the client performing the mutation. + Vietnam """ - clientMutationId: String + VN """ - The digest algorithm used to sign SAML requests for the identity provider. + Vanuatu """ - digestMethod: SamlDigestAlgorithm! + VU """ - The ID of the enterprise on which to set an identity provider. + Wallis and Futuna Islands """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + WF """ - The x509 certificate used by the identity provider to sign assertions and responses. + Samoa """ - idpCertificate: String! + WS """ - The Issuer Entity ID for the SAML identity provider + Yemen """ - issuer: String + YE """ - The signature algorithm used to sign SAML requests for the identity provider. + Mayotte """ - signatureMethod: SamlSignatureAlgorithm! + YT """ - The URL endpoint for the identity provider's SAML SSO. + South Africa """ - ssoUrl: URI! -} + ZA -""" -Autogenerated return type of SetEnterpriseIdentityProvider -""" -type SetEnterpriseIdentityProviderPayload { """ - A unique identifier for the client performing the mutation. + Zambia """ - clientMutationId: String + ZM """ - The identity provider for the enterprise. + Zimbabwe """ - identityProvider: EnterpriseIdentityProvider + ZW } """ -Represents an S/MIME signature on a Commit or Tag. +A goal associated with a GitHub Sponsors listing, representing a target the sponsored maintainer would like to attain. """ -type SmimeSignature implements GitSignature { +type SponsorsGoal { """ - Email used to sign this object. + A description of the goal from the maintainer. """ - email: String! + description: String """ - True if the signature is valid and verified by GitHub. + What the objective of this goal is. """ - isValid: Boolean! + kind: SponsorsGoalKind! """ - Payload for GPG signing object. Raw ODB object without the signature header. + The percentage representing how complete this goal is, between 0-100. """ - payload: String! + percentComplete: Int! """ - ASCII-armored signature header from object. + 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. """ - signature: String! + targetValue: Int! """ - GitHub user corresponding to the email signing this commit. + A brief summary of the kind and target value of this goal. """ - signer: User + title: String! +} +""" +The different kinds of goals a GitHub Sponsors member can have. +""" +enum SponsorsGoalKind { """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + The goal is about getting a certain amount in USD from sponsorships each month. """ - state: GitSignatureState! + MONTHLY_SPONSORSHIP_AMOUNT """ - True if the signature was made with GitHub's signing key. + The goal is about reaching a certain number of sponsors. """ - wasSignedByGitHub: Boolean! + TOTAL_SPONSORS_COUNT } """ -Entites that can sponsor others via GitHub Sponsors -""" -union Sponsor = Organization | User - -""" -Entities that can be sponsored through GitHub Sponsors +A GitHub Sponsors listing. """ -interface Sponsorable { +type SponsorsListing implements Node { """ - The GitHub Sponsors listing for this user. + The current goal the maintainer is trying to reach with GitHub Sponsors, if any. """ - sponsorsListing: SponsorsListing + activeGoal: SponsorsGoal """ - This object's sponsorships as the maintainer. + 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. """ - 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 + activeStripeConnectAccount: StripeConnectAccount - """ - 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 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. + """ + billingCountryOrRegion: String """ - This object's sponsorships as the sponsor. + 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. """ - sponsorshipsAsSponsor( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + contactEmailAddress: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP path for the Sponsors dashboard for this Sponsors listing. + """ + dashboardResourcePath: URI! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for the Sponsors dashboard for this Sponsors listing. + """ + dashboardUrl: URI! + """ + The records featured on the GitHub Sponsors profile. + """ + featuredItems( """ - Ordering options for sponsorships returned from this connection. If left - blank, the sponsorships will be ordered based on relevancy to the viewer. + The types of featured items to return. """ - orderBy: SponsorshipOrder - ): SponsorshipConnection! -} + featureableTypes: [SponsorsListingFeaturedItemFeatureableType!] = [REPOSITORY, USER] + ): [SponsorsListingFeaturedItem!]! -""" -A GitHub Sponsors listing. -""" -type SponsorsListing implements Node { """ - Identifies the date and time when the object was created. + 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. """ - createdAt: DateTime! + fiscalHost: Organization """ The full description of the listing. @@ -31412,11 +49693,33 @@ type SponsorsListing implements Node { fullDescriptionHTML: HTML! id: ID! + """ + Whether this listing is publicly visible. + """ + isPublic: Boolean! + """ The listing's full name. """ name: String! + """ + A future date on which this listing is eligible to receive a payout. + """ + nextPayoutDate: Date + + """ + 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. + """ + residenceCountryOrRegion: String + + """ + The HTTP path for this Sponsors listing. + """ + resourcePath: URI! + """ The short description of the listing. """ @@ -31428,7 +49731,12 @@ type SponsorsListing implements Node { slug: String! """ - The published tiers for this GitHub Sponsors listing. + The entity this listing represents who can be sponsored on GitHub Sponsors. + """ + sponsorable: Sponsorable! + + """ + The tiers for this GitHub Sponsors profile. """ tiers( """ @@ -31446,6 +49754,15 @@ type SponsorsListing implements Node { """ 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 + """ Returns the last _n_ elements from the list. """ @@ -31456,6 +49773,70 @@ type SponsorsListing implements Node { """ orderBy: SponsorsTierOrder = {field: MONTHLY_PRICE_IN_CENTS, direction: ASC} ): SponsorsTierConnection + + """ + The HTTP URL for this Sponsors listing. + """ + url: URI! +} + +""" +A record that can be featured on a GitHub Sponsors profile. +""" +union SponsorsListingFeatureableItem = Repository | User + +""" +A record that is promoted on a GitHub Sponsors profile. +""" +type SponsorsListingFeaturedItem implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + 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. + """ + description: String + + """ + The record that is featured on the GitHub Sponsors profile. + """ + featureable: SponsorsListingFeatureableItem! + id: ID! + + """ + The position of this featured item on the GitHub Sponsors profile with a lower + position indicating higher precedence. Starts at 1. + """ + position: Int! + + """ + The GitHub Sponsors profile that features this record. + """ + sponsorsListing: SponsorsListing! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The different kinds of records that can be featured on a GitHub Sponsors profile page. +""" +enum SponsorsListingFeaturedItemFeatureableType { + """ + A repository owned by the user or organization with the GitHub Sponsors profile. + """ + REPOSITORY + + """ + A user who belongs to the organization with the GitHub Sponsors profile. + """ + USER } """ @@ -31467,6 +49848,13 @@ type SponsorsTier implements Node { """ adminInfo: SponsorsTierAdminInfo + """ + 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. + """ + closestLesserValueTier: SponsorsTier + """ Identifies the date and time when the object was created. """ @@ -31483,13 +49871,24 @@ type SponsorsTier implements Node { descriptionHTML: HTML! id: ID! + """ + 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. + """ + isCustomAmount: Boolean! + + """ + Whether this tier is only for use with one-time sponsorships. + """ + isOneTime: Boolean! + """ How much this tier costs per month in cents. """ monthlyPriceInCents: Int! """ - How much this tier costs per month in dollars. + How much this tier costs per month in USD. """ monthlyPriceInDollars: Int! @@ -31514,7 +49913,32 @@ SponsorsTier information only visible to users that can administer the associate """ type SponsorsTierAdminInfo { """ - The sponsorships associated with this tier. + 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. + """ + isDraft: Boolean! + + """ + 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. + """ + isPublished: Boolean! + + """ + 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. + """ + isRetired: Boolean! + + """ + The sponsorships using this tier. """ sponsorships( """ @@ -31533,7 +49957,8 @@ type SponsorsTierAdminInfo { first: Int """ - Whether or not to include private sponsorships in the result set + Whether or not to return private sponsorships using this tier. Defaults to + only returning public sponsorships on this tier. """ includePrivate: Boolean = false @@ -31630,10 +50055,30 @@ type Sponsorship implements Node { createdAt: DateTime! id: ID! + """ + Whether the sponsorship is active. False implies the sponsor is a past sponsor + of the maintainer, while true implies they are a current sponsor. + """ + isActive: Boolean! + + """ + Whether this sponsorship represents a one-time payment versus a recurring sponsorship. + """ + isOneTimePayment: Boolean! + + """ + 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. + """ + isSponsorOptedIntoEmail: Boolean + """ The entity that is being sponsored """ - maintainer: User! @deprecated(reason: "`Sponsorship.maintainer` will be removed. Use `Sponsorship.sponsorable` instead. Removal on 2020-04-01 UTC.") + maintainer: User! + @deprecated( + reason: "`Sponsorship.maintainer` will be removed. Use `Sponsorship.sponsorable` instead. Removal on 2020-04-01 UTC." + ) """ The privacy level for this sponsorship. @@ -31643,10 +50088,13 @@ type Sponsorship implements Node { """ The user that is sponsoring. Returns null if the sponsorship is private or if sponsor is not a user. """ - sponsor: User @deprecated(reason: "`Sponsorship.sponsor` will be removed. Use `Sponsorship.sponsorEntity` instead. Removal on 2020-10-01 UTC.") + sponsor: User + @deprecated( + reason: "`Sponsorship.sponsor` will be removed. Use `Sponsorship.sponsorEntity` instead. Removal on 2020-10-01 UTC." + ) """ - The user or organization that is sponsoring. Returns null if the sponsorship is private. + The user or organization that is sponsoring, if you have permission to view them. """ sponsorEntity: Sponsor @@ -31659,6 +50107,11 @@ type Sponsorship implements Node { The associated sponsorship tier """ tier: SponsorsTier + + """ + Identifies the date and time when the current tier was chosen for this sponsorship. + """ + tierSelectedAt: DateTime } """ @@ -31684,6 +50137,18 @@ type SponsorshipConnection { Identifies the total count of items in the connection. """ totalCount: Int! + + """ + The total amount in cents of all recurring sponsorships in the connection + whose amount you can view. Does not include one-time sponsorships. + """ + totalRecurringMonthlyPriceInCents: Int! + + """ + The total amount in USD of all recurring sponsorships in the connection whose + amount you can view. Does not include one-time sponsorships. + """ + totalRecurringMonthlyPriceInDollars: Int! } """ @@ -31701,6 +50166,112 @@ type SponsorshipEdge { node: Sponsorship } +""" +An update sent to sponsors of a user or organization on GitHub Sponsors. +""" +type SponsorshipNewsletter implements Node { + """ + The author of the newsletter. + """ + author: User + + """ + The contents of the newsletter, the message the sponsorable wanted to give. + """ + body: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Indicates if the newsletter has been made available to sponsors. + """ + isPublished: Boolean! + + """ + The user or organization this newsletter is from. + """ + sponsorable: Sponsorable! + + """ + The subject of the newsletter, what it's about. + """ + subject: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for SponsorshipNewsletter. +""" +type SponsorshipNewsletterConnection { + """ + A list of edges. + """ + edges: [SponsorshipNewsletterEdge] + + """ + A list of nodes. + """ + nodes: [SponsorshipNewsletter] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type SponsorshipNewsletterEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: SponsorshipNewsletter +} + +""" +Ordering options for sponsorship newsletter connections. +""" +input SponsorshipNewsletterOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order sponsorship newsletters by. + """ + field: SponsorshipNewsletterOrderField! +} + +""" +Properties by which sponsorship update connections can be ordered. +""" +enum SponsorshipNewsletterOrderField { + """ + Order sponsorship newsletters by when they were created. + """ + CREATED_AT +} + """ Ordering options for sponsorship connections. """ @@ -31741,6 +50312,87 @@ enum SponsorshipPrivacy { PUBLIC } +""" +The possible default commit messages for squash merges. +""" +enum SquashMergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the branch's commit messages. + """ + COMMIT_MESSAGES + + """ + Default to the pull request's body. + """ + PR_BODY +} + +""" +The possible default commit titles for squash merges. +""" +enum SquashMergeCommitTitle { + """ + Default to the commit's title (if only one commit) or the pull request's title (when more than one commit). + """ + COMMIT_OR_PR_TITLE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +Represents an SSH signature on a Commit or Tag. +""" +type SshSignature implements GitSignature { + """ + Email used to sign this object. + """ + email: String! + + """ + True if the signature is valid and verified by GitHub. + """ + isValid: Boolean! + + """ + Hex-encoded fingerprint of the key that signed this object. + """ + keyFingerprint: 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! +} + """ Ways in which star connections can be ordered. """ @@ -31813,6 +50465,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. """ @@ -31895,10 +50552,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 `true`. + """ + 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. """ @@ -31926,6 +50738,36 @@ type Status implements Node { state: StatusState! } +""" +Required status check +""" +type StatusCheckConfiguration { + """ + The status check context name that must be present on the commit. + """ + context: String! + + """ + The optional integration ID that this status check must originate from. + """ + integrationId: Int +} + +""" +Required status check +""" +input StatusCheckConfigurationInput { + """ + The status check context name that must be present on the commit. + """ + context: String! + + """ + The optional integration ID that this status check must originate from. + """ + integrationId: Int +} + """ Represents the rollup for both the check runs and status for a commit. """ @@ -31976,6 +50818,16 @@ 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. """ @@ -31991,6 +50843,16 @@ type StatusCheckRollupContextConnection { """ 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. """ @@ -32015,7 +50877,7 @@ type StatusCheckRollupContextEdge { """ 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 """ @@ -32052,6 +50914,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. """ @@ -32063,6 +50940,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. """ @@ -32093,6 +50985,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 """ @@ -32157,11 +51089,21 @@ type Submodule { """ 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 """ @@ -32225,6 +51167,23 @@ interface Subscribable { viewerSubscription: SubscriptionState } +""" +Entities that can be subscribed to for web and email notifications. +""" +interface SubscribableThread { + id: ID! + + """ + Identifies the viewer's thread subscription form action. + """ + viewerThreadSubscriptionFormAction: ThreadSubscriptionFormAction + + """ + Identifies the viewer's thread subscription status. + """ + viewerThreadSubscriptionStatus: ThreadSubscriptionState +} + """ Represents a 'subscribed' event on a given `Subscribable`. """ @@ -32337,6 +51296,56 @@ type Tag implements GitObject & Node { target: GitObject! } +""" +Parameters to be used for the tag_name_pattern rule +""" +type TagNamePatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the tag_name_pattern rule +""" +input TagNamePatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + """ A team of users in an organization. """ @@ -32627,6 +51636,11 @@ type Team implements MemberStatusable & Node & Subscribable { """ newTeamUrl: URI! + """ + The notification setting that the team has set. + """ + notificationSetting: TeamNotificationSetting! + """ The organization that owns this team. """ @@ -32642,6 +51656,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. """ @@ -32672,7 +51736,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! @@ -33224,6 +52288,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Author's association with the discussion's team. """ authorAssociation: CommentAuthorAssociation! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The body as Markdown. @@ -33244,6 +52311,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Identifies the discussion body hash. """ bodyVersion: String! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ A list of comments on this discussion. @@ -33279,16 +52349,25 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib """ orderBy: TeamDiscussionCommentOrder ): TeamDiscussionCommentConnection! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The HTTP path for discussion comments """ commentsResourcePath: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The HTTP URL for discussion comments """ commentsUrl: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was created. @@ -33320,11 +52399,17 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Whether or not the discussion is pinned. """ isPinned: Boolean! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Whether or not the discussion is only visible to team members and org admins. """ isPrivate: Boolean! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The moment the editor made the last edit @@ -33335,6 +52420,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Identifies the discussion within its team. """ number: Int! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies when the comment was published at. @@ -33385,16 +52473,25 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib The HTTP path for this discussion """ resourcePath: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The team that defines the context of this discussion. """ team: Team! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The title of the discussion """ title: String! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was last updated. @@ -33405,6 +52502,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib The HTTP URL for this discussion """ url: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ A list of edits to this content. @@ -33440,6 +52540,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Whether or not the current viewer can pin this discussion. """ viewerCanPin: Boolean! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Can user react to this subject @@ -33485,6 +52588,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U Author's association with the comment's team. """ authorAssociation: CommentAuthorAssociation! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The body as Markdown. @@ -33505,6 +52611,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The current version of the body content. """ bodyVersion: String! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was created. @@ -33525,6 +52634,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The discussion this comment is about. """ discussion: TeamDiscussion! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The actor who edited the comment. @@ -33546,6 +52658,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U Identifies the comment number. """ number: Int! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies when the comment was published at. @@ -33596,6 +52711,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The HTTP path for this comment """ resourcePath: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was last updated. @@ -33606,6 +52724,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The HTTP URL for this comment """ url: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ A list of edits to this content. @@ -33919,6 +53040,21 @@ enum TeamMembershipType { IMMEDIATE } +""" +The possible team notification values. +""" +enum TeamNotificationSetting { + """ + No one will receive notifications. + """ + NOTIFICATIONS_DISABLED + + """ + Everyone will receive notifications when the team is @mentioned. + """ + NOTIFICATIONS_ENABLED +} + """ Ways in which team connections can be ordered. """ @@ -34248,10 +53384,6 @@ type TeamRepositoryEdge { """ The permission level the team has on the repository - - **Upcoming Change on 2020-10-01 UTC** - **Description:** Type for `permission` will change from `RepositoryPermission!` to `String`. - **Reason:** This field may return additional values """ permission: RepositoryPermission! } @@ -34376,6 +53508,76 @@ type TextMatchHighlight { text: String! } +""" +The possible states of a thread subscription form action +""" +enum ThreadSubscriptionFormAction { + """ + The User cannot subscribe or unsubscribe to the thread + """ + NONE + + """ + The User can subscribe to the thread + """ + SUBSCRIBE + + """ + The User can unsubscribe to the thread + """ + UNSUBSCRIBE +} + +""" +The possible states of a subscription. +""" +enum ThreadSubscriptionState { + """ + The subscription status is currently disabled. + """ + DISABLED + + """ + The User is never notified because they are ignoring the list + """ + IGNORING_LIST + + """ + The User is never notified because they are ignoring the thread + """ + IGNORING_THREAD + + """ + The User is not recieving notifications from this thread + """ + NONE + + """ + The User is notified becuase they are watching the list + """ + SUBSCRIBED_TO_LIST + + """ + The User is notified because they are subscribed to the thread + """ + SUBSCRIBED_TO_THREAD + + """ + The User is notified because they chose custom settings for this thread. + """ + SUBSCRIBED_TO_THREAD_EVENTS + + """ + The User is notified because they chose custom settings for this thread. + """ + SUBSCRIBED_TO_THREAD_TYPE + + """ + The subscription status is currently unavailable. + """ + UNAVAILABLE +} + """ A topic aggregates entities that are related to a subject. """ @@ -34398,6 +53600,75 @@ 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 issues enabled + """ + hasIssuesEnabled: 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 + + """ + 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. """ @@ -34474,6 +53745,56 @@ enum TopicSuggestionDeclineReason { TOO_SPECIFIC } +""" +The possible states of a tracked issue. +""" +enum TrackedIssueStates { + """ + The tracked issue is closed + """ + CLOSED + + """ + The tracked issue is open + """ + OPEN +} + +""" +Autogenerated input type of TransferEnterpriseOrganization +""" +input TransferEnterpriseOrganizationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise where the organization should be transferred. + """ + destinationEnterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the organization to transfer. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of TransferEnterpriseOrganization +""" +type TransferEnterpriseOrganizationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organization for which a transfer was initiated. + """ + organization: Organization +} + """ Autogenerated input type of TransferIssue """ @@ -34483,6 +53804,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 """ @@ -34575,6 +53901,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. """ @@ -34585,6 +53931,11 @@ type TreeEntry { """ name: String! + """ + Entry file name. (Base64-encoded) + """ + nameRaw: Base64String! + """ Entry file object. """ @@ -34595,11 +53946,26 @@ 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 """ @@ -34616,6 +53982,41 @@ 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 """ @@ -34674,7 +54075,38 @@ 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 } """ @@ -34789,6 +54221,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 """ @@ -34839,9 +54341,9 @@ 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") } """ @@ -34885,6 +54387,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 """ @@ -34920,6 +54487,36 @@ type UnmarkIssueAsDuplicatePayload { duplicate: IssueOrPullRequest } +""" +Autogenerated input type of UnmarkProjectV2AsTemplate +""" +input UnmarkProjectV2AsTemplateInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to unmark as a template. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UnmarkProjectV2AsTemplate +""" +type UnmarkProjectV2AsTemplatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The project. + """ + projectV2: ProjectV2 +} + """ Represents an 'unmarked_as_duplicate' event on a given issue or pull request. """ @@ -34929,11 +54526,26 @@ type UnmarkedAsDuplicateEvent implements Node { """ 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! } """ @@ -34948,7 +54560,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" + ) } """ @@ -35092,11 +54708,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. """ @@ -35112,26 +54753,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. """ @@ -35147,6 +54814,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. """ @@ -35168,7 +54850,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!] } @@ -35191,7 +54873,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. """ @@ -35256,7 +54938,7 @@ input UpdateCheckRunInput @preview(toggledBy: "antiope-preview") { """ Autogenerated return type of UpdateCheckRun """ -type UpdateCheckRunPayload @preview(toggledBy: "antiope-preview") { +type UpdateCheckRunPayload { """ The updated check run. """ @@ -35271,7 +54953,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. """ @@ -35291,7 +54973,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. """ @@ -35304,13 +54986,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. @@ -35318,29 +55000,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 + comment: DiscussionComment +} + +""" +Autogenerated input type of UpdateDiscussion +""" +input UpdateDiscussionInput { + """ + The new contents of the discussion body. + """ + body: String """ - A message confirming the result of updating the action execution capability setting. + The Node ID of a discussion category within the same repository to change this discussion to. """ - message: String + 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 } """ @@ -35397,6 +55119,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. """ @@ -35433,12 +55160,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! } @@ -35453,12 +55180,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 """ - 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 } @@ -35816,30 +55543,70 @@ input UpdateEnterpriseOrganizationProjectsSettingInput { """ The ID of the enterprise on which to set the organization projects setting. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The value for the organization projects setting on the enterprise. + """ + settingValue: EnterpriseEnabledDisabledSettingValue! +} + +""" +Autogenerated return type of UpdateEnterpriseOrganizationProjectsSetting +""" +type UpdateEnterpriseOrganizationProjectsSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The enterprise with the updated organization projects setting. + """ + enterprise: Enterprise + + """ + A message confirming the result of updating the organization projects setting. + """ + 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 value for the organization projects setting on the enterprise. + The role to assume in the organization. """ - settingValue: EnterpriseEnabledDisabledSettingValue! + organizationRole: RoleInOrganization! } """ -Autogenerated return type of UpdateEnterpriseOrganizationProjectsSetting +Autogenerated return type of UpdateEnterpriseOwnerOrganizationRole """ -type UpdateEnterpriseOrganizationProjectsSettingPayload { +type UpdateEnterpriseOwnerOrganizationRolePayload { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The enterprise with the updated organization projects setting. - """ - enterprise: Enterprise - - """ - A message confirming the result of updating the organization projects setting. + A message confirming the result of changing the owner's organization role. """ message: String } @@ -36014,6 +55781,46 @@ 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 """ @@ -36026,7 +55833,7 @@ input UpdateIpAllowListEnabledSettingInput { """ The ID of the owner on which to set the IP allow list enabled setting. """ - ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "IpAllowListOwner") + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") """ The value for the IP allow list enabled setting. @@ -36094,6 +55901,41 @@ type UpdateIpAllowListEntryPayload { 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 """ @@ -36244,6 +56086,141 @@ 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 +} + +""" +Only allow users with bypass permission to update matching refs. +""" +type UpdateParameters { + """ + Branch can pull changes from its upstream repository + """ + updateAllowsFetchAndMerge: Boolean! +} + +""" +Only allow users with bypass permission to update matching refs. +""" +input UpdateParametersInput { + """ + Branch can pull changes from its upstream repository + """ + updateAllowsFetchAndMerge: Boolean! +} + """ Autogenerated input type of UpdateProjectCard """ @@ -36369,6 +56346,310 @@ type UpdateProjectPayload { project: Project } +""" +Autogenerated input type of UpdateProjectV2Collaborators +""" +input UpdateProjectV2CollaboratorsInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The collaborators to update. + """ + collaborators: [ProjectV2Collaborator!]! + + """ + The ID of the project to update the collaborators for. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UpdateProjectV2Collaborators +""" +type UpdateProjectV2CollaboratorsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The collaborators granted a role + """ + collaborators( + """ + 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 + ): ProjectV2ActorConnection +} + +""" +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"]) + + """ + The update branch method to use. If omitted, defaults to 'MERGE' + """ + updateMethod: PullRequestBranchUpdateMethod +} + +""" +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 """ @@ -36604,6 +56885,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. """ @@ -36656,6 +56942,164 @@ type UpdateRepositoryPayload { repository: Repository } +""" +Autogenerated input type of UpdateRepositoryRuleset +""" +input UpdateRepositoryRulesetInput { + """ + A list of actors that are allowed to bypass rules in this ruleset. + """ + bypassActors: [RepositoryRulesetBypassActorInput!] + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The list of conditions for this ruleset + """ + conditions: RepositoryRuleConditionsInput + + """ + The enforcement level for this ruleset + """ + enforcement: RuleEnforcement + + """ + The name of the ruleset. + """ + name: String + + """ + The global relay id of the repository ruleset to be updated. + """ + repositoryRulesetId: ID! @possibleTypes(concreteTypes: ["RepositoryRuleset"]) + + """ + The list of rules for this ruleset + """ + rules: [RepositoryRuleInput!] + + """ + The target of the ruleset. + """ + target: RepositoryRulesetTarget +} + +""" +Autogenerated return type of UpdateRepositoryRuleset +""" +type UpdateRepositoryRulesetPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created Ruleset. + """ + ruleset: RepositoryRuleset +} + +""" +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 """ @@ -36673,7 +57117,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" + ) } """ @@ -36807,7 +57255,7 @@ input UpdateTeamReviewAssignmentInput @preview(toggledBy: "stone-crop-preview") excludedTeamMemberIds: [ID!] @possibleTypes(concreteTypes: ["User"]) """ - The Node ID of the team to update review assginments of + The Node ID of the team to update review assignments of """ id: ID! @possibleTypes(concreteTypes: ["Team"]) @@ -36837,6 +57285,51 @@ type UpdateTeamReviewAssignmentPayload { 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 """ @@ -36880,7 +57373,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 & PackageOwner & ProfileOwner & ProjectOwner & 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. """ @@ -36911,6 +57404,16 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ 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. """ @@ -36961,8 +57464,9 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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! @@ -36982,6 +57486,46 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ email: String! + """ + A list of enterprises that the user belongs to. + """ + enterprises( + """ + 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 enterprises returned based on the user's membership type. + """ + membershipType: EnterpriseMembershipType = ALL + + """ + Ordering options for the User's enterprises. + """ + orderBy: EnterpriseOrder = {field: NAME, direction: ASC} + ): EnterpriseConnection + + """ + 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. """ @@ -37102,6 +57646,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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 """ @@ -37113,6 +57662,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & ): 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. """ @@ -37133,6 +57687,16 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ isEmployee: Boolean! + """ + Whether or not this user is following the viewer. Inverse of viewerIsFollowing + """ + 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. """ @@ -37143,6 +57707,21 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ 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. """ @@ -37171,6 +57750,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & Returns the last _n_ elements from the list. """ last: Int + + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder ): IssueCommentConnection! """ @@ -37234,6 +57818,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ login: String! + """ + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). + """ + monthlyEstimatedSponsorsIncomeInCents: Int! + """ The user's public profile name. """ @@ -37282,6 +57871,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & Returns the last _n_ elements from the list. """ last: Int + + """ + Ordering options for the User's organizations. + """ + orderBy: OrganizationOrder = null ): OrganizationConnection! """ @@ -37404,6 +57998,16 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & number: Int! ): Project + """ + Find a project by number. + """ + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 + """ A list of projects under the owner. """ @@ -37454,6 +58058,46 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ 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! + + """ + The user's profile pronouns + """ + pronouns: String + """ A list of public keys associated with this user. """ @@ -37529,6 +58173,31 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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. """ @@ -37538,8 +58207,312 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & connection. For example, OWNER will include only repositories that the current viewer owns. """ - affiliations: [RepositoryAffiliation] + 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 issues enabled + """ + hasIssuesEnabled: Boolean + + """ + If non-null, filters repositories according to whether they are archived and not maintained + """ + isArchived: Boolean + + """ + 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! + + """ + A list of repositories that the user recently contributed to. + """ + repositoriesContributedTo( + """ + 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 + + """ + 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 + + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssues: Boolean + + """ + If true, include user repositories + """ + includeUserRepositories: 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 + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! + + """ + Find Repository. + """ + 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 + + """ + Discussion comments this user has authored. + """ + 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! + + """ + Discussions this user has started. + """ + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + 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 + + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! + + """ + The HTTP path for this user + """ + resourcePath: URI! + + """ + Replies this user has saved + """ + savedReplies( + """ + 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 field to order saved replies by. + """ + orderBy: SavedReplyOrder = {field: UPDATED_AT, direction: DESC} + ): SavedReplyConnection + + """ + The user's social media accounts, ordered as they appear on the user's profile. + """ + socialAccounts( + """ + 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 + ): SocialAccountConnection! + + """ + List of users and organizations this entity is sponsoring. + """ + sponsoring( + """ + 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 users and organizations returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! + """ + List of sponsors for this user or organization. + """ + sponsors( """ Returns the elements in the list that come after the specified cursor. """ @@ -37555,43 +58528,32 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ 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. """ @@ -37602,26 +58564,22 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ 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 """ - If true, include user repositories + 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. """ - includeUserRepositories: Boolean + includeAsSponsor: Boolean = false """ - If non-null, filters repositories according to whether they have been locked + Whether or not to include private activities in the result set. Defaults to including public and private activities. """ - isLocked: Boolean + includePrivate: Boolean = true """ Returns the last _n_ elements from the list. @@ -37629,35 +58587,59 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & last: Int """ - Ordering options for repositories returned from the connection + Ordering options for activity returned from the connection. """ - orderBy: RepositoryOrder + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} """ - If non-null, filters repositories according to privacy + 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. """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + 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! """ - 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. """ @@ -37679,20 +58661,21 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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 - - """ - The GitHub Sponsors listing for this user. - """ - sponsorsListing: SponsorsListing + 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. """ @@ -37726,9 +58709,14 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & ): 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. """ @@ -37749,6 +58737,13 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ 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. @@ -37831,6 +58826,28 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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. """ @@ -37862,10 +58879,20 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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 isFollowingViewer. """ viewerIsFollowing: Boolean! + """ + True if the viewer is sponsoring this user/organization. + """ + viewerIsSponsoring: Boolean! + """ A list of repositories the given user is watching. """ @@ -37892,6 +58919,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ first: Int + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean + """ If non-null, filters repositories according to whether they have been locked """ @@ -38103,6 +59135,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. """ @@ -38126,10 +59178,6 @@ type UserStatus implements Node { If set, the status will not be shown after this date. """ expiresAt: DateTime - - """ - ID of the object. - """ id: ID! """ @@ -38223,6 +59271,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. """ @@ -38243,7 +59472,346 @@ 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 & UniformResourceLocatable { + """ + 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 HTTP path for this workflow + """ + resourcePath: URI! + + """ + 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! + + """ + The state of the workflow. + """ + state: WorkflowState! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this workflow + """ + url: URI! +} + +""" +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! + + """ + The workflow file + """ + file: WorkflowRunFile + 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 +} + +""" +An executed workflow file for a workflow run. +""" +type WorkflowRunFile implements Node & UniformResourceLocatable { + id: ID! + + """ + The path of the workflow file relative to its repository. + """ + path: String! + + """ + The direct link to the file in the repository which stores the workflow file. + """ + repositoryFileUrl: URI! + + """ + The repository name and owner which stores the workflow file. + """ + repositoryName: URI! + + """ + The HTTP path for this workflow run file + """ + resourcePath: URI! + + """ + The parent workflow run execution for this file. + """ + run: WorkflowRun! + + """ + The HTTP URL for this workflow run file + """ + url: URI! + + """ + If the viewer has permissions to push to the repository which stores the workflow. + """ + viewerCanPushRepository: Boolean! + + """ + If the viewer has permissions to read the repository which stores the workflow. + """ + viewerCanReadRepository: Boolean! +} + +""" +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 +} + +""" +The possible states for a workflow. +""" +enum WorkflowState { + """ + The workflow is active. + """ + ACTIVE + + """ + The workflow was deleted from the git repository. + """ + DELETED + + """ + The workflow was disabled by default on a fork. + """ + DISABLED_FORK + + """ + The workflow was disabled for inactivity in the repository. + """ + DISABLED_INACTIVITY + + """ + The workflow was disabled manually. + """ + DISABLED_MANUALLY +} + """ A valid x509 certificate string """ -scalar X509Certificate \ No newline at end of file +scalar X509Certificate diff --git a/tests/querygen-compile-run/build.rs b/tests/querygen-compile-run/build.rs index d2fd6915..d340fe2f 100644 --- a/tests/querygen-compile-run/build.rs +++ b/tests/querygen-compile-run/build.rs @@ -135,13 +135,22 @@ fn main() { "../../cynic-querygen/tests/queries/github/queries-with-typename.graphql", r#"UnnamedQuery::build(())"#, ), + TestCase::query_norun( + &github_schema, + "../../cynic-querygen/tests/queries/github/issue-786.graphql", + r#"ProjectMetadataQuery::build( + ProjectMetadataQueryVariables { + id: &cynic::Id::new("123"), + } + )"#, + ), TestCase::mutation( &github_schema, "tests/queries/github/scalar-inside-input-object.graphql", r#"AddPRComment::build( AddPRCommentVariables { body: "hello!", - commit: GitObjectID("abcd".into()) + commit: GitObjectId("abcd".into()) } )"#, ), @@ -183,6 +192,15 @@ fn main() { } )"#, ), + TestCase::query_norun( + &github_schema, + "tests/queries/github/inline-fragment-with-renames.graphql", + r#"RepoIssues::build( + RepoIssuesVariables { + first: 10 + } + )"#, + ), TestCase::subscription( &book_schema, "tests/queries/books/books.graphql", diff --git a/tests/querygen-compile-run/tests/queries/github/inline-fragment-with-renames.graphql b/tests/querygen-compile-run/tests/queries/github/inline-fragment-with-renames.graphql new file mode 100644 index 00000000..3a231fa7 --- /dev/null +++ b/tests/querygen-compile-run/tests/queries/github/inline-fragment-with-renames.graphql @@ -0,0 +1,32 @@ +query RepoIssues($first: Int!) { + repository(owner: "obmarg", name: "cynic") { + one: issueOrPullRequest(number: 100) { + ... on Issue { + body + assignees(first: $first) { + totalCount + } + } + ... on PullRequest { + body + assignees(first: $first) { + totalCount + } + } + } + two: issueOrPullRequest(number: 200) { + ... on Issue { + closed + assignees(first: $first) { + totalCount + } + } + ... on PullRequest { + changedFiles + assignees(first: $first) { + totalCount + } + } + } + } +} diff --git a/tests/querygen-compile-run/tests/queries/github/issue-786.graphql b/tests/querygen-compile-run/tests/queries/github/issue-786.graphql new file mode 100644 index 00000000..82818cca --- /dev/null +++ b/tests/querygen-compile-run/tests/queries/github/issue-786.graphql @@ -0,0 +1,45 @@ +query ProjectMetadataQuery($id: ID!) { + node(id: $id) { + ... on ProjectV2 { + id + title + number + public + readme + shortDescription + url + fields(first: 100) { + totalCount + pageInfo { + hasNextPage + endCursor + hasPreviousPage + startCursor + } + nodes { + ... on ProjectV2SingleSelectField { + name + dataType + options { + id + name + nameHTML + } + } + ... on ProjectV2Field { + name + dataType + } + ... on ProjectV2IterationField { + name + dataType + configuration { + duration + startDay + } + } + } + } + } + } +} diff --git a/tests/ui-tests/tests/cases/wrong-enum-type.rs b/tests/ui-tests/tests/cases/wrong-enum-type.rs index 0c3cadb4..7c51d93e 100644 --- a/tests/ui-tests/tests/cases/wrong-enum-type.rs +++ b/tests/ui-tests/tests/cases/wrong-enum-type.rs @@ -25,6 +25,7 @@ mod queries { Stale, Success, TimedOut, + StartupFailure, } }