From a4f3fc6e9e5b89e7dc5ea82f9a10c5b8b457f961 Mon Sep 17 00:00:00 2001 From: hubot Date: Fri, 21 Apr 2023 01:58:23 +0000 Subject: [PATCH] :arrow_up: GraphQL schema --- graphql/schema.graphql | 35198 ++++++++++++++++++++++++++------------- 1 file changed, 23912 insertions(+), 11286 deletions(-) diff --git a/graphql/schema.graphql b/graphql/schema.graphql index b91ce825c2..7c2c6d08af 100644 --- a/graphql/schema.graphql +++ b/graphql/schema.graphql @@ -1,3 +1,23 @@ +directive @requiredCapabilities(requiredCapabilities: [String!]) on OBJECT | SCALAR | ARGUMENT_DEFINITION | INTERFACE | INPUT_OBJECT | FIELD_DEFINITION | ENUM | ENUM_VALUE | UNION | INPUT_FIELD_DEFINITION + +"""Autogenerated input type of AbortQueuedMigrations""" +input AbortQueuedMigrationsInput { + """The ID of the organization that is running the migrations.""" + ownerId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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""" input AcceptEnterpriseAdministratorInvitationInput { """The id of the invitation being accepted""" @@ -80,6 +100,15 @@ type ActorLocation { regionCode: String } +"""The actor's type.""" +enum ActorType { + """Indicates a user actor.""" + USER + + """Indicates a team actor.""" + TEAM +} + """Autogenerated input type of AddAssigneesToAssignable""" input AddAssigneesToAssignableInput { """The id of the assignable object to add assignees to.""" @@ -128,6 +157,69 @@ type AddCommentPayload { timelineEdge: IssueTimelineItemEdge } +"""Autogenerated input type of AddDiscussionComment""" +input AddDiscussionCommentInput { + """The Node ID of the discussion to comment on.""" + discussionId: ID! + + """ + The Node ID of the discussion comment within this discussion to reply to. + """ + replyToId: ID + + """The contents of the comment.""" + body: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The Node ID of the discussion poll option to vote for.""" + pollOptionId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +"""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. """ @@ -143,6 +235,54 @@ type AddedToProjectEvent implements Node { id: ID! } +"""Autogenerated input type of AddEnterpriseOrganizationMember""" +input AddEnterpriseOrganizationMemberInput { + """The ID of the enterprise which owns the organization.""" + enterpriseId: ID! + + """The ID of the organization the users will be added to.""" + organizationId: ID! + + """The IDs of the enterprise members to add.""" + userIds: [ID!]! + + """The role to assign the users in the organization""" + role: OrganizationMemberRole + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the Enterprise which the admin belongs to.""" + enterpriseId: ID! + + """The login of a member who will receive the support entitlement.""" + login: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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""" input AddLabelsToLabelableInput { """The id of the labelable object to add labels to.""" @@ -215,27 +355,129 @@ type AddProjectColumnPayload { project: Project } +"""Autogenerated input type of AddProjectV2DraftIssue""" +input AddProjectV2DraftIssueInput { + """The ID of the Project to add the draft issue to.""" + projectId: ID! + + """ + 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! + + """The body of the draft issue.""" + body: String + + """The IDs of the assignees of the draft issue.""" + assigneeIds: [ID!] + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 { + """The ID of the Project to add the item to.""" + projectId: ID! + + """The id of the Issue or Pull Request to add.""" + contentId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 node ID of the pull request reviewing""" + """ + 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 - """The Node ID of the review to modify.""" + """ + 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 - """The SHA of the commit to comment on.""" + """ + 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 text of the comment.""" - body: String! + """ + 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 - """The relative path of the file to comment on.""" + """ + 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.""" + """ + 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 comment id to reply to.""" + """ + 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 """A unique identifier for the client performing the mutation.""" @@ -268,7 +510,14 @@ input AddPullRequestReviewInput { """The event to perform on the pull request review.""" event: PullRequestReviewEvent - """The review line comments.""" + """ + 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] """The review line comment threads.""" @@ -305,9 +554,10 @@ input AddPullRequestReviewThreadInput { pullRequestReviewId: ID """ - 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 """ 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. @@ -320,6 +570,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 + """A unique identifier for the client performing the mutation.""" clientMutationId: String } @@ -353,6 +608,9 @@ type AddReactionPayload { """The reaction object.""" reaction: Reaction + """The reaction groups for the subject.""" + reactionGroups: [ReactionGroup!] + """The reactable subject.""" subject: Reactable } @@ -375,6 +633,57 @@ type AddStarPayload { starrable: Starrable } +"""Autogenerated input type of AddUpvote""" +input AddUpvoteInput { + """The Node ID of the discussion or comment to upvote.""" + subjectId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the owner to add the domain to""" + ownerId: ID! + + """The URL of the domain""" + domain: URI! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 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.""" type App implements Node { """Identifies the date and time when the object was created.""" @@ -387,6 +696,26 @@ 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.""" logoBackgroundColor: String! @@ -409,6 +738,69 @@ type App implements Node { url: URI! } +"""Autogenerated input type of ApproveDeployments""" +input ApproveDeploymentsInput { + """The node ID of the workflow run containing the pending deployments.""" + workflowRunId: ID! + + """The ids of environments to reject deployments""" + environmentIds: [ID!]! + + """Optional comment for approving deployments""" + comment: String = "" + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the verifiable domain to approve.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the Project to archive the item from.""" + projectId: ID! + + """The ID of the ProjectV2Item to archive.""" + itemId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of ArchiveProjectV2Item""" +type ArchiveProjectV2ItemPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The item archived from the project.""" + item: ProjectV2Item +} + """Autogenerated input type of ArchiveRepository""" input ArchiveRepositoryInput { """The ID of the repository to mark as archived.""" @@ -570,23 +962,129 @@ type AutomaticBaseChangeSucceededEvent implements Node { pullRequest: PullRequest! } -""" -Represents a 'base_ref_changed' event on a given issue or pull request. -""" -type BaseRefChangedEvent implements Node { +"""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! - """ - 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 + """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 +} + +"""A (potentially binary) string encoded using base64.""" +scalar Base64String + +""" +Represents a 'base_ref_changed' event on a given issue or pull request. +""" +type BaseRefChangedEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor + + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """ + Identifies the name of the base ref for the pull request after it was changed. + """ + currentRefName: String! + + """Identifies the primary key from the database.""" + databaseId: Int id: ID! """ @@ -642,6 +1140,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.""" type Blame { """The list of ranges from a Git blame.""" @@ -669,7 +1173,7 @@ type BlameRange { } """Represents a Git blob.""" -type Blob implements Node & GitObject { +type Blob implements GitObject & Node { """An abbreviated version of the Git object ID""" abbreviatedOid: String! @@ -729,6 +1233,39 @@ type Bot implements Node & Actor & 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.""" @@ -737,6 +1274,9 @@ type BranchProtectionRule implements Node { """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 """ @@ -756,6 +1296,40 @@ 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.""" creator: Actor @@ -771,6 +1345,17 @@ type BranchProtectionRule implements Node { """Can admins overwrite branch protection.""" 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""" matchingRefs( """Filters refs with query on name""" @@ -814,14 +1399,29 @@ type BranchProtectionRule implements Node { """The repository associated with this branch protection rule.""" 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.""" requiresApprovingReviews: Boolean! @@ -831,6 +1431,14 @@ type BranchProtectionRule implements Node { """Are commits required to be signed.""" 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! @@ -924,6 +1532,106 @@ type BranchProtectionRuleEdge { node: BranchProtectionRule } +""" +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 BulkSponsorship { + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String + + """ + The amount to pay to the sponsorable in US dollars. Valid values: 1-12000. + """ + amount: Int! +} + +"""Types that can represent a repository ruleset bypass actor.""" +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 actor that can force push.""" + actor: BranchActorAllowanceActor + + """ + Identifies the branch protection rule associated with the allowed user, team, or app. + """ + branchProtectionRule: BranchProtectionRule + id: ID! +} + +"""The connection type for BypassForcePushAllowance.""" +type BypassForcePushAllowanceConnection { + """A list of edges.""" + edges: [BypassForcePushAllowanceEdge] + + """A list of nodes.""" + nodes: [BypassForcePushAllowance] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type BypassForcePushAllowanceEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: BypassForcePushAllowance +} + +""" +A user, team, or app who has the ability to bypass a pull request requirement on a protected branch. +""" +type BypassPullRequestAllowance implements Node { + """The actor that can bypass.""" + actor: BranchActorAllowanceActor + + """ + Identifies the branch protection rule associated with the allowed user, team, or app. + """ + branchProtectionRule: BranchProtectionRule + id: ID! +} + +"""The connection type for BypassPullRequestAllowance.""" +type BypassPullRequestAllowanceConnection { + """A list of edges.""" + edges: [BypassPullRequestAllowanceEdge] + + """A list of nodes.""" + nodes: [BypassPullRequestAllowance] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type BypassPullRequestAllowanceEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: BypassPullRequestAllowance +} + """Autogenerated input type of CancelEnterpriseAdminInvitation""" input CancelEnterpriseAdminInvitationInput { """The Node ID of the pending enterprise administrator invitation.""" @@ -947,6 +1655,43 @@ type CancelEnterpriseAdminInvitationPayload { message: String } +"""Autogenerated input type of CancelSponsorship""" +input CancelSponsorshipInput { + """ + 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 + + """ + 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 + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 { """ @@ -1134,7 +1879,7 @@ enum CheckConclusionState { } """A check run.""" -type CheckRun implements Node & UniformResourceLocatable { +type CheckRun implements Node & UniformResourceLocatable & RequirableByPullRequest { """The check run's annotations""" annotations( """Returns the elements in the list that come after the specified cursor.""" @@ -1164,6 +1909,9 @@ type CheckRun implements Node & UniformResourceLocatable { """Identifies the primary key from the database.""" 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. """ @@ -1173,9 +1921,23 @@ type CheckRun implements Node & UniformResourceLocatable { 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.""" permalink: URI! @@ -1191,6 +1953,26 @@ type CheckRun implements Node & UniformResourceLocatable { """The current status of the check run.""" 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""" summary: String @@ -1251,9 +2033,15 @@ input CheckRunFilter { """Filters the check runs by this name.""" checkName: String - """Filters the check runs by this status.""" + """Filters the check runs by this status. Superceded by statuses.""" status: CheckStatusState -} + + """Filters the check runs by this status. Overrides status.""" + statuses: [CheckStatusState!] + + """Filters the check runs by these conclusions.""" + conclusions: [CheckConclusionState!] +} """Descriptive details about the check run.""" input CheckRunOutput { @@ -1289,6 +2077,62 @@ input CheckRunOutputImage { caption: String } +"""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 { """Every check run available.""" @@ -1309,10 +2153,67 @@ enum CheckStatusState { """The check suite or run has been completed.""" COMPLETED + """The check suite or run is in waiting state.""" + WAITING + + """The check suite or run is in pending state.""" + PENDING + """The check suite or run has been requested.""" REQUESTED } +"""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 { """The GitHub App which created this check suite.""" @@ -1350,6 +2251,9 @@ type CheckSuite implements Node { """Identifies the date and time when the object was created.""" createdAt: DateTime! + """The user who triggered the check suite.""" + creator: User + """Identifies the primary key from the database.""" databaseId: Int id: ID! @@ -1403,6 +2307,9 @@ type CheckSuite implements Node { """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.""" @@ -1449,6 +2356,9 @@ input CheckSuiteFilter { checkName: String } +"""An object which can have its data claimed or claim data from another.""" +union Claimable = Mannequin | User + """Autogenerated input type of ClearLabelsFromLabelable""" input ClearLabelsFromLabelableInput { """The id of the labelable object to clear the labels from.""" @@ -1467,6 +2377,30 @@ type ClearLabelsFromLabelablePayload { labelable: Labelable } +"""Autogenerated input type of ClearProjectV2ItemFieldValue""" +input ClearProjectV2ItemFieldValueInput { + """The ID of the Project.""" + projectId: ID! + + """The ID of the item to be cleared.""" + itemId: ID! + + """The ID of the field to be cleared.""" + fieldId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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""" input CloneProjectInput { """The owner ID to create the project under.""" @@ -1542,12 +2476,18 @@ type CloneTemplateRepositoryPayload { """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! """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! } """Represents a 'closed' event on any `Closable`.""" @@ -1568,15 +2508,42 @@ type ClosedEvent implements Node & UniformResourceLocatable { """The HTTP path for this closed event.""" resourcePath: URI! + """The reason the issue state was changed to closed.""" + stateReason: IssueStateReason + """The HTTP URL for this closed event.""" url: URI! } +"""Autogenerated input type of CloseDiscussion""" +input CloseDiscussionInput { + """ID of the discussion to be closed.""" + discussionId: ID! + + """The reason why the discussion is being closed.""" + reason: DiscussionCloseReason = RESOLVED + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + """Autogenerated input type of CloseIssue""" input CloseIssueInput { """ID of the issue to be closed.""" issueId: ID! + """The reason the issue is to be closed.""" + stateReason: IssueClosedStateReason + """A unique identifier for the client performing the mutation.""" clientMutationId: String } @@ -1783,7 +2750,11 @@ type Commit implements Node & GitObject & Subscribable & UniformResourceLocatabl """The number of additions in this commit.""" 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( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -1839,8 +2810,12 @@ type Commit implements Node & GitObject & Subscribable & UniformResourceLocatabl path: String! ): Blame! - """The number of changed files in this commit.""" - changedFiles: Int! + """ + 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.""" checkSuites( @@ -1888,10 +2863,10 @@ type Commit implements Node & GitObject & Subscribable & UniformResourceLocatabl """The datetime when this commit was committed.""" 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 """The number of deletions in this commit.""" @@ -2000,9 +2975,6 @@ type Commit implements Node & GitObject & Subscribable & UniformResourceLocatabl last: Int ): CommitConnection! - """The datetime when this commit was pushed.""" - pushedDate: DateTime - """The Repository this commit belongs to""" repository: Repository! @@ -2086,6 +3058,36 @@ input CommitAuthor { emails: [String!] } +"""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.""" type CommitComment implements Node & Comment & Deletable & Minimizable & Updatable & UpdatableComment & Reactable & RepositoryNode { """The actor who authored the comment.""" @@ -2132,7 +3134,11 @@ type CommitComment implements Node & Comment & Deletable & Minimizable & Updatab """The moment the editor made the last edit""" 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 """Identifies the file path associated with the comment.""" @@ -2370,6 +3376,182 @@ type CommitHistoryConnection { totalCount: Int! } +"""A message to include with a new commit""" +input CommitMessage { + """The headline of the message.""" + headline: String! + + """The body of the message.""" + body: 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 Node ID of the Ref to be updated.""" + id: ID + + """The nameWithOwner of the repository to commit to.""" + repositoryNameWithOwner: String + + """The unqualified name of the branch to append the commit to.""" + branchName: 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 both ahead and behind of the base ref, indicating git history has diverged. + """ + DIVERGED + + """The head ref is ahead of the base ref.""" + AHEAD + + """The head ref is behind the base ref.""" + BEHIND + + """The head ref and base ref are identical.""" + IDENTICAL +} + """Represents a 'connected' event on a given issue or pull request.""" type ConnectedEvent implements Node { """Identifies the actor who performed the event.""" @@ -2449,6 +3631,12 @@ type ContributionCalendarDay { """How many contributions were made by the user on this day.""" 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.""" date: Date! @@ -2482,6 +3670,30 @@ type ContributionCalendarWeek { firstDay: Date! } +"""Varying levels of contributions from none to many.""" +enum ContributionLevel { + """No contributions occurred.""" + NONE + + """Lowest 25% of days of contributions.""" + FIRST_QUARTILE + + """ + 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 + + """ + Highest 25% of days of contributions. More contributions than the third quartile. + """ + FOURTH_QUARTILE +} + """Ordering options for contribution connections.""" input ContributionOrder { """The ordering direction.""" @@ -2683,7 +3895,11 @@ type ContributionsCollection { excludePopular: Boolean = false ): [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( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -2822,6 +4038,19 @@ type ConvertedNoteToIssueEvent implements Node { id: ID! } +"""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 ConvertProjectCardNoteToIssue""" input ConvertProjectCardNoteToIssueInput { """The ProjectCard ID to convert.""" @@ -2851,12 +4080,30 @@ type ConvertProjectCardNoteToIssuePayload { projectCard: ProjectCard } -"""Represents a 'convert_to_draft' event on a given pull request.""" -type ConvertToDraftEvent implements Node & UniformResourceLocatable { - """Identifies the actor who performed the event.""" - actor: Actor +"""Autogenerated input type of ConvertPullRequestToDraft""" +input ConvertPullRequestToDraftInput { + """ID of the pull request to convert to draft""" + pullRequestId: ID! - """Identifies the date and time when the object was created.""" + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of ConvertPullRequestToDraft""" +type ConvertPullRequestToDraftPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The pull request that is now a draft.""" + pullRequest: PullRequest +} + +"""Represents a 'convert_to_draft' event on a given pull request.""" +type ConvertToDraftEvent implements Node & UniformResourceLocatable { + """Identifies the actor who performed the event.""" + actor: Actor + + """Identifies the date and time when the object was created.""" createdAt: DateTime! id: ID! @@ -2870,6 +4117,63 @@ type ConvertToDraftEvent implements Node & UniformResourceLocatable { url: URI! } +"""Autogenerated input type of CopyProjectV2""" +input CopyProjectV2Input { + """The ID of the source Project to copy.""" + projectId: ID! + + """The owner ID of the new project.""" + ownerId: ID! + + """The title of the project.""" + title: String! + + """Include draft issues in the new project""" + includeDraftIssues: Boolean = false + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 { + """The Node ID of the owner scoping the reattributable data.""" + ownerId: ID! + + """The Node ID of the account owning the data to reattribute.""" + sourceId: ID! + + """The Node ID of the account which may claim the data.""" + targetId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { """ @@ -2892,6 +4196,9 @@ input CreateBranchProtectionRuleInput { """Are merge commits prohibited from being pushed to this branch.""" requiresLinearHistory: Boolean + """Is branch creation a protected operation.""" + blocksCreations: Boolean + """Are force pushes allowed on this branch.""" allowsForcePushes: Boolean @@ -2919,14 +4226,24 @@ 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!] + """ + A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. + """ + bypassPullRequestActorIds: [ID!] + + """ + A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. + """ + bypassForcePushActorIds: [ID!] + """Is pushing to matching branches restricted.""" restrictsPushes: Boolean - """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!] """ @@ -2934,6 +4251,34 @@ input CreateBranchProtectionRuleInput { """ requiredStatusCheckContexts: [String!] + """The list of required status checks""" + requiredStatusChecks: [RequiredStatusCheckInput!] + + """Are successful deployments required before merging.""" + requiresDeployments: Boolean + + """The list of required deployment environments""" + requiredDeploymentEnvironments: [String!] + + """Are conversations required to be resolved before merging.""" + requiresConversationResolution: Boolean + + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: 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 + + """ + 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 + """A unique identifier for the client performing the mutation.""" clientMutationId: String } @@ -3020,6 +4365,38 @@ type CreateCheckSuitePayload { clientMutationId: String } +"""Autogenerated input type of CreateCommitOnBranch""" +input CreateCommitOnBranchInput { + """The Ref to be updated. Must be a branch.""" + branch: CommittableBranch! + + """A description of changes to files in this commit.""" + fileChanges: FileChanges + + """The commit message the be included with the commit.""" + message: CommitMessage! + + """ + The git commit oid expected at the head of the branch prior to the commit + """ + expectedHeadOid: GitObjectID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of CreateCommitOnBranch""" +type CreateCommitOnBranchPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The new commit.""" + commit: Commit + + """The ref which has been updated to point to the new commit.""" + ref: Ref +} + """Represents the contribution a user made by committing to a repository.""" type CreatedCommitContribution implements Contribution { """How many commits were made on this day to this repository by the user.""" @@ -3079,6 +4456,33 @@ type CreatedCommitContributionEdge { node: CreatedCommitContribution } +"""Autogenerated input type of CreateDiscussion""" +input CreateDiscussionInput { + """The id of the repository on which to create the discussion.""" + repositoryId: ID! + + """The title of the discussion.""" + title: String! + + """The body of the discussion.""" + body: String! + + """The id of the discussion category to associate with this discussion.""" + categoryId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 +} + """Represents the contribution a user made on GitHub by opening an issue.""" type CreatedIssueContribution implements Contribution { """ @@ -3351,6 +4755,27 @@ type CreateEnterpriseOrganizationPayload { organization: Organization } +"""Autogenerated input type of CreateEnvironment""" +input CreateEnvironmentInput { + """The node ID of the repository.""" + repositoryId: ID! + + """The name of the environment.""" + name: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of CreateEnvironment""" +type CreateEnvironmentPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The new or existing environment.""" + environment: Environment +} + """Autogenerated input type of CreateIpAllowListEntry""" input CreateIpAllowListEntryInput { """The ID of the owner for which to create the new IP allow list entry.""" @@ -3421,6 +4846,72 @@ type CreateIssuePayload { issue: Issue } +"""Autogenerated input type of CreateLinkedBranch""" +input CreateLinkedBranchInput { + """ID of the issue to link to.""" + issueId: ID! + + """The commit SHA to base the new branch on.""" + oid: GitObjectID! + + """The name of the new branch. Defaults to issue number and title.""" + name: String + + """ + ID of the repository to create the branch in. Defaults to the issue repository. + """ + repositoryId: ID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of CreateLinkedBranch""" +type CreateLinkedBranchPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The new branch issue reference.""" + linkedBranch: LinkedBranch +} + +"""Autogenerated input type of CreateMigrationSource""" +input CreateMigrationSourceInput { + """The migration source name.""" + name: String! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + url: String + + """The migration source access token.""" + accessToken: String + + """The migration source type.""" + type: MigrationSourceType! + + """The ID of the organization that will own the migration source.""" + ownerId: ID! + + """ + The GitHub personal access token of the user importing to the target repository. + """ + githubPat: String + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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""" input CreateProjectInput { """The owner ID to create the project under.""" @@ -3453,6 +4944,64 @@ type CreateProjectPayload { project: Project } +"""Autogenerated input type of CreateProjectV2Field""" +input CreateProjectV2FieldInput { + """The ID of the Project to create the field in.""" + projectId: ID! + + """The data type of the field.""" + dataType: ProjectV2CustomFieldType! + + """The name of the field.""" + name: String! + + """ + Options for a single select field. At least one value is required if data_type is SINGLE_SELECT + """ + singleSelectOptions: [ProjectV2SingleSelectFieldOptionInput!] + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The owner ID to create the project under.""" + ownerId: ID! + + """The title of the project.""" + title: String! + + """The repository to link the project to.""" + repositoryId: ID + + """ + The team to link the project to. The team will be granted read permissions. + """ + teamId: ID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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""" input CreatePullRequestInput { """The Node ID of the repository.""" @@ -3473,6 +5022,9 @@ input CreatePullRequestInput { """ headRefName: String! + """The Node ID of the head repository.""" + headRepositoryId: ID + """The title of the pull request.""" title: String! @@ -3572,66 +5124,339 @@ type CreateRepositoryPayload { repository: Repository } -"""Autogenerated input type of CreateTeamDiscussionComment""" -input CreateTeamDiscussionCommentInput { - """The ID of the discussion to which the comment belongs.""" - discussionId: ID! +"""Autogenerated input type of CreateRepositoryRuleset""" +input CreateRepositoryRulesetInput { + """ + The global relay id of the source in which a new ruleset should be created in. + """ + sourceId: ID! - """The content of the comment.""" - body: String! + """The name of the ruleset.""" + name: String! + + """The target of the ruleset.""" + target: RepositoryRulesetTarget + + """The list of rules for this ruleset""" + rules: [RepositoryRuleInput!] + + """The set of conditions for this ruleset""" + conditions: RepositoryRuleConditionsInput! + + """The enforcement level for this ruleset""" + enforcement: RuleEnforcement! + + """The bypass mode for this ruleset""" + bypassMode: RuleBypassMode + + """A list of Team or App IDs allowed to bypass rules in this ruleset.""" + bypassActorIds: [ID!] """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of CreateTeamDiscussionComment""" -type CreateTeamDiscussionCommentPayload { +"""Autogenerated return type of CreateRepositoryRuleset""" +type CreateRepositoryRulesetPayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String - """The new comment.""" - teamDiscussionComment: TeamDiscussionComment + """The newly created Ruleset.""" + ruleset: RepositoryRuleset } -"""Autogenerated input type of CreateTeamDiscussion""" -input CreateTeamDiscussionInput { - """The ID of the team to which the discussion belongs.""" - teamId: ID! +"""Autogenerated input type of CreateSponsorship""" +input CreateSponsorshipInput { + """ + 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 - """The title of the discussion.""" - title: String! + """ + 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 content of the discussion.""" - body: String! + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID """ - If true, restricts the visiblity of this discussion to team members and - organization admins. If false or not specified, allows any organization member - to view this discussion. + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. """ - private: Boolean + sponsorableLogin: String + + """ + The ID of one of sponsorable's existing tiers to sponsor at. Required if amount is not specified. + """ + tierId: ID + + """ + The amount to pay to the sponsorable in US dollars. Required if a tierId is not specified. Valid values: 1-12000. + """ + amount: Int + + """ + Whether the sponsorship should happen monthly/yearly or just this one time. Required if a tierId is not specified. + """ + isRecurring: Boolean + + """Whether the sponsor should receive email updates from the sponsorable.""" + receiveEmails: Boolean = true + + """ + 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 """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of CreateTeamDiscussion""" -type CreateTeamDiscussionPayload { +"""Autogenerated return type of CreateSponsorship""" +type CreateSponsorshipPayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String - """The new discussion.""" - teamDiscussion: TeamDiscussion + """The sponsorship that was started.""" + sponsorship: Sponsorship } -"""Represents a mention made by one issue or pull request to another.""" -type CrossReferencedEvent implements Node & UniformResourceLocatable { - """Identifies the actor who performed the event.""" - actor: Actor +"""Autogenerated input type of CreateSponsorships""" +input CreateSponsorshipsInput { + """ + The username of the user or organization who is acting as the sponsor, paying for the sponsorships. + """ + sponsorLogin: String! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """The list of maintainers to sponsor and for how much apiece.""" + sponsorships: [BulkSponsorship!]! + + """ + Whether the sponsor should receive email updates from the sponsorables. + """ + receiveEmails: Boolean = false + + """ + 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 + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 CreateSponsorsListing""" +input CreateSponsorsListingInput { + """ + 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 + + """ + 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 + + """ + 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 + + """ + 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 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 + + """ + 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 + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 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 + + """ + 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 + + """The value of the new tier in US dollars. Valid values: 1-12000.""" + amount: Int! + + """ + Whether sponsorships using this tier should happen monthly/yearly or just once. + """ + isRecurring: Boolean = true + + """ + 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 + + """ + 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 + + """ + 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 message new sponsors at this tier will receive.""" + welcomeMessage: 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 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 + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 CreateTeamDiscussionComment""" +input CreateTeamDiscussionCommentInput { + """The ID of the discussion to which the comment belongs.""" + discussionId: ID! + + """The content of the comment.""" + body: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of CreateTeamDiscussionComment""" +type CreateTeamDiscussionCommentPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The new comment.""" + teamDiscussionComment: TeamDiscussionComment +} + +"""Autogenerated input type of CreateTeamDiscussion""" +input CreateTeamDiscussionInput { + """The ID of the team to which the discussion belongs.""" + teamId: ID! + + """The title of the discussion.""" + title: String! + + """The content of the discussion.""" + body: String! + + """ + 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. + """ + private: Boolean + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of CreateTeamDiscussion""" +type CreateTeamDiscussionPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The new discussion.""" + teamDiscussion: TeamDiscussion +} + +"""Represents a mention made by one issue or pull request to another.""" +type CrossReferencedEvent implements UniformResourceLocatable & Node { + """Identifies the actor who performed the event.""" + actor: Actor + + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + id: ID! """Reference originated in a different repository.""" isCrossRepository: Boolean! @@ -3655,6 +5480,52 @@ type CrossReferencedEvent implements Node & UniformResourceLocatable { willCloseTarget: Boolean! } +"""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 +} + """An ISO-8601 encoded date string.""" scalar Date @@ -3685,7 +5556,7 @@ type DeclineTopicSuggestionPayload { topic: Topic } -"""The possible default permissions for repositories.""" +"""The possible base permissions for repositories.""" enum DefaultRepositoryPermissionField { """No access""" NONE @@ -3736,6 +5607,57 @@ type DeleteDeploymentPayload { clientMutationId: String } +"""Autogenerated input type of DeleteDiscussionComment""" +input DeleteDiscussionCommentInput { + """The Node id of the discussion comment to delete.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The id of the discussion to delete.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The Node ID of the environment to be deleted.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of DeleteEnvironment""" +type DeleteEnvironmentPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + """Autogenerated input type of DeleteIpAllowListEntry""" input DeleteIpAllowListEntryInput { """The ID of the IP allow list entry to delete.""" @@ -3787,6 +5709,24 @@ type DeleteIssuePayload { repository: Repository } +"""Autogenerated input type of DeleteLinkedBranch""" +input DeleteLinkedBranchInput { + """The ID of the linked branch""" + linkedBranchId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 DeleteProjectCard""" input DeleteProjectCardInput { """The id of the card to delete.""" @@ -3847,79 +5787,175 @@ type DeleteProjectPayload { owner: ProjectOwner } -"""Autogenerated input type of DeletePullRequestReviewComment""" -input DeletePullRequestReviewCommentInput { - """The ID of the comment to delete.""" - id: ID! +"""Autogenerated input type of DeleteProjectV2Field""" +input DeleteProjectV2FieldInput { + """The ID of the field to delete.""" + fieldId: ID! """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of DeletePullRequestReviewComment""" -type DeletePullRequestReviewCommentPayload { +"""Autogenerated return type of DeleteProjectV2Field""" +type DeleteProjectV2FieldPayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String - """The pull request review the deleted comment belonged to.""" - pullRequestReview: PullRequestReview + """The deleted field.""" + projectV2Field: ProjectV2FieldConfiguration } -"""Autogenerated input type of DeletePullRequestReview""" -input DeletePullRequestReviewInput { - """The Node ID of the pull request review to delete.""" - pullRequestReviewId: ID! +"""Autogenerated input type of DeleteProjectV2""" +input DeleteProjectV2Input { + """The ID of the Project to delete.""" + projectId: ID! """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of DeletePullRequestReview""" -type DeletePullRequestReviewPayload { +"""Autogenerated input type of DeleteProjectV2Item""" +input DeleteProjectV2ItemInput { + """The ID of the Project from which the item should be removed.""" + projectId: ID! + + """The ID of the item to be removed.""" + itemId: ID! + """A unique identifier for the client performing the mutation.""" clientMutationId: String - - """The deleted pull request review.""" - pullRequestReview: PullRequestReview } -"""Autogenerated input type of DeleteRef""" -input DeleteRefInput { - """The Node ID of the Ref to be deleted.""" - refId: ID! - +"""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 DeleteRef""" -type DeleteRefPayload { +"""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 DeleteTeamDiscussionComment""" -input DeleteTeamDiscussionCommentInput { - """The ID of the comment to delete.""" - id: ID! +"""Autogenerated input type of DeleteProjectV2Workflow""" +input DeleteProjectV2WorkflowInput { + """The ID of the workflow to be removed.""" + workflowId: ID! """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of DeleteTeamDiscussionComment""" -type DeleteTeamDiscussionCommentPayload { +"""Autogenerated return type of DeleteProjectV2Workflow""" +type DeleteProjectV2WorkflowPayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String -} -"""Autogenerated input type of DeleteTeamDiscussion""" -input DeleteTeamDiscussionInput { - """The discussion ID to delete.""" - id: ID! + """The ID of the deleted workflow.""" + deletedWorkflowId: ID - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The project the deleted workflow was in.""" + projectV2: ProjectV2 +} + +"""Autogenerated input type of DeletePullRequestReviewComment""" +input DeletePullRequestReviewCommentInput { + """The ID of the comment to delete.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of DeletePullRequestReviewComment""" +type DeletePullRequestReviewCommentPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The pull request review the deleted comment belonged to.""" + pullRequestReview: PullRequestReview + + """The deleted pull request review comment.""" + pullRequestReviewComment: PullRequestReviewComment +} + +"""Autogenerated input type of DeletePullRequestReview""" +input DeletePullRequestReviewInput { + """The Node ID of the pull request review to delete.""" + pullRequestReviewId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of DeletePullRequestReview""" +type DeletePullRequestReviewPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The deleted pull request review.""" + pullRequestReview: PullRequestReview +} + +"""Autogenerated input type of DeleteRef""" +input DeleteRefInput { + """The Node ID of the Ref to be deleted.""" + refId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of DeleteRef""" +type DeleteRefPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated input type of DeleteRepositoryRuleset""" +input DeleteRepositoryRulesetInput { + """The global relay id of the repository ruleset to be deleted.""" + repositoryRulesetId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of DeleteRepositoryRuleset""" +type DeleteRepositoryRulesetPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated input type of DeleteTeamDiscussionComment""" +input DeleteTeamDiscussionCommentInput { + """The ID of the comment to delete.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of DeleteTeamDiscussionComment""" +type DeleteTeamDiscussionCommentPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated input type of DeleteTeamDiscussion""" +input DeleteTeamDiscussionInput { + """The discussion ID to delete.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } """Autogenerated return type of DeleteTeamDiscussion""" @@ -3928,6 +5964,24 @@ type DeleteTeamDiscussionPayload { clientMutationId: String } +"""Autogenerated input type of DeleteVerifiableDomain""" +input DeleteVerifiableDomainInput { + """The ID of the verifiable domain to delete.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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.""" type DemilestonedEvent implements Node { """Identifies the actor who performed the event.""" @@ -3946,6 +6000,63 @@ 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! +} + +"""The possible ecosystems of a dependency graph package.""" +enum DependencyGraphEcosystem { + """Ruby gems hosted at RubyGems.org""" + RUBYGEMS + + """JavaScript packages hosted at npmjs.com""" + NPM + + """Python packages hosted at PyPI.org""" + PIP + + """Java artifacts hosted at the Maven central repository""" + MAVEN + + """.NET packages hosted at the NuGet Gallery""" + NUGET + + """PHP packages hosted at packagist.org""" + COMPOSER + + """Go modules""" + GO + + """GitHub Actions""" + ACTIONS + + """Rust crates""" + RUST + + """Dart packages hosted at pub.dev""" + PUB +} + """Represents a 'deployed' event on a given pull request.""" type DeployedEvent implements Node { """Identifies the actor who performed the event.""" @@ -4141,74 +6252,107 @@ enum DeploymentOrderField { CREATED_AT } -"""The possible states in which a deployment can be.""" -enum DeploymentState { - """The pending deployment was not updated after 30 minutes.""" - ABANDONED +"""A protection rule.""" +type DeploymentProtectionRule { + """Identifies the primary key from the database.""" + databaseId: Int - """The deployment is currently active.""" - ACTIVE + """The teams or users that can review the deployment""" + reviewers( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """An inactive transient deployment.""" - DESTROYED + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The deployment experienced an error.""" - ERROR + """Returns the first _n_ elements from the list.""" + first: Int - """The deployment has failed.""" - FAILURE + """Returns the last _n_ elements from the list.""" + last: Int + ): DeploymentReviewerConnection! - """The deployment is inactive.""" - INACTIVE + """The timeout in minutes for this protection rule.""" + timeout: Int! - """The deployment is pending.""" - PENDING + """The type of protection rule.""" + type: DeploymentProtectionRuleType! +} - """The deployment has queued""" - QUEUED +"""The connection type for DeploymentProtectionRule.""" +type DeploymentProtectionRuleConnection { + """A list of edges.""" + edges: [DeploymentProtectionRuleEdge] - """The deployment is in progress.""" - IN_PROGRESS + """A list of nodes.""" + nodes: [DeploymentProtectionRule] - """The deployment is waiting.""" - WAITING + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""Describes the status of a given deployment attempt.""" -type DeploymentStatus implements Node { - """Identifies the date and time when the object was created.""" - createdAt: DateTime! +"""An edge in a connection.""" +type DeploymentProtectionRuleEdge { + """A cursor for use in pagination.""" + cursor: String! - """Identifies the actor who triggered the deployment.""" - creator: Actor! + """The item at the end of the edge.""" + node: DeploymentProtectionRule +} - """Identifies the deployment associated with status.""" - deployment: Deployment! +"""The possible protection rule types.""" +enum DeploymentProtectionRuleType { + """Required reviewers""" + REQUIRED_REVIEWERS - """Identifies the description of the deployment.""" - description: String + """Wait timer""" + WAIT_TIMER +} - """Identifies the environment URL of the deployment.""" - environmentUrl: URI - id: ID! +"""A request to deploy a workflow run to an environment.""" +type DeploymentRequest { + """Whether or not the current user can approve the deployment""" + currentUserCanApprove: Boolean! - """Identifies the log URL of the deployment.""" - logUrl: URI + """The target environment of the deployment""" + environment: Environment! - """Identifies the current state of the deployment.""" - state: DeploymentStatusState! + """The teams or users that can review the deployment""" + reviewers( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 DeploymentStatus.""" -type DeploymentStatusConnection { +"""The connection type for DeploymentRequest.""" +type DeploymentRequestConnection { """A list of edges.""" - edges: [DeploymentStatusEdge] + edges: [DeploymentRequestEdge] """A list of nodes.""" - nodes: [DeploymentStatus] + nodes: [DeploymentRequest] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -4218,472 +6362,369 @@ type DeploymentStatusConnection { } """An edge in a connection.""" -type DeploymentStatusEdge { +type DeploymentRequestEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: DeploymentStatus + node: DeploymentRequest } -"""The possible states for a deployment status.""" -enum DeploymentStatusState { - """The deployment is pending.""" - PENDING +"""A deployment review.""" +type DeploymentReview implements Node { + """The comment the user left.""" + comment: String! - """The deployment was successful.""" - SUCCESS + """Identifies the primary key from the database.""" + databaseId: Int - """The deployment has failed.""" - FAILURE + """The environments approved or rejected""" + environments( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The deployment is inactive.""" - INACTIVE + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The deployment experienced an error.""" - ERROR + """Returns the first _n_ elements from the list.""" + first: Int - """The deployment is queued""" - QUEUED + """Returns the last _n_ elements from the list.""" + last: Int + ): EnvironmentConnection! + id: ID! - """The deployment is in progress.""" - IN_PROGRESS + """The decision of the user.""" + state: DeploymentReviewState! + + """The user that reviewed the deployment.""" + user: User! } -"""The possible sides of a diff.""" -enum DiffSide { - """The left side of the diff.""" - LEFT +"""The connection type for DeploymentReview.""" +type DeploymentReviewConnection { + """A list of edges.""" + edges: [DeploymentReviewEdge] - """The right side of the diff.""" - RIGHT + """A list of nodes.""" + nodes: [DeploymentReview] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""Represents a 'disconnected' event on a given issue or pull request.""" -type DisconnectedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor +"""An edge in a connection.""" +type DeploymentReviewEdge { + """A cursor for use in pagination.""" + cursor: String! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """The item at the end of the edge.""" + node: DeploymentReview +} - """Reference originated in a different repository.""" - isCrossRepository: Boolean! +"""Users and teams.""" +union DeploymentReviewer = Team | User - """Issue or pull request from which the issue was disconnected.""" - source: ReferencedSubject! +"""The connection type for DeploymentReviewer.""" +type DeploymentReviewerConnection { + """A list of edges.""" + edges: [DeploymentReviewerEdge] - """Issue or pull request which was disconnected.""" - subject: ReferencedSubject! -} + """A list of nodes.""" + nodes: [DeploymentReviewer] -"""Autogenerated input type of DismissPullRequestReview""" -input DismissPullRequestReviewInput { - """The Node ID of the pull request review to modify.""" - pullRequestReviewId: ID! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The contents of the pull request review dismissal message.""" - message: String! + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """A unique identifier for the client performing the mutation.""" - clientMutationId: String +"""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 } -"""Autogenerated return type of DismissPullRequestReview""" -type DismissPullRequestReviewPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String +"""The possible states for a deployment review.""" +enum DeploymentReviewState { + """The deployment was approved.""" + APPROVED - """The dismissed pull request review.""" - pullRequestReview: PullRequestReview + """The deployment was rejected.""" + REJECTED } -"""Specifies a review comment to be left with a Pull Request Review.""" -input DraftPullRequestReviewComment { - """Path to the file being commented on.""" - path: String! +"""The possible states in which a deployment can be.""" +enum DeploymentState { + """The pending deployment was not updated after 30 minutes.""" + ABANDONED - """Position in the file to leave a comment on.""" - position: Int! + """The deployment is currently active.""" + ACTIVE - """Body of the comment to leave.""" - body: String! -} + """An inactive transient deployment.""" + DESTROYED -""" -Specifies a review comment thread to be left with a Pull Request Review. -""" -input DraftPullRequestReviewThread { - """Path to the file being commented on.""" - path: String! + """The deployment experienced an error.""" + ERROR - """ - The line of the blob to which the thread refers. The end of the line range for multi-line comments. - """ - line: Int! + """The deployment has failed.""" + FAILURE - """ - The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range. - """ - side: DiffSide = RIGHT + """The deployment is inactive.""" + INACTIVE - """The first line of the range to which the comment refers.""" - startLine: Int + """The deployment is pending.""" + PENDING - """The side of the diff on which the start line resides.""" - startSide: DiffSide = RIGHT + """The deployment was successful.""" + SUCCESS - """Body of the comment to leave.""" - body: String! -} + """The deployment has queued""" + QUEUED -""" -An account to manage multiple organizations with consolidated policy and billing. -""" -type Enterprise implements Node { - """A URL pointing to the enterprise's public avatar.""" - avatarUrl( - """The size of the resulting square image.""" - size: Int - ): URI! + """The deployment is in progress.""" + IN_PROGRESS - """Enterprise billing information visible to enterprise billing managers.""" - billingInfo: EnterpriseBillingInfo + """The deployment is waiting.""" + WAITING +} +"""Describes the status of a given deployment attempt.""" +type DeploymentStatus implements Node { """Identifies the date and time when the object was created.""" createdAt: DateTime! - """Identifies the primary key from the database.""" - databaseId: Int + """Identifies the actor who triggered the deployment.""" + creator: Actor! - """The description of the enterprise.""" + """Identifies the deployment associated with status.""" + deployment: Deployment! + + """Identifies the description of the deployment.""" description: String - """The description of the enterprise as HTML.""" - descriptionHTML: HTML! + """Identifies the environment URL of the deployment.""" + environmentUrl: URI id: ID! - """The location of the enterprise.""" - location: String + """Identifies the log URL of the deployment.""" + logUrl: URI - """A list of users who are members of this enterprise.""" - members( - """Only return members within the organizations with these logins""" - organizationLogins: [String!] + """Identifies the current state of the deployment.""" + state: DeploymentStatusState! - """The search string to look for.""" - query: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """Ordering options for members returned from the connection.""" - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} +"""The connection type for DeploymentStatus.""" +type DeploymentStatusConnection { + """A list of edges.""" + edges: [DeploymentStatusEdge] - """The role of the user in the enterprise organization or server.""" - role: EnterpriseUserAccountMembershipRole + """A list of nodes.""" + nodes: [DeploymentStatus] - """Only return members within the selected GitHub Enterprise deployment""" - deployment: EnterpriseUserDeployment + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""An edge in a connection.""" +type DeploymentStatusEdge { + """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: DeploymentStatus +} - """Returns the last _n_ elements from the list.""" - last: Int - ): EnterpriseMemberConnection! +"""The possible states for a deployment status.""" +enum DeploymentStatusState { + """The deployment is pending.""" + PENDING - """The name of the enterprise.""" - name: String! + """The deployment was successful.""" + SUCCESS - """A list of organizations that belong to this enterprise.""" - organizations( - """The search string to look for.""" - query: String + """The deployment has failed.""" + FAILURE - """Ordering options for organizations returned from the connection.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """The deployment is inactive.""" + INACTIVE - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The deployment experienced an error.""" + ERROR - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The deployment is queued""" + QUEUED - """Returns the first _n_ elements from the list.""" - first: Int + """The deployment is in progress.""" + IN_PROGRESS - """Returns the last _n_ elements from the list.""" - last: Int - ): OrganizationConnection! + """The deployment is waiting.""" + WAITING +} - """Enterprise information only visible to enterprise owners.""" - ownerInfo: EnterpriseOwnerInfo +"""Autogenerated input type of DequeuePullRequest""" +input DequeuePullRequestInput { + """The ID of the pull request to be dequeued.""" + id: ID! - """The HTTP path for this enterprise.""" - resourcePath: URI! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The URL-friendly identifier for the enterprise.""" - slug: String! +"""Autogenerated return type of DequeuePullRequest""" +type DequeuePullRequestPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The HTTP URL for this enterprise.""" - url: URI! + """The merge queue entry of the dequeued pull request.""" + mergeQueueEntry: MergeQueueEntry +} - """A list of user accounts on this enterprise.""" - userAccounts( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""The possible sides of a diff.""" +enum DiffSide { + """The left side of the diff.""" + LEFT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The right side of the diff.""" + RIGHT +} - """Returns the first _n_ elements from the list.""" - first: Int +"""Autogenerated input type of DisablePullRequestAutoMerge""" +input DisablePullRequestAutoMergeInput { + """ID of the pull request to disable auto merge on.""" + pullRequestId: ID! - """Returns the last _n_ elements from the list.""" - last: Int - ): EnterpriseUserAccountConnection! - - """Is the current viewer an admin of this enterprise?""" - viewerIsAdmin: Boolean! - - """The URL of the enterprise website.""" - websiteUrl: URI + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""The connection type for User.""" -type EnterpriseAdministratorConnection { - """A list of edges.""" - edges: [EnterpriseAdministratorEdge] - - """A list of nodes.""" - nodes: [User] +"""Autogenerated return type of DisablePullRequestAutoMerge""" +type DisablePullRequestAutoMergePayload { + """Identifies the actor who performed the event.""" + actor: Actor - """Information to aid in pagination.""" - pageInfo: PageInfo! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The pull request auto merge was disabled on.""" + pullRequest: PullRequest } -"""A User who is an administrator of an enterprise.""" -type EnterpriseAdministratorEdge { - """A cursor for use in pagination.""" - cursor: String! - - """The item at the end of the edge.""" - node: User - - """The role of the administrator.""" - role: EnterpriseAdministratorRole! -} +"""Represents a 'disconnected' event on a given issue or pull request.""" +type DisconnectedEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor -""" -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 email of the person who was invited to the enterprise.""" - email: String - - """The enterprise the invitation is for.""" - enterprise: Enterprise! id: ID! - """The user who was invited to the enterprise.""" - invitee: User - - """The user who created the invitation.""" - inviter: User - - """ - The invitee's pending role in the enterprise (owner or billing_manager). - """ - role: EnterpriseAdministratorRole! -} - -"""The connection type for EnterpriseAdministratorInvitation.""" -type EnterpriseAdministratorInvitationConnection { - """A list of edges.""" - edges: [EnterpriseAdministratorInvitationEdge] - - """A list of nodes.""" - nodes: [EnterpriseAdministratorInvitation] - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """Identifies the total count of items in the connection.""" - totalCount: Int! -} - -"""An edge in a connection.""" -type EnterpriseAdministratorInvitationEdge { - """A cursor for use in pagination.""" - cursor: String! - - """The item at the end of the edge.""" - node: EnterpriseAdministratorInvitation -} - -"""Ordering options for enterprise administrator invitation connections""" -input EnterpriseAdministratorInvitationOrder { - """The field to order enterprise administrator invitations by.""" - field: EnterpriseAdministratorInvitationOrderField! - - """The ordering direction.""" - direction: OrderDirection! -} - -""" -Properties by which enterprise administrator invitation connections can be ordered. -""" -enum EnterpriseAdministratorInvitationOrderField { - """Order enterprise administrator member invitations by creation time""" - CREATED_AT -} - -"""The possible administrator roles in an enterprise account.""" -enum EnterpriseAdministratorRole { - """Represents an owner of the enterprise account.""" - OWNER - - """Represents a billing manager of the enterprise account.""" - BILLING_MANAGER -} - -"""Metadata for an audit entry containing enterprise account information.""" -interface EnterpriseAuditEntryData { - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI + """Reference originated in a different repository.""" + isCrossRepository: Boolean! - """The slug of the enterprise.""" - enterpriseSlug: String + """Issue or pull request from which the issue was disconnected.""" + source: ReferencedSubject! - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI + """Issue or pull request which was disconnected.""" + subject: ReferencedSubject! } -""" -Enterprise billing information visible to enterprise billing managers and owners. -""" -type EnterpriseBillingInfo { - """The number of licenseable users/emails across the enterprise.""" - allLicensableUsersCount: Int! +"""A discussion in a repository.""" +type Discussion implements Closable & Comment & Updatable & Deletable & Labelable & Lockable & RepositoryNode & Subscribable & Reactable & Votable & Node { + """Reason that the conversation was locked.""" + activeLockReason: LockReason - """ - The number of data packs used by all organizations owned by the enterprise. - """ - assetPacks: Int! + """The comment chosen as this discussion's answer, if any.""" + answer: DiscussionComment - """ - The bandwidth quota in GB for all organizations owned by the enterprise. - """ - bandwidthQuota: Float! + """The time when a user chose this discussion's answer, if answered.""" + answerChosenAt: DateTime - """ - The bandwidth usage in GB for all organizations owned by the enterprise. - """ - bandwidthUsage: Float! + """The user who chose this discussion's answer, if answered.""" + answerChosenBy: Actor - """The bandwidth usage as a percentage of the bandwidth quota.""" - bandwidthUsagePercentage: Int! + """The actor who authored the comment.""" + author: Actor - """The storage quota in GB for all organizations owned by the enterprise.""" - storageQuota: Float! + """Author's association with the subject of the comment.""" + authorAssociation: CommentAuthorAssociation! - """The storage usage in GB for all organizations owned by the enterprise.""" - storageUsage: Float! + """The main text of the discussion post.""" + body: String! - """The storage usage as a percentage of the storage quota.""" - storageUsagePercentage: Int! + """The body rendered to HTML.""" + bodyHTML: HTML! - """ - The number of available licenses across all owned organizations based on the unique number of billable users. - """ - totalAvailableLicenses: Int! + """The body rendered to text.""" + bodyText: String! - """The total number of licenses allocated.""" - totalLicenses: Int! -} + """The category for this discussion.""" + category: DiscussionCategory! -""" -The possible values for the enterprise default repository permission setting. -""" -enum EnterpriseDefaultRepositoryPermissionSettingValue { """ - Organizations in the enterprise choose default repository permissions for their members. + Indicates if the object is closed (definition of closed may depend on type) """ - NO_POLICY + closed: Boolean! - """ - Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. - """ - ADMIN + """Identifies the date and time when the object was closed.""" + closedAt: DateTime - """ - Organization members will be able to clone, pull, and push all organization repositories. - """ - WRITE + """The replies to the discussion.""" + comments( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """ - Organization members will be able to clone and pull all organization repositories. - """ - READ + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Organization members will only be able to clone and pull public repositories. - """ - NONE -} + """Returns the first _n_ elements from the list.""" + first: Int -"""The possible values for an enabled/disabled enterprise setting.""" -enum EnterpriseEnabledDisabledSettingValue { - """The setting is enabled for organizations in the enterprise.""" - ENABLED + """Returns the last _n_ elements from the list.""" + last: Int + ): DiscussionCommentConnection! - """The setting is disabled for organizations in the enterprise.""" - DISABLED + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """There is no policy set for organizations in the enterprise.""" - NO_POLICY -} + """Check if this comment was created via an email reply.""" + createdViaEmail: Boolean! -"""The possible values for an enabled/no policy enterprise setting.""" -enum EnterpriseEnabledSettingValue { - """The setting is enabled for organizations in the enterprise.""" - ENABLED + """Identifies the primary key from the database.""" + databaseId: Int - """There is no policy set for organizations in the enterprise.""" - NO_POLICY -} + """The actor who edited the comment.""" + editor: Actor + id: ID! -""" -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. + Check if this comment was edited and includes an edit with the creation data """ - digestMethod: SamlDigestAlgorithm + includesCreatedEdit: Boolean! - """The enterprise this identity provider belongs to.""" - enterprise: Enterprise + """A list of labels associated with the object.""" + labels( + """Ordering options for labels returned from the connection.""" + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - """ExternalIdentities provisioned by this identity provider.""" - externalIdentities( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -4697,143 +6738,164 @@ type EnterpriseIdentityProvider implements Node { """Returns the last _n_ elements from the list.""" last: Int - ): ExternalIdentityConnection! - id: ID! + ): LabelConnection - """ - The x509 certificate used by the identity provider to sign assertions and responses. - """ - idpCertificate: X509Certificate + """The moment the editor made the last edit""" + lastEditedAt: DateTime - """The Issuer Entity ID for the SAML identity provider.""" - issuer: String + """`true` if the object is locked""" + locked: Boolean! - """ - Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable. - """ - recoveryCodes: [String!] + """The number identifying this discussion within the repository.""" + number: Int! - """ - The signature algorithm used to sign SAML requests for the identity provider. - """ - signatureMethod: SamlSignatureAlgorithm + """The poll associated with this discussion, if one exists.""" + poll: DiscussionPoll - """The URL endpoint for the identity provider's SAML SSO.""" - ssoUrl: URI -} + """Identifies when the comment was published at.""" + publishedAt: DateTime -"""An object that is a member of an enterprise.""" -union EnterpriseMember = EnterpriseUserAccount | User + """A list of reactions grouped by content left on the subject.""" + reactionGroups: [ReactionGroup!] -"""The connection type for EnterpriseMember.""" -type EnterpriseMemberConnection { - """A list of edges.""" - edges: [EnterpriseMemberEdge] + """A list of Reactions left on the Issue.""" + reactions( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A list of nodes.""" - nodes: [EnterpriseMember] + """ + 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 -""" -A User who is a member of an enterprise through one or more organizations. -""" -type EnterpriseMemberEdge { - """A cursor for use in pagination.""" - cursor: String! + """Allows filtering Reactions by emoji.""" + content: ReactionContent - """The item at the end of the edge.""" - node: EnterpriseMember -} + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! -"""Ordering options for enterprise member connections.""" -input EnterpriseMemberOrder { - """The field to order enterprise members by.""" - field: EnterpriseMemberOrderField! + """The repository associated with this node.""" + repository: Repository! - """The ordering direction.""" - direction: OrderDirection! -} + """The path for this discussion.""" + resourcePath: URI! -"""Properties by which enterprise member connections can be ordered.""" -enum EnterpriseMemberOrderField { - """Order enterprise members by login""" - LOGIN + """Identifies the reason for the discussion's state.""" + stateReason: DiscussionStateReason - """Order enterprise members by creation time""" - CREATED_AT -} + """The title of this discussion.""" + title: String! + + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """Number of upvotes that this subject has received.""" + upvoteCount: Int! + + """The URL for this discussion.""" + 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! -""" -The possible values for the enterprise members can create repositories setting. -""" -enum EnterpriseMembersCanCreateRepositoriesSettingValue { """ - Organization administrators choose whether to allow members to create repositories. + Check if the viewer is able to change their subscription status for the repository. """ - NO_POLICY + viewerCanSubscribe: Boolean! - """Members will be able to create public and private repositories.""" - ALL + """Check if the current viewer can update this object.""" + viewerCanUpdate: Boolean! - """Members will be able to create only public repositories.""" - PUBLIC + """ + Whether or not the current user can add or remove an upvote on this subject. + """ + viewerCanUpvote: Boolean! - """Members will be able to create only private repositories.""" - PRIVATE + """Did the viewer author this comment.""" + viewerDidAuthor: Boolean! - """Members will not be able to create public or private repositories.""" - DISABLED + """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 } -"""The possible values for the members can make purchases setting.""" -enum EnterpriseMembersCanMakePurchasesSettingValue { - """The setting is enabled for organizations in the enterprise.""" - ENABLED +"""A category for discussions in a repository.""" +type DiscussionCategory implements Node & RepositoryNode { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The setting is disabled for organizations in the enterprise.""" - DISABLED -} + """A description of this category.""" + description: String -"""The connection type for Organization.""" -type EnterpriseOrganizationMembershipConnection { - """A list of edges.""" - edges: [EnterpriseOrganizationMembershipEdge] + """An emoji representing this category.""" + emoji: String! - """A list of nodes.""" - nodes: [Organization] + """This category's emoji rendered as HTML.""" + emojiHTML: HTML! + id: ID! - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + Whether or not discussions in this category support choosing an answer with the markDiscussionCommentAsAnswer mutation. + """ + isAnswerable: Boolean! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The name of this category.""" + name: String! -"""An enterprise organization that a user is a member of.""" -type EnterpriseOrganizationMembershipEdge { - """A cursor for use in pagination.""" - cursor: String! + """The repository associated with this node.""" + repository: Repository! - """The item at the end of the edge.""" - node: Organization + """The slug of this category.""" + slug: String! - """The role of the user in the enterprise membership.""" - role: EnterpriseUserAccountMembershipRole! + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! } -"""The connection type for User.""" -type EnterpriseOutsideCollaboratorConnection { +"""The connection type for DiscussionCategory.""" +type DiscussionCategoryConnection { """A list of edges.""" - edges: [EnterpriseOutsideCollaboratorEdge] + edges: [DiscussionCategoryEdge] """A list of nodes.""" - nodes: [User] + nodes: [DiscussionCategory] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -4842,98 +6904,92 @@ type EnterpriseOutsideCollaboratorConnection { totalCount: Int! } -""" -A User who is an outside collaborator of an enterprise through one or more organizations. -""" -type EnterpriseOutsideCollaboratorEdge { +"""An edge in a connection.""" +type DiscussionCategoryEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: User + node: DiscussionCategory +} - """The enterprise organization repositories this user is a member of.""" - repositories( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""The possible reasons for closing a discussion.""" +enum DiscussionCloseReason { + """The discussion has been resolved""" + RESOLVED - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The discussion is no longer relevant""" + OUTDATED - """Returns the first _n_ elements from the list.""" - first: Int + """The discussion is a duplicate of another""" + DUPLICATE +} - """Returns the last _n_ elements from the list.""" - last: Int +"""A comment on a discussion.""" +type DiscussionComment implements Comment & Deletable & Minimizable & Updatable & UpdatableComment & Reactable & Votable & Node { + """The actor who authored the comment.""" + author: Actor - """Ordering options for repositories.""" - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! -} + """Author's association with the subject of the comment.""" + authorAssociation: CommentAuthorAssociation! -"""Enterprise information only visible to enterprise owners.""" -type EnterpriseOwnerInfo { - """A list of all of the administrators for this enterprise.""" - admins( - """The search string to look for.""" - query: String + """The body as Markdown.""" + body: String! - """The role to filter by.""" - role: EnterpriseAdministratorRole + """The body rendered to HTML.""" + bodyHTML: HTML! - """Ordering options for administrators returned from the connection.""" - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + """The body rendered to text.""" + bodyText: String! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Check if this comment was created via an email reply.""" + createdViaEmail: Boolean! - """Returns the first _n_ elements from the list.""" - first: Int + """Identifies the primary key from the database.""" + databaseId: Int - """Returns the last _n_ elements from the list.""" - last: Int - ): EnterpriseAdministratorConnection! + """The time when this replied-to comment was deleted""" + deletedAt: DateTime + + """The discussion this comment was created in""" + discussion: Discussion + + """The actor who edited the comment.""" + editor: Actor + id: ID! """ - A list of users in the enterprise who currently have two-factor authentication disabled. + Check if this comment was edited and includes an edit with the creation data """ - affiliatedUsersWithTwoFactorDisabled( - """Returns the elements in the list that come after the specified cursor.""" - after: String + includesCreatedEdit: Boolean! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Has this comment been chosen as the answer of its discussion?""" + isAnswer: Boolean! - """Returns the first _n_ elements from the list.""" - first: Int + """Returns whether or not a comment has been minimized.""" + isMinimized: Boolean! - """Returns the last _n_ elements from the list.""" - last: Int - ): UserConnection! + """The moment the editor made the last edit""" + lastEditedAt: DateTime """ - Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. """ - affiliatedUsersWithTwoFactorDisabledExist: Boolean! + minimizedReason: String - """ - The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. - """ - allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! + """Identifies when the comment was published at.""" + publishedAt: DateTime - """ - A list of enterprise organizations configured with the provided private repository forking setting value. - """ - allowPrivateRepositoryForkingSettingOrganizations( + """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 @@ -4948,22 +7004,15 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int - """The setting value to find organizations for.""" - value: Boolean! - - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """Allows filtering Reactions by emoji.""" + content: ReactionContent - """ - The setting value for base repository permissions for organizations in this enterprise. - """ - defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! - """ - A list of enterprise organizations configured with the provided default repository permission. - """ - defaultRepositoryPermissionSettingOrganizations( + """The threaded replies to this comment.""" + replies( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -4977,16 +7026,25 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int + ): DiscussionCommentConnection! - """The permission to find organizations for.""" - value: DefaultRepositoryPermissionField! + """The discussion comment this comment is a reply to""" + replyTo: DiscussionComment - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """The path for this discussion comment.""" + resourcePath: URI! - """Enterprise Server installations owned by the enterprise.""" - enterpriseServerInstallations( + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """Number of upvotes that this subject has received.""" + upvoteCount: Int! + + """The URL for this discussion 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 @@ -5000,138 +7058,115 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int + ): UserContentEditConnection - """ - Whether or not to only return installations discovered via GitHub Connect. - """ - connectedOnly: Boolean = false - - """Ordering options for Enterprise Server installations returned.""" - orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} - ): EnterpriseServerInstallationConnection! - - """ - The setting value for whether the enterprise has an IP allow list enabled. - """ - ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + """Check if the current viewer can delete this object.""" + viewerCanDelete: Boolean! - """ - The IP addresses that are allowed to access resources owned by the enterprise. - """ - ipAllowListEntries( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Can the current user mark this comment as an answer?""" + viewerCanMarkAsAnswer: Boolean! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Check if the current viewer can minimize this object.""" + viewerCanMinimize: Boolean! - """Returns the first _n_ elements from the list.""" - first: Int + """Can user react to this subject""" + viewerCanReact: Boolean! - """Returns the last _n_ elements from the list.""" - last: Int + """Can the current user unmark this comment as an answer?""" + viewerCanUnmarkAsAnswer: Boolean! - """Ordering options for IP allow list entries returned.""" - orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} - ): IpAllowListEntryConnection! + """Check if the current viewer can update this object.""" + viewerCanUpdate: Boolean! """ - Whether or not the default repository permission is currently being updated. + Whether or not the current user can add or remove an upvote on this subject. """ - isUpdatingDefaultRepositoryPermission: Boolean! + viewerCanUpvote: Boolean! - """ - Whether the two-factor authentication requirement is currently being enforced. - """ - isUpdatingTwoFactorRequirement: Boolean! + """Reasons why the current viewer can not update this comment.""" + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! - """ - The setting value for whether organization members with admin permissions on a - repository can change repository visibility. - """ - membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! + """Did the viewer author this comment.""" + viewerDidAuthor: Boolean! - """ - 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 + """Whether or not the current user has already upvoted this subject.""" + viewerHasUpvoted: Boolean! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""The connection type for DiscussionComment.""" +type DiscussionCommentConnection { + """A list of edges.""" + edges: [DiscussionCommentEdge] - """Returns the first _n_ elements from the list.""" - first: Int + """A list of nodes.""" + nodes: [DiscussionComment] - """Returns the last _n_ elements from the list.""" - last: Int + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The setting value to find organizations for.""" - value: Boolean! + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! +"""An edge in a connection.""" +type DiscussionCommentEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - The setting value for whether members of organizations in the enterprise can create internal repositories. - """ - membersCanCreateInternalRepositoriesSetting: Boolean + """The item at the end of the edge.""" + node: DiscussionComment +} - """ - The setting value for whether members of organizations in the enterprise can create private repositories. - """ - membersCanCreatePrivateRepositoriesSetting: Boolean +"""The connection type for Discussion.""" +type DiscussionConnection { + """A list of edges.""" + edges: [DiscussionEdge] - """ - The setting value for whether members of organizations in the enterprise can create public repositories. - """ - membersCanCreatePublicRepositoriesSetting: Boolean + """A list of nodes.""" + nodes: [Discussion] - """ - The setting value for whether members of organizations in the enterprise can create repositories. - """ - membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue + """Information to aid in pagination.""" + pageInfo: PageInfo! - """ - 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 + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""An edge in a connection.""" +type DiscussionEdge { + """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: Discussion +} - """Returns the last _n_ elements from the list.""" - last: Int +"""Ways in which lists of discussions can be ordered upon return.""" +input DiscussionOrder { + """The field by which to order discussions.""" + field: DiscussionOrderField! - """The setting to find organizations for.""" - value: OrganizationMembersCanCreateRepositoriesSettingValue! + """The direction in which to order discussions by the specified field.""" + direction: OrderDirection! +} - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! +"""Properties by which discussion connections can be ordered.""" +enum DiscussionOrderField { + """Order discussions by creation time.""" + CREATED_AT - """ - The setting value for whether members with admin permissions for repositories can delete issues. - """ - membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! + """Order discussions by most recent modification time.""" + UPDATED_AT +} - """ - A list of enterprise organizations configured with the provided members can delete issues setting value. - """ - membersCanDeleteIssuesSettingOrganizations( +"""A poll for a discussion.""" +type DiscussionPoll implements Node { + """The discussion that this poll belongs to.""" + discussion: Discussion + id: ID! + + """The options for this poll.""" + options( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -5146,186 +7181,172 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int - """The setting value to find organizations for.""" - value: Boolean! + """How to order the options for the discussion poll.""" + orderBy: DiscussionPollOptionOrder = {field: AUTHORED_ORDER, direction: ASC} + ): DiscussionPollOptionConnection - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """The question that is being asked by this poll.""" + question: String! - """ - The setting value for whether members with admin permissions for repositories can delete or transfer repositories. - """ - membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! + """The total number of votes that have been cast for this poll.""" + totalVoteCount: Int! - """ - A list of enterprise organizations configured with the provided members can delete repositories setting value. - """ - membersCanDeleteRepositoriesSettingOrganizations( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Indicates if the viewer has permission to vote in this poll.""" + viewerCanVote: Boolean! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Indicates if the viewer has voted for any option in this poll.""" + viewerHasVoted: Boolean! +} - """Returns the first _n_ elements from the list.""" - first: Int +"""An option for a discussion poll.""" +type DiscussionPollOption implements Node { + id: ID! - """Returns the last _n_ elements from the list.""" - last: Int + """The text for this option.""" + option: String! - """The setting value to find organizations for.""" - value: Boolean! + """The discussion poll that this option belongs to.""" + poll: DiscussionPoll - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """The total number of votes that have been cast for this option.""" + totalVoteCount: Int! - """ - The setting value for whether members of organizations in the enterprise can invite outside collaborators. - """ - membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! + """Indicates if the viewer has voted for this option in the poll.""" + viewerHasVoted: Boolean! +} - """ - 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 +"""The connection type for DiscussionPollOption.""" +type DiscussionPollOptionConnection { + """A list of edges.""" + edges: [DiscussionPollOptionEdge] - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """A list of nodes.""" + nodes: [DiscussionPollOption] - """Returns the first _n_ elements from the list.""" - first: Int + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Returns the last _n_ elements from the list.""" - last: Int + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The setting value to find organizations for.""" - value: Boolean! +"""An edge in a connection.""" +type DiscussionPollOptionEdge { + """A cursor for use in pagination.""" + cursor: String! - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """The item at the end of the edge.""" + node: DiscussionPollOption +} - """ - Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. - """ - membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! +"""Ordering options for discussion poll option connections.""" +input DiscussionPollOptionOrder { + """The field to order poll options by.""" + field: DiscussionPollOptionOrderField! - """ - The setting value for whether members with admin permissions for repositories can update protected branches. - """ - membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! + """The ordering direction.""" + direction: OrderDirection! +} +"""Properties by which discussion poll option connections can be ordered.""" +enum DiscussionPollOptionOrderField { """ - A list of enterprise organizations configured with the provided members can update protected branches setting value. + Order poll options by the order that the poll author specified when creating the poll. """ - 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 + AUTHORED_ORDER - """Returns the first _n_ elements from the list.""" - first: Int + """Order poll options by the number of votes it has.""" + VOTE_COUNT +} - """Returns the last _n_ elements from the list.""" - last: Int +"""The possible states of a discussion.""" +enum DiscussionState { + """A discussion that is open""" + OPEN - """The setting value to find organizations for.""" - value: Boolean! + """A discussion that has been closed""" + CLOSED +} - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! +"""The possible state reasons of a discussion.""" +enum DiscussionStateReason { + """The discussion has been resolved""" + RESOLVED - """The setting value for whether members can view dependency insights.""" - membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! + """The discussion is no longer relevant""" + OUTDATED - """ - 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 + """The discussion is a duplicate of another""" + DUPLICATE - """ - 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 +"""Autogenerated input type of DismissPullRequestReview""" +input DismissPullRequestReviewInput { + """The Node ID of the pull request review to modify.""" + pullRequestReviewId: ID! - """Returns the last _n_ elements from the list.""" - last: Int + """The contents of the pull request review dismissal message.""" + message: String! - """The setting value to find organizations for.""" - value: Boolean! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! +"""Autogenerated return type of DismissPullRequestReview""" +type DismissPullRequestReviewPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """ - The setting value for whether organization projects are enabled for organizations in this enterprise. - """ - organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue! + """The dismissed pull request review.""" + pullRequestReview: PullRequestReview +} - """ - 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 +"""The possible reasons that a Dependabot alert was dismissed.""" +enum DismissReason { + """A fix has already been started""" + FIX_STARTED - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """No bandwidth to fix this""" + NO_BANDWIDTH - """Returns the first _n_ elements from the list.""" - first: Int + """Risk is tolerable to this project""" + TOLERABLE_RISK - """Returns the last _n_ elements from the list.""" - last: Int + """This alert is inaccurate or incorrect""" + INACCURATE - """The setting value to find organizations for.""" - value: Boolean! + """Vulnerable code is not actually used""" + NOT_USED +} - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! +"""Autogenerated input type of DismissRepositoryVulnerabilityAlert""" +input DismissRepositoryVulnerabilityAlertInput { + """The Dependabot alert ID to dismiss.""" + repositoryVulnerabilityAlertId: ID! - """ - A list of outside collaborators across the repositories in the enterprise. - """ - outsideCollaborators( - """The login of one specific outside collaborator.""" - login: String + """The reason the Dependabot alert is being dismissed.""" + dismissReason: DismissReason! - """The search string to look for.""" - query: String + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """ - Ordering options for outside collaborators returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} +"""Autogenerated return type of DismissRepositoryVulnerabilityAlert""" +type DismissRepositoryVulnerabilityAlertPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """ - Only return outside collaborators on repositories with this visibility. - """ - visibility: RepositoryVisibility + """The Dependabot alert that was dismissed""" + repositoryVulnerabilityAlert: RepositoryVulnerabilityAlert +} +"""A draft issue within a project.""" +type DraftIssue implements Node { + """A list of users to assigned to this draft issue.""" + assignees( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -5339,21 +7360,28 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int - ): EnterpriseOutsideCollaboratorConnection! + ): UserConnection! - """A list of pending administrator invitations for the enterprise.""" - pendingAdminInvitations( - """The search string to look for.""" - query: String + """The body of the draft issue.""" + body: String! - """ - Ordering options for pending enterprise administrator invitations returned from the connection. - """ - orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} + """The body of the draft issue rendered to HTML.""" + bodyHTML: HTML! - """The role to filter by.""" - role: EnterpriseAdministratorRole + """The body of the draft issue rendered to text.""" + 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.""" after: String @@ -5367,20 +7395,12 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int - ): EnterpriseAdministratorInvitationConnection! + ): ProjectV2ItemConnection! """ - A list of pending collaborator invitations across the repositories in the enterprise. + Projects that link to this draft issue (currently draft issue can be linked to only one project). """ - pendingCollaboratorInvitations( - """The search string to look for.""" - query: String - - """ - Ordering options for pending repository collaborator invitations returned from the connection. - """ - orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} - + projectsV2( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -5394,97 +7414,186 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int - ): RepositoryInvitationConnection! + ): ProjectV2Connection! - """ - A list of pending member invitations for organizations in the enterprise. - """ - pendingMemberInvitations( - """The search string to look for.""" - query: String + """The title of the draft issue""" + title: String! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""Specifies a review comment to be left with a Pull Request Review.""" +input DraftPullRequestReviewComment { + """Path to the file being commented on.""" + path: String! - """Returns the first _n_ elements from the list.""" - first: Int + """Position in the file to leave a comment on.""" + position: Int! - """Returns the last _n_ elements from the list.""" - last: Int - ): EnterprisePendingMemberInvitationConnection! + """Body of the comment to leave.""" + body: String! +} + +""" +Specifies a review comment thread to be left with a Pull Request Review. +""" +input DraftPullRequestReviewThread { + """Path to the file being commented on.""" + path: String! """ - The setting value for whether repository projects are enabled in this enterprise. + The line of the blob to which the thread refers. The end of the line range for multi-line comments. """ - repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue! + line: Int! """ - A list of enterprise organizations configured with the provided repository projects setting value. + 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. """ - repositoryProjectsSettingOrganizations( - """Returns the elements in the list that come after the specified cursor.""" - after: String + side: DiffSide = RIGHT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The first line of the range to which the comment refers.""" + startLine: Int - """Returns the first _n_ elements from the list.""" - first: Int + """The side of the diff on which the start line resides.""" + startSide: DiffSide = RIGHT - """Returns the last _n_ elements from the list.""" - last: Int + """Body of the comment to leave.""" + body: String! +} - """The setting value to find organizations for.""" - value: Boolean! +"""Autogenerated input type of EnablePullRequestAutoMerge""" +input EnablePullRequestAutoMergeInput { + """ID of the pull request to enable auto-merge on.""" + pullRequestId: ID! - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """ + 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. + """ + commitHeadline: String - """The SAML Identity Provider for the enterprise.""" - samlIdentityProvider: EnterpriseIdentityProvider + """ + 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 """ - A list of enterprise organizations configured with the SAML single sign-on setting value. + 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. """ - samlIdentityProviderSettingOrganizations( - """Returns the elements in the list that come after the specified cursor.""" - after: String + mergeMethod: PullRequestMergeMethod = MERGE - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The email address to associate with this merge.""" + authorEmail: String - """Returns the first _n_ elements from the list.""" - first: Int + """The expected head OID of the pull request.""" + expectedHeadOid: GitObjectID - """Returns the last _n_ elements from the list.""" - last: Int + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The setting value to find organizations for.""" - value: IdentityProviderConfigurationState! +"""Autogenerated return type of EnablePullRequestAutoMerge""" +type EnablePullRequestAutoMergePayload { + """Identifies the actor who performed the event.""" + actor: Actor - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """ - The setting value for whether team discussions are enabled for organizations in this enterprise. - """ - teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue! + """The pull request auto-merge was enabled on.""" + pullRequest: PullRequest +} + +"""Autogenerated input type of EnqueuePullRequest""" +input EnqueuePullRequestInput { + """The ID of the pull request to enqueue.""" + pullRequestId: ID! + + """Add the pull request to the front of the queue.""" + jump: Boolean + + """The expected head OID of the pull request.""" + expectedHeadOid: GitObjectID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of EnqueuePullRequest""" +type EnqueuePullRequestPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The merge queue entry for the enqueued pull request.""" + mergeQueueEntry: MergeQueueEntry +} + +""" +An account to manage multiple organizations with consolidated policy and billing. +""" +type Enterprise implements Node & 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 URL pointing to the enterprise's public avatar.""" + avatarUrl( + """The size of the resulting square image.""" + size: Int + ): URI! + + """Enterprise billing information visible to enterprise billing managers.""" + billingInfo: EnterpriseBillingInfo + + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """Identifies the primary key from the database.""" + databaseId: Int + + """The description of the enterprise.""" + 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( + """Only return members within the organizations with these logins""" + organizationLogins: [String!] + + """The search string to look for.""" + query: String + + """Ordering options for members returned from the connection.""" + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """The role of the user in the enterprise organization or server.""" + role: EnterpriseUserAccountMembershipRole + + """Only return members within the selected GitHub Enterprise deployment""" + deployment: EnterpriseUserDeployment + + """ + 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 - """ - 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 @@ -5498,23 +7607,22 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int + ): EnterpriseMemberConnection! - """The setting value to find organizations for.""" - value: Boolean! + """The name of the enterprise.""" + name: String! - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """A list of organizations that belong to this enterprise.""" + organizations( + """The search string to look for.""" + query: String - """ - The setting value for whether the enterprise requires two-factor authentication for its organizations and users. - """ - twoFactorRequiredSetting: EnterpriseEnabledSettingValue! + """The viewer's role in an organization.""" + viewerOrganizationRole: RoleInOrganization + + """Ordering options for organizations returned from the connection.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - """ - 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 @@ -5528,19 +7636,31 @@ type EnterpriseOwnerInfo { """Returns the last _n_ elements from the list.""" last: Int + ): OrganizationConnection! - """The setting value to find organizations for.""" - value: Boolean! + """Enterprise information only visible to enterprise owners.""" + ownerInfo: EnterpriseOwnerInfo - """Ordering options for organizations with this setting.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - ): OrganizationConnection! + """The HTTP path for this enterprise.""" + resourcePath: URI! + + """The URL-friendly identifier for the enterprise.""" + slug: String! + + """The HTTP URL for this enterprise.""" + url: URI! + + """Is the current viewer an admin of this enterprise?""" + viewerIsAdmin: Boolean! + + """The URL of the enterprise website.""" + websiteUrl: URI } """The connection type for User.""" -type EnterprisePendingCollaboratorConnection { +type EnterpriseAdministratorConnection { """A list of edges.""" - edges: [EnterprisePendingCollaboratorEdge] + edges: [EnterpriseAdministratorEdge] """A list of nodes.""" nodes: [User] @@ -5552,225 +7672,282 @@ type EnterprisePendingCollaboratorConnection { totalCount: Int! } -""" -A user with an invitation to be a collaborator on a repository owned by an organization in an enterprise. -""" -type EnterprisePendingCollaboratorEdge { +"""A User who is an administrator of an enterprise.""" +type EnterpriseAdministratorEdge { """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( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The role of the administrator.""" + role: EnterpriseAdministratorRole! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +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! - """Returns the first _n_ elements from the list.""" - first: Int + """The email of the person who was invited to the enterprise.""" + email: String - """Returns the last _n_ elements from the list.""" - last: Int + """The enterprise the invitation is for.""" + enterprise: Enterprise! + id: ID! - """Ordering options for repositories.""" - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! + """The user who was invited to the enterprise.""" + invitee: User + + """The user who created the invitation.""" + inviter: User + + """ + The invitee's pending role in the enterprise (owner or billing_manager). + """ + role: EnterpriseAdministratorRole! } -"""The connection type for OrganizationInvitation.""" -type EnterprisePendingMemberInvitationConnection { +"""The connection type for EnterpriseAdministratorInvitation.""" +type EnterpriseAdministratorInvitationConnection { """A list of edges.""" - edges: [EnterprisePendingMemberInvitationEdge] + edges: [EnterpriseAdministratorInvitationEdge] """A list of nodes.""" - nodes: [OrganizationInvitation] + nodes: [EnterpriseAdministratorInvitation] """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 { +"""An edge in a connection.""" +type EnterpriseAdministratorInvitationEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: OrganizationInvitation + node: EnterpriseAdministratorInvitation } -"""A subset of repository information queryable from an enterprise.""" -type EnterpriseRepositoryInfo implements Node { - id: ID! +"""Ordering options for enterprise administrator invitation connections""" +input EnterpriseAdministratorInvitationOrder { + """The field to order enterprise administrator invitations by.""" + field: EnterpriseAdministratorInvitationOrderField! - """Identifies if the repository is private.""" - isPrivate: Boolean! + """The ordering direction.""" + direction: OrderDirection! +} - """The repository's name.""" - name: String! +""" +Properties by which enterprise administrator invitation connections can be ordered. +""" +enum EnterpriseAdministratorInvitationOrderField { + """Order enterprise administrator member invitations by creation time""" + CREATED_AT +} - """The repository's name with owner.""" - nameWithOwner: String! +"""The possible administrator roles in an enterprise account.""" +enum EnterpriseAdministratorRole { + """Represents an owner of the enterprise account.""" + OWNER + + """Represents a billing manager of the enterprise account.""" + BILLING_MANAGER } -"""The connection type for EnterpriseRepositoryInfo.""" -type EnterpriseRepositoryInfoConnection { - """A list of edges.""" - edges: [EnterpriseRepositoryInfoEdge] +""" +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 - """A list of nodes.""" - nodes: [EnterpriseRepositoryInfo] + """ + Members can fork a repository only within the same organization (intra-org). + """ + SAME_ORGANIZATION - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + Members can fork a repository to their user account or within the same organization. + """ + SAME_ORGANIZATION_USER_ACCOUNTS - """Identifies the total count of items in the connection.""" - totalCount: Int! + """ + 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.""" + USER_ACCOUNTS + + """ + Members can fork a repository to their user account or an organization, either inside or outside of this enterprise. + """ + EVERYWHERE } -"""An edge in a connection.""" -type EnterpriseRepositoryInfoEdge { - """A cursor for use in pagination.""" - cursor: String! +"""Metadata for an audit entry containing enterprise account information.""" +interface EnterpriseAuditEntryData { + """The HTTP path for this enterprise.""" + enterpriseResourcePath: URI - """The item at the end of the edge.""" - node: EnterpriseRepositoryInfo + """The slug of the enterprise.""" + enterpriseSlug: String + + """The HTTP URL for this enterprise.""" + enterpriseUrl: URI } -"""An Enterprise Server installation.""" -type EnterpriseServerInstallation implements Node { - """Identifies the date and time when the object was created.""" - createdAt: DateTime! +""" +Enterprise billing information visible to enterprise billing managers and owners. +""" +type EnterpriseBillingInfo { + """The number of licenseable users/emails across the enterprise.""" + allLicensableUsersCount: Int! - """The customer name to which the Enterprise Server installation belongs.""" - customerName: String! + """ + The number of data packs used by all organizations owned by the enterprise. + """ + assetPacks: Int! - """The host name of the Enterprise Server installation.""" - hostName: String! - id: ID! + """ + The bandwidth quota in GB for all organizations owned by the enterprise. + """ + bandwidthQuota: Float! """ - Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect. + The bandwidth usage in GB for all organizations owned by the enterprise. """ - isConnected: Boolean! + bandwidthUsage: Float! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The bandwidth usage as a percentage of the bandwidth quota.""" + bandwidthUsagePercentage: Int! - """User accounts on this Enterprise Server installation.""" - userAccounts( - """ - Ordering options for Enterprise Server user accounts returned from the connection. - """ - orderBy: EnterpriseServerUserAccountOrder = {field: LOGIN, direction: ASC} + """The storage quota in GB for all organizations owned by the enterprise.""" + storageQuota: Float! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The storage usage in GB for all organizations owned by the enterprise.""" + storageUsage: Float! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The storage usage as a percentage of the storage quota.""" + storageUsagePercentage: Int! - """Returns the first _n_ elements from the list.""" - first: Int + """ + The number of available licenses across all owned organizations based on the unique number of billable users. + """ + totalAvailableLicenses: Int! - """Returns the last _n_ elements from the list.""" - last: Int - ): EnterpriseServerUserAccountConnection! + """The total number of licenses allocated.""" + totalLicenses: Int! +} - """User accounts uploads for the Enterprise Server installation.""" - userAccountsUploads( - """ - Ordering options for Enterprise Server user accounts uploads returned from the connection. - """ - orderBy: EnterpriseServerUserAccountsUploadOrder = {field: CREATED_AT, direction: DESC} +""" +The possible values for the enterprise base repository permission setting. +""" +enum EnterpriseDefaultRepositoryPermissionSettingValue { + """ + Organizations in the enterprise choose base repository permissions for their members. + """ + NO_POLICY - """Returns the elements in the list that come after the specified cursor.""" - after: String + """ + Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. + """ + ADMIN - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Organization members will be able to clone, pull, and push all organization repositories. + """ + WRITE - """Returns the first _n_ elements from the list.""" - first: Int + """ + Organization members will be able to clone and pull all organization repositories. + """ + READ - """Returns the last _n_ elements from the list.""" - last: Int - ): EnterpriseServerUserAccountsUploadConnection! + """ + Organization members will only be able to clone and pull public repositories. + """ + NONE } -"""The connection type for EnterpriseServerInstallation.""" -type EnterpriseServerInstallationConnection { +"""The possible values for an enabled/disabled enterprise setting.""" +enum EnterpriseEnabledDisabledSettingValue { + """The setting is enabled for organizations in the enterprise.""" + ENABLED + + """The setting is disabled for organizations in the enterprise.""" + DISABLED + + """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: [EnterpriseServerInstallationEdge] + edges: [EnterpriseFailedInvitationEdge] """A list of nodes.""" - nodes: [EnterpriseServerInstallation] + 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 edge in a connection.""" -type EnterpriseServerInstallationEdge { +"""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: EnterpriseServerInstallation -} - -"""Ordering options for Enterprise Server installation connections.""" -input EnterpriseServerInstallationOrder { - """The field to order Enterprise Server installations by.""" - field: EnterpriseServerInstallationOrderField! - - """The ordering direction.""" - direction: OrderDirection! + node: OrganizationInvitation } """ -Properties by which Enterprise Server installation connections can be ordered. +An identity provider configured to provision identities for an enterprise. """ -enum EnterpriseServerInstallationOrderField { - """Order Enterprise Server installations by host name""" - HOST_NAME +type EnterpriseIdentityProvider implements Node { + """ + The digest algorithm used to sign SAML requests for the identity provider. + """ + digestMethod: SamlDigestAlgorithm - """Order Enterprise Server installations by customer name""" - CUSTOMER_NAME + """The enterprise this identity provider belongs to.""" + enterprise: Enterprise - """Order Enterprise Server installations by creation time""" - CREATED_AT -} + """ExternalIdentities provisioned by this identity provider.""" + externalIdentities( + """Filter to external identities with valid org membership only""" + membersOnly: Boolean -"""A user account on an Enterprise Server installation.""" -type EnterpriseServerUserAccount implements Node { - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """Filter to external identities with the users login""" + login: String - """User emails belonging to this user account.""" - emails( - """ - Ordering options for Enterprise Server user account emails returned from the connection. - """ - orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} + """Filter to external identities with the users userName/NameID attribute""" + userName: String """Returns the elements in the list that come after the specified cursor.""" after: String @@ -5785,44 +7962,41 @@ type EnterpriseServerUserAccount implements Node { """Returns the last _n_ elements from the list.""" last: Int - ): EnterpriseServerUserAccountEmailConnection! - - """The Enterprise Server installation on which this user account exists.""" - enterpriseServerInstallation: EnterpriseServerInstallation! + ): ExternalIdentityConnection! id: ID! """ - Whether the user account is a site administrator on the Enterprise Server installation. + The x509 certificate used by the identity provider to sign assertions and responses. """ - isSiteAdmin: Boolean! + idpCertificate: X509Certificate - """The login of the user account on the Enterprise Server installation.""" - login: String! + """The Issuer Entity ID for the SAML identity provider.""" + issuer: String """ - The profile name of the user account on the Enterprise Server installation. + Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable. """ - profileName: String + recoveryCodes: [String!] """ - The date and time when the user account was created on the Enterprise Server installation. + The signature algorithm used to sign SAML requests for the identity provider. """ - remoteCreatedAt: DateTime! - - """The ID of the user account on the Enterprise Server installation.""" - remoteUserId: Int! + signatureMethod: SamlSignatureAlgorithm - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The URL endpoint for the identity provider's SAML SSO.""" + ssoUrl: URI } -"""The connection type for EnterpriseServerUserAccount.""" -type EnterpriseServerUserAccountConnection { +"""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: [EnterpriseServerUserAccountEdge] + edges: [EnterpriseMemberEdge] """A list of nodes.""" - nodes: [EnterpriseServerUserAccount] + nodes: [EnterpriseMember] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -5831,132 +8005,73 @@ type EnterpriseServerUserAccountConnection { totalCount: Int! } -"""An edge in a connection.""" -type EnterpriseServerUserAccountEdge { +""" +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: EnterpriseServerUserAccount + node: EnterpriseMember } -""" -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! +"""Ordering options for enterprise member connections.""" +input EnterpriseMemberOrder { + """The field to order enterprise members by.""" + field: EnterpriseMemberOrderField! - """ - Indicates whether this is the primary email of the associated user account. - """ - isPrimary: Boolean! + """The ordering direction.""" + direction: OrderDirection! +} - """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 field to order emails by.""" - field: EnterpriseServerUserAccountEmailOrderField! - - """The ordering direction.""" - direction: OrderDirection! -} - -""" -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 field to order user accounts by.""" - field: EnterpriseServerUserAccountOrderField! +"""Properties by which enterprise member connections can be ordered.""" +enum EnterpriseMemberOrderField { + """Order enterprise members by login""" + LOGIN - """The ordering direction.""" - direction: OrderDirection! + """Order enterprise members by creation time""" + CREATED_AT } """ -Properties by which Enterprise Server user account connections can be ordered. +The possible values for the enterprise members can create repositories setting. """ -enum EnterpriseServerUserAccountOrderField { - """Order user accounts by login""" - LOGIN - +enum EnterpriseMembersCanCreateRepositoriesSettingValue { """ - Order user accounts by creation time on the Enterprise Server installation + Organization administrators choose whether to allow members to create repositories. """ - REMOTE_CREATED_AT -} + NO_POLICY -"""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! + """Members will be able to create public and private repositories.""" + ALL - """The enterprise to which this upload belongs.""" - enterprise: Enterprise! + """Members will be able to create only public repositories.""" + PUBLIC - """ - The Enterprise Server installation for which this upload was generated. - """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + """Members will be able to create only private repositories.""" + PRIVATE - """The name of the file uploaded.""" - name: String! + """Members will not be able to create public or private repositories.""" + DISABLED +} - """The synchronization state of the upload""" - syncState: EnterpriseServerUserAccountsUploadSyncState! +"""The possible values for the members can make purchases setting.""" +enum EnterpriseMembersCanMakePurchasesSettingValue { + """The setting is enabled for organizations in the enterprise.""" + ENABLED - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The setting is disabled for organizations in the enterprise.""" + DISABLED } -"""The connection type for EnterpriseServerUserAccountsUpload.""" -type EnterpriseServerUserAccountsUploadConnection { +"""The connection type for Organization.""" +type EnterpriseOrganizationMembershipConnection { """A list of edges.""" - edges: [EnterpriseServerUserAccountsUploadEdge] + edges: [EnterpriseOrganizationMembershipEdge] """A list of nodes.""" - nodes: [EnterpriseServerUserAccountsUpload] + nodes: [Organization] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -5965,81 +8080,82 @@ type EnterpriseServerUserAccountsUploadConnection { totalCount: Int! } -"""An edge in a connection.""" -type EnterpriseServerUserAccountsUploadEdge { +"""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: EnterpriseServerUserAccountsUpload -} - -""" -Ordering options for Enterprise Server user accounts upload connections. -""" -input EnterpriseServerUserAccountsUploadOrder { - """The field to order user accounts uploads by.""" - field: EnterpriseServerUserAccountsUploadOrderField! + node: Organization - """The ordering direction.""" - direction: OrderDirection! + """The role of the user in the enterprise membership.""" + role: EnterpriseUserAccountMembershipRole! } -""" -Properties by which Enterprise Server user accounts upload connections can be ordered. -""" -enum EnterpriseServerUserAccountsUploadOrderField { - """Order user accounts uploads by creation time""" - CREATED_AT -} +"""The connection type for User.""" +type EnterpriseOutsideCollaboratorConnection { + """A list of edges.""" + edges: [EnterpriseOutsideCollaboratorEdge] -"""Synchronization state of the Enterprise Server user accounts upload""" -enum EnterpriseServerUserAccountsUploadSyncState { - """The synchronization of the upload is pending.""" - PENDING + """A list of nodes.""" + nodes: [User] - """The synchronization of the upload succeeded.""" - SUCCESS + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The synchronization of the upload failed.""" - FAILURE + """Identifies the total count of items in the connection.""" + totalCount: Int! } """ -An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations. +A User who is an outside collaborator of an enterprise through one or more organizations. """ -type EnterpriseUserAccount implements Node & Actor { - """A URL pointing to the enterprise user account's public avatar.""" - avatarUrl( - """The size of the resulting square image.""" - size: Int - ): URI! +type EnterpriseOutsideCollaboratorEdge { + """A cursor for use in pagination.""" + cursor: String! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The item at the end of the edge.""" + node: User - """The enterprise in which this user account exists.""" - enterprise: Enterprise! - id: ID! + """The enterprise organization repositories this user is a member of.""" + repositories( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """ - An identifier for the enterprise user account, a login or email address - """ - login: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the enterprise user account""" - name: 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 only visible to enterprise owners.""" +type EnterpriseOwnerInfo { + """A list of all of the administrators for this enterprise.""" + admins( + """Only return members within the organizations with these logins""" + organizationLogins: [String!] - """A list of enterprise organizations this user is a member of.""" - organizations( """The search string to look for.""" query: String - """Ordering options for organizations returned from the connection.""" - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """The role to filter by.""" + role: EnterpriseAdministratorRole - """The role of the user in the enterprise organization.""" - role: EnterpriseUserAccountMembershipRole + """Ordering options for administrators returned from the connection.""" + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """Only return administrators with this two-factor authentication status.""" + hasTwoFactorEnabled: Boolean = null """Returns the elements in the list that come after the specified cursor.""" after: String @@ -6054,262 +8170,265 @@ type EnterpriseUserAccount implements Node & Actor { """Returns the last _n_ elements from the list.""" last: Int - ): EnterpriseOrganizationMembershipConnection! - - """The HTTP path for this user.""" - resourcePath: URI! + ): EnterpriseAdministratorConnection! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """ + A list of users in the enterprise who currently have two-factor authentication disabled. + """ + affiliatedUsersWithTwoFactorDisabled( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for this user.""" - url: URI! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The user within the enterprise.""" - user: User -} + """Returns the first _n_ elements from the list.""" + first: Int -"""The connection type for EnterpriseUserAccount.""" -type EnterpriseUserAccountConnection { - """A list of edges.""" - edges: [EnterpriseUserAccountEdge] + """Returns the last _n_ elements from the list.""" + last: Int + ): UserConnection! - """A list of nodes.""" - nodes: [EnterpriseUserAccount] + """ + Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + """ + affiliatedUsersWithTwoFactorDisabledExist: Boolean! - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. + """ + allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} - -"""An edge in a connection.""" -type EnterpriseUserAccountEdge { - """A cursor for use in pagination.""" - cursor: String! - - """The item at the end of the edge.""" - node: EnterpriseUserAccount -} - -"""The possible roles for enterprise membership.""" -enum EnterpriseUserAccountMembershipRole { - """The user is a member of the enterprise membership.""" - MEMBER + """ + 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 - """The user is an owner of the enterprise membership.""" - OWNER -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -"""The possible GitHub Enterprise deployments where this user can exist.""" -enum EnterpriseUserDeployment { - """The user is part of a GitHub Enterprise Cloud deployment.""" - CLOUD + """Returns the first _n_ elements from the list.""" + first: Int - """The user is part of a GitHub Enterprise Server deployment.""" - SERVER -} + """Returns the last _n_ elements from the list.""" + last: Int -"""An external identity provisioned by SAML SSO or SCIM.""" -type ExternalIdentity implements Node { - """The GUID for this identity""" - guid: String! - id: ID! + """The setting value to find organizations for.""" + value: Boolean! - """Organization invitation for this SCIM-provisioned external identity""" - organizationInvitation: OrganizationInvitation + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """SAML Identity attributes""" - samlIdentity: ExternalIdentitySamlAttributes + """ + The value for the allow private repository forking policy on the enterprise. + """ + allowPrivateRepositoryForkingSettingPolicyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue - """SCIM Identity attributes""" - scimIdentity: ExternalIdentityScimAttributes + """ + The setting value for base repository permissions for organizations in this enterprise. + """ + defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! """ - User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + A list of enterprise organizations configured with the provided base repository permission. """ - user: User -} + defaultRepositoryPermissionSettingOrganizations( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""The connection type for ExternalIdentity.""" -type ExternalIdentityConnection { - """A list of edges.""" - edges: [ExternalIdentityEdge] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """A list of nodes.""" - nodes: [ExternalIdentity] + """Returns the first _n_ elements from the list.""" + first: Int - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Returns the last _n_ elements from the list.""" + last: Int - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The permission to find organizations for.""" + value: DefaultRepositoryPermissionField! -"""An edge in a connection.""" -type ExternalIdentityEdge { - """A cursor for use in pagination.""" - cursor: String! + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """The item at the end of the edge.""" - node: ExternalIdentity -} + """A list of domains owned by the enterprise.""" + domains( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""SAML attributes for the External Identity""" -type ExternalIdentitySamlAttributes { - """The emails associated with the SAML identity""" - emails: [UserEmailMetadata!] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Family name of the SAML identity""" - familyName: String + """Returns the first _n_ elements from the list.""" + first: Int - """Given name of the SAML identity""" - givenName: String + """Returns the last _n_ elements from the list.""" + last: Int - """The groups linked to this identity in IDP""" - groups: [String!] + """Filter whether or not the domain is verified.""" + isVerified: Boolean = null - """The NameID of the SAML identity""" - nameId: String + """Filter whether or not the domain is approved.""" + isApproved: Boolean = null - """The userName of the SAML identity""" - username: String -} + """Ordering options for verifiable domains returned.""" + orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} + ): VerifiableDomainConnection! -"""SCIM attributes for the External Identity""" -type ExternalIdentityScimAttributes { - """The emails associated with the SCIM identity""" - emails: [UserEmailMetadata!] + """Enterprise Server installations owned by the enterprise.""" + enterpriseServerInstallations( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Family name of the SCIM identity""" - familyName: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Given name of the SCIM identity""" - givenName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The groups linked to this identity in IDP""" - groups: [String!] + """Returns the last _n_ elements from the list.""" + last: Int - """The userName of the SCIM identity""" - username: String -} + """ + Whether or not to only return installations discovered via GitHub Connect. + """ + connectedOnly: Boolean = false -"""The possible viewed states of a file .""" -enum FileViewedState { - """The file has new changes since last viewed.""" - DISMISSED + """Ordering options for Enterprise Server installations returned.""" + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + ): EnterpriseServerInstallationConnection! - """The file has been marked as viewed.""" - VIEWED + """A list of failed invitations in the enterprise.""" + failedInvitations( + """The search string to look for.""" + query: String - """The file has not been marked as viewed.""" - UNVIEWED -} + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""The connection type for User.""" -type FollowerConnection { - """A list of edges.""" - edges: [UserEdge] + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """A list of nodes.""" - nodes: [User] + """Returns the first _n_ elements from the list.""" + first: Int - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Returns the last _n_ elements from the list.""" + last: Int + ): EnterpriseFailedInvitationConnection! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """ + The setting value for whether the enterprise has an IP allow list enabled. + """ + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! -"""The connection type for User.""" -type FollowingConnection { - """A list of edges.""" - edges: [UserEdge] + """ + The IP addresses that are allowed to access resources owned by the enterprise. + """ + ipAllowListEntries( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A list of nodes.""" - nodes: [User] + """ + 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 -"""Autogenerated input type of FollowUser""" -input FollowUserInput { - """ID of the user to follow.""" - userId: ID! + """Ordering options for IP allow list entries returned.""" + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """ + The setting value for whether the enterprise has IP allow list configuration for installed GitHub Apps enabled. + """ + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! -"""Autogenerated return type of FollowUser""" -type FollowUserPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """ + Whether or not the base repository permission is currently being updated. + """ + isUpdatingDefaultRepositoryPermission: Boolean! - """The user that was followed.""" - user: User -} + """ + Whether the two-factor authentication requirement is currently being enforced. + """ + isUpdatingTwoFactorRequirement: Boolean! -"""A funding platform link for a repository.""" -type FundingLink { - """The funding platform this link is for.""" - platform: FundingPlatform! + """ + The setting value for whether organization members with admin permissions on a + repository can change repository visibility. + """ + membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! - """The configured URL for this funding link.""" - url: URI! -} + """ + 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 -"""The possible funding platforms for repository funding links.""" -enum FundingPlatform { - """GitHub funding platform.""" - GITHUB - - """Patreon funding platform.""" - PATREON - - """Open Collective funding platform.""" - OPEN_COLLECTIVE - - """Ko-fi funding platform.""" - KO_FI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Tidelift funding platform.""" - TIDELIFT + """Returns the first _n_ elements from the list.""" + first: Int - """Community Bridge funding platform.""" - COMMUNITY_BRIDGE + """Returns the last _n_ elements from the list.""" + last: Int - """Liberapay funding platform.""" - LIBERAPAY + """The setting value to find organizations for.""" + value: Boolean! - """IssueHunt funding platform.""" - ISSUEHUNT + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """Otechie funding platform.""" - OTECHIE + """ + The setting value for whether members of organizations in the enterprise can create internal repositories. + """ + membersCanCreateInternalRepositoriesSetting: Boolean - """Custom funding platform.""" - CUSTOM -} + """ + The setting value for whether members of organizations in the enterprise can create private repositories. + """ + membersCanCreatePrivateRepositoriesSetting: Boolean -"""A generic hovercard context with a message and icon""" -type GenericHovercardContext implements HovercardContext { - """A string describing this context""" - message: String! + """ + The setting value for whether members of organizations in the enterprise can create public repositories. + """ + membersCanCreatePublicRepositoriesSetting: Boolean - """An octicon to accompany this context""" - octicon: String! -} + """ + The setting value for whether members of organizations in the enterprise can create repositories. + """ + membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue -"""A Gist.""" -type Gist implements Node & Starrable & UniformResourceLocatable { - """A list of comments associated with the gist""" - comments( + """ + 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 @@ -6323,25 +8442,23 @@ type Gist implements Node & Starrable & UniformResourceLocatable { """Returns the last _n_ elements from the list.""" last: Int - ): GistCommentConnection! - - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - """The gist description.""" - description: String + """The setting to find organizations for.""" + value: OrganizationMembersCanCreateRepositoriesSettingValue! - """The files in this gist.""" - files( - """The maximum number of files to return.""" - limit: Int = 10 + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """The oid of the files to return""" - oid: GitObjectID - ): [GistFile] + """ + The setting value for whether members with admin permissions for repositories can delete issues. + """ + membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! - """A list of forks associated with the gist""" - forks( + """ + 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 @@ -6356,37 +8473,22 @@ type Gist implements Node & Starrable & UniformResourceLocatable { """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 setting value to find organizations for.""" + value: Boolean! - """The HTML path to this resource.""" - resourcePath: URI! + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! """ - Returns a count of how many stargazers there are on this object - + The setting value for whether members with admin permissions for repositories can delete or transfer repositories. """ - stargazerCount: Int! + membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! - """A list of users who have starred this starrable.""" - stargazers( + """ + 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 @@ -6401,77 +8503,85 @@ type Gist implements Node & Starrable & UniformResourceLocatable { """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 setting value to find organizations for.""" + value: Boolean! - """The HTTP URL for this Gist.""" - url: URI! + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! """ - Returns a boolean indicating whether the viewing user has starred this starrable. + The setting value for whether members of organizations in the enterprise can invite outside collaborators. """ - viewerHasStarred: Boolean! -} - -"""Represents a comment on an Gist.""" -type GistComment implements Node & Comment & Deletable & Minimizable & Updatable & UpdatableComment { - """The actor who authored the comment.""" - author: Actor - - """Author's association with the gist.""" - authorAssociation: CommentAuthorAssociation! + membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! - """Identifies the comment body.""" - body: String! + """ + 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 - """The body rendered to HTML.""" - bodyHTML: HTML! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The body rendered to text.""" - bodyText: String! + """Returns the first _n_ elements from the list.""" + first: Int - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """Returns the last _n_ elements from the list.""" + last: Int - """Check if this comment was created via an email reply.""" - createdViaEmail: Boolean! + """The setting value to find organizations for.""" + value: Boolean! - """Identifies the primary key from the database.""" - databaseId: Int + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """The actor who edited the comment.""" - editor: Actor + """ + Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. + """ + membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! - """The associated gist.""" - gist: Gist! - id: ID! + """ + The setting value for whether members with admin permissions for repositories can update protected branches. + """ + membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! """ - Check if this comment was edited and includes an edit with the creation data + A list of enterprise organizations configured with the provided members can update protected branches setting value. """ - includesCreatedEdit: Boolean! + membersCanUpdateProtectedBranchesSettingOrganizations( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Returns whether or not a comment has been minimized.""" - isMinimized: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The moment the editor made the last edit""" - lastEditedAt: DateTime + """Returns the first _n_ elements from the list.""" + first: Int - """Returns why the comment was minimized.""" - minimizedReason: String + """Returns the last _n_ elements from the list.""" + last: Int - """Identifies when the comment was published at.""" - publishedAt: DateTime + """The setting value to find organizations for.""" + value: Boolean! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """A list of edits to this content.""" - userContentEdits( + """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 @@ -6485,31 +8595,7772 @@ type GistComment implements Node & Comment & Deletable & Minimizable & Updatable """Returns the last _n_ elements from the list.""" last: Int - ): UserContentEditConnection - """Check if the current viewer can delete this object.""" - viewerCanDelete: Boolean! + """The setting value to find organizations for.""" + value: Boolean! - """Check if the current viewer can minimize this object.""" - viewerCanMinimize: Boolean! + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """ + Indicates if email notification delivery for this enterprise is restricted to verified or approved domains. + """ + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! - """Reasons why the current viewer can not update this comment.""" + """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 + + """The setting value to find organizations for.""" + value: Boolean! + + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! + + """ + A list of outside collaborators across the repositories in the enterprise. + """ + outsideCollaborators( + """The login of one specific outside collaborator.""" + login: String + + """The search string to look for.""" + query: String + + """ + Ordering options for outside collaborators returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """ + Only return outside collaborators on repositories with this visibility. + """ + visibility: RepositoryVisibility + + """ + Only return outside collaborators with this two-factor authentication status. + """ + hasTwoFactorEnabled: Boolean = null + + """ + Only return outside collaborators within the organizations with these logins + """ + organizationLogins: [String!] + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): EnterpriseOutsideCollaboratorConnection! + + """A list of pending administrator invitations for the enterprise.""" + pendingAdminInvitations( + """The search string to look for.""" + query: String + + """ + Ordering options for pending enterprise administrator invitations returned from the connection. + """ + orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} + + """The role to filter by.""" + role: EnterpriseAdministratorRole + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): EnterpriseAdministratorInvitationConnection! + + """ + A list of pending collaborator invitations across the repositories in the enterprise. + """ + pendingCollaboratorInvitations( + """The search string to look for.""" + query: String + + """ + Ordering options for pending repository collaborator invitations returned from the connection. + """ + orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): RepositoryInvitationConnection! + + """ + A list of pending member invitations for organizations in the enterprise. + """ + pendingMemberInvitations( + """The search string to look for.""" + query: String + + """Only return invitations within the organizations with these logins""" + organizationLogins: [String!] + + """Only return invitations matching this invitation source""" + invitationSource: OrganizationInvitationSource + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 + + """The setting value to find organizations for.""" + value: Boolean! + + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! + + """ + The SAML Identity Provider for the enterprise. When used by a GitHub App, + requires an installation token with read and write access to members. + """ + samlIdentityProvider: EnterpriseIdentityProvider + + """ + A list of enterprise organizations configured with the SAML single sign-on setting value. + """ + samlIdentityProviderSettingOrganizations( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """The setting value to find organizations for.""" + value: IdentityProviderConfigurationState! + + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): OrganizationConnection! + + """A list of members with a support entitlement.""" + supportEntitlements( + """ + Ordering options for support entitlement users returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 + + """The setting value to find organizations for.""" + value: Boolean! + + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): 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 + + """The setting value to find organizations for.""" + value: Boolean! + + """Ordering options for organizations with this setting.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + ): 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( + """ + Ordering options for Enterprise Server user accounts returned from the connection. + """ + orderBy: EnterpriseServerUserAccountOrder = {field: LOGIN, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): EnterpriseServerUserAccountConnection! + + """User accounts uploads for the Enterprise Server installation.""" + userAccountsUploads( + """ + Ordering options for Enterprise Server user accounts uploads returned from the connection. + """ + orderBy: EnterpriseServerUserAccountsUploadOrder = {field: CREATED_AT, direction: DESC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 field to order Enterprise Server installations by.""" + field: EnterpriseServerInstallationOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +""" +Properties by which Enterprise Server installation connections can be ordered. +""" +enum EnterpriseServerInstallationOrderField { + """Order Enterprise Server installations by host name""" + HOST_NAME + + """Order Enterprise Server installations by customer name""" + CUSTOMER_NAME + + """Order Enterprise Server installations by creation time""" + CREATED_AT +} + +"""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( + """ + Ordering options for Enterprise Server user account emails returned from the connection. + """ + orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 field to order emails by.""" + field: EnterpriseServerUserAccountEmailOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +""" +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 field to order user accounts by.""" + field: EnterpriseServerUserAccountOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +""" +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 field to order user accounts uploads by.""" + field: EnterpriseServerUserAccountsUploadOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +""" +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 is pending.""" + PENDING + + """The synchronization of the upload succeeded.""" + SUCCESS + + """The synchronization of the upload failed.""" + FAILURE +} + +""" +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( + """The search string to look for.""" + query: String + + """Ordering options for installations returned from the connection.""" + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + + """The role of the user in the installation.""" + role: EnterpriseUserAccountMembershipRole + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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( + """The search string to look for.""" + query: String + + """Ordering options for organizations returned from the connection.""" + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """The role of the user in the enterprise organization.""" + role: EnterpriseUserAccountMembershipRole + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): EnterpriseOrganizationMembershipConnection! + + """The HTTP path for this user.""" + resourcePath: URI! + + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """The HTTP URL for this user.""" + url: URI! + + """The user within the enterprise.""" + user: User +} + +"""The possible roles for enterprise membership.""" +enum EnterpriseUserAccountMembershipRole { + """The user is a member of an organization in the enterprise.""" + MEMBER + + """The user is an owner of an organization in the enterprise.""" + OWNER + + """ + The user is not an owner of the enterprise, and not a member or owner of any + organizations in the enterprise; only for EMU-enabled enterprises. + """ + UNAFFILIATED +} + +"""The possible GitHub Enterprise deployments where this user can exist.""" +enum EnterpriseUserDeployment { + """The user is part of a GitHub Enterprise Cloud deployment.""" + CLOUD + + """The user is part of a GitHub Enterprise Server deployment.""" + SERVER +} + +"""An environment.""" +type Environment implements Node { + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! + + """The name of the environment""" + name: String! + + """The protection rules defined for this environment""" + protectionRules( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): DeploymentProtectionRuleConnection! +} + +"""The connection type for Environment.""" +type EnvironmentConnection { + """A list of edges.""" + edges: [EnvironmentEdge] + + """A list of nodes.""" + nodes: [Environment] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type EnvironmentEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: Environment +} + +"""An external identity provisioned by SAML SSO or SCIM.""" +type ExternalIdentity implements Node { + """The GUID for this identity""" + guid: String! + id: ID! + + """Organization invitation for this SCIM-provisioned external identity""" + organizationInvitation: OrganizationInvitation + + """SAML Identity attributes""" + samlIdentity: ExternalIdentitySamlAttributes + + """SCIM Identity attributes""" + scimIdentity: ExternalIdentityScimAttributes + + """ + User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + """ + user: User +} + +"""An attribute for the External Identity attributes collection""" +type ExternalIdentityAttribute { + """The attribute metadata as JSON""" + metadata: String + + """The attribute name""" + name: String! + + """The attribute value""" + value: String! +} + +"""The connection type for ExternalIdentity.""" +type ExternalIdentityConnection { + """A list of edges.""" + edges: [ExternalIdentityEdge] + + """A list of nodes.""" + nodes: [ExternalIdentity] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type ExternalIdentityEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: ExternalIdentity +} + +"""SAML attributes for the External Identity""" +type ExternalIdentitySamlAttributes { + """SAML Identity attributes""" + attributes: [ExternalIdentityAttribute!]! + + """The emails associated with the SAML identity""" + emails: [UserEmailMetadata!] + + """Family name of the SAML identity""" + familyName: String + + """Given name of the SAML identity""" + givenName: String + + """The groups linked to this identity in IDP""" + groups: [String!] + + """The NameID of the SAML identity""" + nameId: String + + """The userName of the SAML identity""" + username: String +} + +"""SCIM attributes for the External Identity""" +type ExternalIdentityScimAttributes { + """The emails associated with the SCIM identity""" + emails: [UserEmailMetadata!] + + """Family name of the SCIM identity""" + familyName: String + + """Given name of the SCIM identity""" + givenName: String + + """The groups linked to this identity in IDP""" + groups: [String!] + + """The userName of the SCIM identity""" + username: String +} + +""" +A command to add a file at the given path with the given contents as part of a +commit. Any existing file at that that path will be replaced. +""" +input FileAddition { + """The path in the repository where the file will be located""" + path: String! + + """The base64 encoded contents of the file""" + contents: Base64String! +} + +""" +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 { + """Files to delete.""" + deletions: [FileDeletion!] = [] + + """File to add or change.""" + additions: [FileAddition!] = [] +} + +"""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 been marked as viewed.""" + VIEWED + + """The file has not been marked as viewed.""" + UNVIEWED +} + +"""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! +} + +"""Autogenerated input type of FollowOrganization""" +input FollowOrganizationInput { + """ID of the organization to follow.""" + organizationId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """ID of the user to follow.""" + userId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +"""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 { + """GitHub funding platform.""" + GITHUB + + """Patreon funding platform.""" + PATREON + + """Open Collective funding platform.""" + OPEN_COLLECTIVE + + """Ko-fi funding platform.""" + KO_FI + + """Tidelift funding platform.""" + TIDELIFT + + """Community Bridge funding platform.""" + COMMUNITY_BRIDGE + + """Liberapay funding platform.""" + LIBERAPAY + + """IssueHunt funding platform.""" + ISSUEHUNT + + """Otechie funding platform.""" + OTECHIE + + """LFX Crowdfunding funding platform.""" + LFX_CROWDFUNDING + + """Custom funding platform.""" + CUSTOM +} + +"""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 Node & Comment & Deletable & Minimizable & 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 field to order repositories by.""" + field: GistOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""Properties by which gist connections can be ordered.""" +enum GistOrderField { + """Order gists by creation time""" + CREATED_AT + + """Order gists by update time""" + UPDATED_AT + + """Order gists by push time""" + PUSHED_AT +} + +"""The privacy of a Gist""" +enum GistPrivacy { + """Public""" + PUBLIC + + """Secret""" + SECRET + + """Gists that are public and secret""" + ALL +} + +"""Represents an actor in a Git commit (ie. an author or committer).""" +type GitActor { + """A URL pointing to the author's public avatar.""" + avatarUrl( + """The size of the resulting square image.""" + size: Int + ): URI! + + """The timestamp of the Git action (authoring or committing).""" + date: GitTimestamp + + """The email in the Git commit.""" + email: String + + """The name in the Git commit.""" + name: String + + """ + The GitHub user corresponding to the email field. Null if no such user exists. + """ + user: User +} + +"""The connection type for GitActor.""" +type GitActorConnection { + """A list of edges.""" + edges: [GitActorEdge] + + """A list of nodes.""" + nodes: [GitActor] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type GitActorEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: GitActor +} + +"""Represents information about the GitHub instance.""" +type GitHubMetadata { + """Returns a String that's a SHA of `github-services`""" + gitHubServicesSha: GitObjectID! + + """IP addresses that users connect to for git operations""" + gitIpAddresses: [String!] + + """IP addresses that service hooks are sent from""" + hookIpAddresses: [String!] + + """IP addresses that the importer connects from""" + importerIpAddresses: [String!] + + """Whether or not users are verified""" + isPasswordAuthenticationVerifiable: Boolean! + + """IP addresses for GitHub Pages' A records""" + pagesIpAddresses: [String!] +} + +"""Represents a Git object.""" +interface GitObject { + """An abbreviated version of the Git object ID""" + abbreviatedOid: String! + + """The HTTP path for this Git object""" + commitResourcePath: URI! + + """The HTTP URL for this Git object""" + commitUrl: URI! + id: ID! + + """The Git object ID""" + oid: GitObjectID! + + """The Repository the Git object belongs to""" + repository: Repository! +} + +"""A Git object ID.""" +scalar GitObjectID + +"""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 { + """Valid signature and verified by GitHub""" + VALID + + """Invalid signature""" + INVALID + + """Malformed signature""" + MALFORMED_SIG + + """Key used for signing not known to GitHub""" + UNKNOWN_KEY + + """Invalid email used for signing""" + BAD_EMAIL + + """Email used for signing unverified on GitHub""" + UNVERIFIED_EMAIL + + """Email used for signing not known to GitHub""" + NO_USER + + """Unknown signature type""" + UNKNOWN_SIG_TYPE + + """Unsigned""" + UNSIGNED + + """ + Internal error - the GPG verification service is unavailable at the moment + """ + GPGVERIFY_UNAVAILABLE + + """Internal error - the GPG verification service misbehaved""" + GPGVERIFY_ERROR + + """The usage flags for the key that signed this don't allow signing""" + NOT_SIGNING_KEY + + """Signing key expired""" + EXPIRED_KEY + + """Valid signature, pending certificate revocation checking""" + OCSP_PENDING + + """Valid signature, though certificate revocation check failed""" + OCSP_ERROR + + """The signing certificate or its chain could not be verified""" + BAD_CERT + + """One or more certificates in chain has been revoked""" + OCSP_REVOKED +} + +"""Git SSH string""" +scalar GitSSHRemote + +""" +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 { + """ + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. + """ + enterpriseId: ID! + + """The login of the user to grant the migrator role""" + login: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 ID of the organization that the user/team belongs to.""" + organizationId: ID! + + """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 +} + +"""Autogenerated return type of GrantMigratorRole""" +type GrantMigratorRolePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """Did the operation succeed?""" + success: Boolean +} + +"""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! +} + +"""A string containing HTML code.""" +scalar HTML + +""" +The possible states in which authentication can be configured with an identity provider. +""" +enum IdentityProviderConfigurationState { + """Authentication with an identity provider is configured and enforced.""" + ENFORCED + + """ + Authentication with an identity provider is configured but not enforced. + """ + CONFIGURED + + """Authentication with an identity provider is not configured.""" + UNCONFIGURED +} + +"""Autogenerated input type of InviteEnterpriseAdmin""" +input InviteEnterpriseAdminInput { + """The ID of the enterprise to which you want to invite an administrator.""" + enterpriseId: ID! + + """The login of a user to invite as an administrator.""" + invitee: String + + """The email of the person to invite as an administrator.""" + email: String + + """The role of the administrator.""" + role: EnterpriseAdministratorRole + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 enabled for the owner.""" + ENABLED + + """The setting is disabled for the owner.""" + DISABLED +} + +""" +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 field to order IP allow list entries by.""" + field: IpAllowListEntryOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""Properties by which IP allow list entry connections can be ordered.""" +enum IpAllowListEntryOrderField { + """Order IP allow list entries by creation time.""" + CREATED_AT + + """Order IP allow list entries by the allow list value.""" + ALLOW_LIST_VALUE +} + +""" +The possible values for the IP allow list configuration for installed GitHub Apps setting. +""" +enum IpAllowListForInstalledAppsEnabledSettingValue { + """The setting is enabled for the owner.""" + ENABLED + + """The setting is disabled for the owner.""" + DISABLED +} + +"""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 Node & Assignable & Closable & Comment & Updatable & UpdatableComment & Labelable & Lockable & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & ProjectV2Owner { + """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( + """Ordering options for issue comments returned from the connection.""" + orderBy: IssueCommentOrder + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """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( + """Ordering options for labels returned from the connection.""" + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): LabelConnection + + """The 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 + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """A list of archived states to filter the cards by""" + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + ): ProjectCardConnection! + + """List of project items associated with this issue.""" + projectItems( + """Include archived items.""" + includeArchived: 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 + + """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( + """A project to search for under the the owner.""" + query: String + + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """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 + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """Allows filtering Reactions by emoji.""" + content: ReactionContent + + """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.""" + timelineItems( + """Filter timeline items by a `since` timestamp.""" + since: DateTime + + """Skips the first _n_ elements in the list.""" + skip: Int + + """Filter timeline items by type.""" + itemTypes: [IssueTimelineItemsItemType!] + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: 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! + + """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 +} + +"""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 Node & Comment & Deletable & Minimizable & Updatable & UpdatableComment & Reactable & RepositoryNode { + """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 + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """Allows filtering Reactions by emoji.""" + content: ReactionContent + + """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! + """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 field in which to order issue comments by.""" + field: IssueCommentOrderField! + + """The direction in which to order issue comments by the specified field.""" + direction: OrderDirection! +} + +"""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 +} + +"""Ways in which lists of issues can be ordered upon return.""" +input IssueOrder { + """The field in which to order issues by.""" + field: IssueOrderField! + + """The direction in which to order issues by the specified field.""" + direction: OrderDirection! +} + +"""Properties by which issue connections can be ordered.""" +enum IssueOrderField { + """Order issues by creation time""" + CREATED_AT + + """Order issues by update time""" + UPDATED_AT + + """Order issues by comment count""" + COMMENTS +} + +"""Used for return value of Repository.issueOrPullRequest.""" +union IssueOrPullRequest = Issue | PullRequest + +"""The possible states of an issue.""" +enum IssueState { + """An issue that is still open""" + OPEN + + """An issue that has been closed""" + CLOSED +} + +"""The possible state reasons of an issue.""" +enum IssueStateReason { + """An issue that has been reopened""" + REOPENED + + """An issue that has been closed as not planned""" + NOT_PLANNED + + """An issue that has been closed as completed""" + COMPLETED +} + +"""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( + """Ordering options for labels returned from the connection.""" + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): LabelConnection + + """The 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 comment on an Issue.""" + ISSUE_COMMENT + + """Represents a mention made by one issue or pull request to another.""" + CROSS_REFERENCED_EVENT + + """ + 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 '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 '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 a 'user_blocked' event on a given user.""" + USER_BLOCKED_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 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( + """Ordering options for issues returned from the connection.""" + orderBy: IssueOrder + + """A list of label names to filter the pull requests by.""" + labels: [String!] + + """A list of states to filter the issues by.""" + states: [IssueState!] + + """Filtering options for issues returned from the connection.""" + filterBy: IssueFilters + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """Identifies the label name.""" + name: String! + + """A list of pull requests associated with this label.""" + pullRequests( + """A list of states to filter the pull requests by.""" + states: [PullRequestState!] + + """A list of label names to filter the pull requests by.""" + labels: [String!] + + """The head ref name to filter the pull requests by.""" + headRefName: String + + """The base ref name to filter the pull requests by.""" + baseRefName: String + + """Ordering options for pull requests returned from the connection.""" + orderBy: IssueOrder + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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! +} + +"""An object that can have labels assigned to it.""" +interface Labelable { + """A list of labels associated with the object.""" + labels( + """Ordering options for labels returned from the connection.""" + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): LabelConnection +} + +"""The 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! +} + +"""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! +} + +"""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 field in which to order labels by.""" + field: LabelOrderField! + + """The direction in which to order labels by the specified field.""" + direction: OrderDirection! +} + +"""Properties by which label connections can be ordered.""" +enum LabelOrderField { + """Order labels by name """ + NAME + + """Order labels by creation time""" + CREATED_AT +} + +"""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 field to order languages by.""" + field: LanguageOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""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! +} + +"""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 LinkProjectV2ToRepository""" +input LinkProjectV2ToRepositoryInput { + """The ID of the project to link to the repository.""" + projectId: ID! + + """The ID of the repository to link to the project.""" + repositoryId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the project to link to the team.""" + projectId: ID! + + """The ID of the team to link to the project.""" + teamId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the Project to link to a Repository""" + projectId: ID! + + """The ID of the Repository to link to a Project.""" + repositoryId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +"""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! +} + +"""Autogenerated input type of LockLockable""" +input LockLockableInput { + """ID of the item to be locked.""" + lockableId: ID! + + """A reason for why the item will be locked.""" + lockReason: LockReason + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 too heated. + """ + TOO_HEATED + + """ + 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 +} + +"""A placeholder user for attribution of imported data on GitHub.""" +type Mannequin implements Node & Actor & 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 field to order mannequins by.""" + field: MannequinOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""Properties by which mannequins can be ordered.""" +enum MannequinOrderField { + """Order mannequins alphabetically by their source login.""" + LOGIN + + """Order mannequins why when they were created.""" + CREATED_AT +} + +"""Autogenerated input type of MarkDiscussionCommentAsAnswer""" +input MarkDiscussionCommentAsAnswerInput { + """The Node ID of the discussion comment to mark as an answer.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +""" +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 +} + +"""Autogenerated input type of MarkFileAsViewed""" +input MarkFileAsViewedInput { + """The Node ID of the pull request.""" + pullRequestId: ID! + + """The path of the file to mark as viewed""" + path: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of MarkFileAsViewed""" +type MarkFileAsViewedPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The updated pull request.""" + pullRequest: PullRequest +} + +"""Autogenerated input type of MarkPullRequestReadyForReview""" +input MarkPullRequestReadyForReviewInput { + """ID of the pull request to be marked as ready for review.""" + pullRequestId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +"""Audit log entry for a members_can_delete_repos.clear event.""" +type MembersCanDeleteReposClearAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & 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 Node & AuditEntry & EnterpriseAuditEntryData & 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 Node & AuditEntry & EnterpriseAuditEntryData & 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 +} + +"""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! +} + +"""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! +} + +"""Whether or not a PullRequest can be merged.""" +enum MergeableState { + """The pull request can be merged.""" + MERGEABLE + + """The pull request cannot be merged due to merge conflicts.""" + CONFLICTING + + """The mergeability of the pull request is still being calculated.""" + UNKNOWN +} + +"""Autogenerated input type of MergeBranch""" +input MergeBranchInput { + """ + The Node ID of the Repository containing the base branch that will be modified. + """ + repositoryId: ID! + + """ + The name of the base branch that the provided head will be merged into. + """ + base: String! + + """ + The head to merge into the base branch. This can be a branch name or a commit GitObjectID. + """ + head: String! + + """ + Message to use for the merge commit. If omitted, a default will be used. + """ + commitMessage: String + + """The email address to associate with this commit.""" + authorEmail: String + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 the pull request's title.""" + PR_TITLE + + """Default to the pull request's body.""" + PR_BODY + + """Default to a blank commit message.""" + BLANK +} + +"""The possible default commit titles for merges.""" +enum MergeCommitTitle { + """Default to the pull request's title.""" + PR_TITLE + + """ + Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). + """ + MERGE_MESSAGE +} + +"""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! +} + +"""Autogenerated input type of MergePullRequest""" +input MergePullRequestInput { + """ID of the pull request to be merged.""" + pullRequestId: ID! + + """ + Commit headline to use for the merge commit; if omitted, a default message will be used. + """ + commitHeadline: String + + """ + Commit body to use for the merge commit; if omitted, a default message will be used + """ + commitBody: 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 + + """The email address to associate with this merge.""" + authorEmail: String + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 queued.""" + QUEUED + + """The entry is currently waiting for checks to pass.""" + AWAITING_CHECKS + + """The entry is currently mergeable.""" + MERGEABLE + + """The entry is currently unmergeable.""" + UNMERGEABLE + + """The entry is currently locked.""" + LOCKED +} + +"""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 +} + +"""Represents a GitHub Enterprise Importer (GEI) migration.""" +interface Migration { + """The migration flag to continue on error.""" + continueOnError: Boolean! + + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """Identifies the primary key from the database.""" + databaseId: String + + """The reason the migration failed.""" + failureReason: String + id: ID! + + """ + The URL for the migration log (expires 1 day after migration completes). + """ + migrationLogUrl: URI + + """The migration source.""" + migrationSource: MigrationSource! + + """The target repository name.""" + repositoryName: String! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + sourceUrl: URI! + + """The migration state.""" + state: MigrationState! +} + +"""A GitHub Enterprise Importer (GEI) migration source.""" +type MigrationSource implements Node { + id: ID! + + """The migration source name.""" + name: String! + + """The migration source type.""" + type: MigrationSourceType! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + url: URI! +} + +""" +Represents the different GitHub Enterprise Importer (GEI) migration sources. +""" +enum MigrationSourceType { + """An Azure DevOps migration source.""" + AZURE_DEVOPS + + """A Bitbucket Server migration source.""" + BITBUCKET_SERVER + + """A GitHub Migration API source.""" + GITHUB_ARCHIVE +} + +"""The GitHub Enterprise Importer (GEI) migration state.""" +enum MigrationState { + """The migration has not started.""" + NOT_STARTED + + """The migration has been queued.""" + QUEUED + + """The migration is in progress.""" + IN_PROGRESS + + """The migration has succeeded.""" + SUCCEEDED + + """The migration has failed.""" + FAILED + + """The migration needs to have its credentials validated.""" + PENDING_VALIDATION + + """The migration has invalid credentials.""" + FAILED_VALIDATION +} + +"""Represents a Milestone object on a given repository.""" +type Milestone implements Node & Closable & 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( + """Ordering options for issues returned from the connection.""" + orderBy: IssueOrder + + """A list of label names to filter the pull requests by.""" + labels: [String!] + + """A list of states to filter the issues by.""" + states: [IssueState!] + + """Filtering options for issues returned from the connection.""" + filterBy: IssueFilters + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """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( + """A list of states to filter the pull requests by.""" + states: [PullRequestState!] + + """A list of label names to filter the pull requests by.""" + labels: [String!] + + """The head ref name to filter the pull requests by.""" + headRefName: String + + """The base ref name to filter the pull requests by.""" + baseRefName: String + + """Ordering options for pull requests returned from the connection.""" + orderBy: IssueOrder + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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! +} + +"""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! +} + +"""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 field to order milestones by.""" + field: MilestoneOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""Properties by which milestone connections can be ordered.""" +enum MilestoneOrderField { + """Order milestones by when they are due.""" + DUE_DATE + + """Order milestones by when they were created.""" + CREATED_AT + + """Order milestones by when they were last updated.""" + UPDATED_AT + + """Order milestones by their number.""" + NUMBER +} + +"""The possible states of a milestone.""" +enum MilestoneState { + """A milestone that is still open.""" + OPEN + + """A milestone that has been closed.""" + CLOSED +} + +"""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 Node ID of the subject to modify.""" + subjectId: ID! + + """The classification of comment""" + classifier: ReportedContentClassifiers! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +""" +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! +} + +"""Autogenerated input type of MoveProjectCard""" +input MoveProjectCardInput { + """The id of the card to move.""" + cardId: ID! + + """The id of the column to move it into.""" + columnId: ID! + + """ + Place the new card after the card with this id. Pass null to place it at the top. + """ + afterCardId: ID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The id of the column to move.""" + columnId: ID! + + """ + Place the new column after the column with this id. Pass null to place it at the front. + """ + afterColumnId: ID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +"""The root query for implementing GraphQL mutations.""" +type Mutation { + """Clear all of a customer's queued migrations""" + abortQueuedMigrations( + """Parameters for AbortQueuedMigrations""" + input: AbortQueuedMigrationsInput! + ): AbortQueuedMigrationsPayload + + """ + Accepts a pending invitation for a user to become an administrator of an enterprise. + """ + acceptEnterpriseAdministratorInvitation( + """Parameters for AcceptEnterpriseAdministratorInvitation""" + input: AcceptEnterpriseAdministratorInvitationInput! + ): AcceptEnterpriseAdministratorInvitationPayload + + """Applies a suggested topic to the repository.""" + acceptTopicSuggestion( + """Parameters for AcceptTopicSuggestion""" + input: AcceptTopicSuggestionInput! + ): AcceptTopicSuggestionPayload + + """Adds assignees to an assignable object.""" + addAssigneesToAssignable( + """Parameters for AddAssigneesToAssignable""" + input: AddAssigneesToAssignableInput! + ): AddAssigneesToAssignablePayload + + """Adds a comment to an Issue or Pull Request.""" + addComment( + """Parameters for AddComment""" + input: AddCommentInput! + ): AddCommentPayload + + """ + Adds a comment to a Discussion, possibly as a reply to another comment. + """ + addDiscussionComment( + """Parameters for AddDiscussionComment""" + input: AddDiscussionCommentInput! + ): AddDiscussionCommentPayload + + """Vote for an option in a discussion poll.""" + addDiscussionPollVote( + """Parameters for AddDiscussionPollVote""" + input: AddDiscussionPollVoteInput! + ): AddDiscussionPollVotePayload + + """Adds enterprise members to an organization within the enterprise.""" + addEnterpriseOrganizationMember( + """Parameters for AddEnterpriseOrganizationMember""" + input: AddEnterpriseOrganizationMemberInput! + ): AddEnterpriseOrganizationMemberPayload + + """Adds a support entitlement to an enterprise member.""" + addEnterpriseSupportEntitlement( + """Parameters for AddEnterpriseSupportEntitlement""" + input: AddEnterpriseSupportEntitlementInput! + ): AddEnterpriseSupportEntitlementPayload + + """Adds labels to a labelable object.""" + addLabelsToLabelable( + """Parameters for AddLabelsToLabelable""" + input: AddLabelsToLabelableInput! + ): AddLabelsToLabelablePayload + + """ + Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. + """ + addProjectCard( + """Parameters for AddProjectCard""" + input: AddProjectCardInput! + ): AddProjectCardPayload + + """Adds a column to a Project.""" + addProjectColumn( + """Parameters for AddProjectColumn""" + input: AddProjectColumnInput! + ): AddProjectColumnPayload + + """Creates a new draft issue and add it to a Project.""" + addProjectV2DraftIssue( + """Parameters for AddProjectV2DraftIssue""" + input: AddProjectV2DraftIssueInput! + ): AddProjectV2DraftIssuePayload + + """Links an existing content instance to a Project.""" + addProjectV2ItemById( + """Parameters for AddProjectV2ItemById""" + input: AddProjectV2ItemByIdInput! + ): AddProjectV2ItemByIdPayload + + """Adds a review to a Pull Request.""" + addPullRequestReview( + """Parameters for AddPullRequestReview""" + input: AddPullRequestReviewInput! + ): AddPullRequestReviewPayload + + """Adds a comment to a review.""" + addPullRequestReviewComment( + """Parameters for AddPullRequestReviewComment""" + input: AddPullRequestReviewCommentInput! + ): AddPullRequestReviewCommentPayload + + """Adds a new thread to a pending Pull Request Review.""" + addPullRequestReviewThread( + """Parameters for AddPullRequestReviewThread""" + input: AddPullRequestReviewThreadInput! + ): AddPullRequestReviewThreadPayload + + """Adds a reaction to a subject.""" + addReaction( + """Parameters for AddReaction""" + input: AddReactionInput! + ): AddReactionPayload + + """Adds a star to a Starrable.""" + addStar( + """Parameters for AddStar""" + input: AddStarInput! + ): AddStarPayload + + """Add an upvote to a discussion or discussion comment.""" + addUpvote( + """Parameters for AddUpvote""" + input: AddUpvoteInput! + ): AddUpvotePayload + + """Adds a verifiable domain to an owning account.""" + addVerifiableDomain( + """Parameters for AddVerifiableDomain""" + input: AddVerifiableDomainInput! + ): AddVerifiableDomainPayload + + """Approve all pending deployments under one or more environments""" + approveDeployments( + """Parameters for ApproveDeployments""" + input: ApproveDeploymentsInput! + ): ApproveDeploymentsPayload + + """Approve a verifiable domain for notification delivery.""" + approveVerifiableDomain( + """Parameters for ApproveVerifiableDomain""" + input: ApproveVerifiableDomainInput! + ): ApproveVerifiableDomainPayload + + """Archives a ProjectV2Item""" + archiveProjectV2Item( + """Parameters for ArchiveProjectV2Item""" + input: ArchiveProjectV2ItemInput! + ): ArchiveProjectV2ItemPayload + + """Marks a repository as archived.""" + archiveRepository( + """Parameters for ArchiveRepository""" + input: ArchiveRepositoryInput! + ): ArchiveRepositoryPayload + + """ + Cancels a pending invitation for an administrator to join an enterprise. + """ + cancelEnterpriseAdminInvitation( + """Parameters for CancelEnterpriseAdminInvitation""" + input: CancelEnterpriseAdminInvitationInput! + ): CancelEnterpriseAdminInvitationPayload + + """Cancel an active sponsorship.""" + cancelSponsorship( + """Parameters for CancelSponsorship""" + input: CancelSponsorshipInput! + ): CancelSponsorshipPayload + + """Update your status on GitHub.""" + changeUserStatus( + """Parameters for ChangeUserStatus""" + input: ChangeUserStatusInput! + ): ChangeUserStatusPayload + + """Clears all labels from a labelable object.""" + clearLabelsFromLabelable( + """Parameters for ClearLabelsFromLabelable""" + input: ClearLabelsFromLabelableInput! + ): ClearLabelsFromLabelablePayload + + """ + This mutation clears the value of a field for an item in a Project. Currently + only text, number, date, assignees, labels, single-select, iteration and + milestone fields are supported. + """ + clearProjectV2ItemFieldValue( + """Parameters for ClearProjectV2ItemFieldValue""" + input: ClearProjectV2ItemFieldValueInput! + ): ClearProjectV2ItemFieldValuePayload + + """ + Creates a new project by cloning configuration from an existing project. + """ + cloneProject( + """Parameters for CloneProject""" + input: CloneProjectInput! + ): CloneProjectPayload + + """ + Create a new repository with the same files and directory structure as a template repository. + """ + cloneTemplateRepository( + """Parameters for CloneTemplateRepository""" + input: CloneTemplateRepositoryInput! + ): CloneTemplateRepositoryPayload + + """Close 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 + + """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 + + """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 + + """Unlink a branch from an issue.""" + deleteLinkedBranch( + """Parameters for DeleteLinkedBranch""" + input: DeleteLinkedBranchInput! + ): DeleteLinkedBranchPayload + + """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 + + """Invite someone to become an administrator of the enterprise.""" + inviteEnterpriseAdmin( + """Parameters for InviteEnterpriseAdmin""" + input: InviteEnterpriseAdminInput! + ): InviteEnterpriseAdminPayload + + """Links a project to a repository.""" + linkProjectV2ToRepository( + """Parameters for LinkProjectV2ToRepository""" + input: LinkProjectV2ToRepositoryInput! + ): LinkProjectV2ToRepositoryPayload + + """Links a project to a team.""" + linkProjectV2ToTeam( + """Parameters for LinkProjectV2ToTeam""" + input: LinkProjectV2ToTeamInput! + ): LinkProjectV2ToTeamPayload + + """Creates a repository link for a project.""" + linkRepositoryToProject( + """Parameters for LinkRepositoryToProject""" + input: LinkRepositoryToProjectInput! + ): LinkRepositoryToProjectPayload + + """Lock a lockable object""" + lockLockable( + """Parameters for LockLockable""" + input: LockLockableInput! + ): LockLockablePayload + + """ + Mark a discussion comment as the chosen answer for discussions in an answerable category. + """ + markDiscussionCommentAsAnswer( + """Parameters for MarkDiscussionCommentAsAnswer""" + input: MarkDiscussionCommentAsAnswerInput! + ): MarkDiscussionCommentAsAnswerPayload + + """Mark a pull request file as viewed""" + markFileAsViewed( + """Parameters for MarkFileAsViewed""" + input: MarkFileAsViewedInput! + ): MarkFileAsViewedPayload + + """Marks a pull request ready for review.""" + markPullRequestReadyForReview( + """Parameters for MarkPullRequestReadyForReview""" + input: MarkPullRequestReadyForReviewInput! + ): MarkPullRequestReadyForReviewPayload + + """Merge a head into a branch.""" + mergeBranch( + """Parameters for MergeBranch""" + input: MergeBranchInput! + ): MergeBranchPayload + + """Merge a pull request.""" + mergePullRequest( + """Parameters for MergePullRequest""" + input: MergePullRequestInput! + ): MergePullRequestPayload + + """Minimizes a comment on an Issue, Commit, Pull Request, or Gist""" + minimizeComment( + """Parameters for MinimizeComment""" + input: MinimizeCommentInput! + ): MinimizeCommentPayload + + """Moves a project card to another place.""" + moveProjectCard( + """Parameters for MoveProjectCard""" + input: MoveProjectCardInput! + ): MoveProjectCardPayload + + """Moves a project column to another place.""" + moveProjectColumn( + """Parameters for MoveProjectColumn""" + input: MoveProjectColumnInput! + ): MoveProjectColumnPayload + + """Pin an issue to a repository""" + pinIssue( + """Parameters for PinIssue""" + input: PinIssueInput! + ): PinIssuePayload + + """ + Publish an existing sponsorship tier that is currently still a draft to a GitHub Sponsors profile. + """ + publishSponsorsTier( + """Parameters for PublishSponsorsTier""" + input: PublishSponsorsTierInput! + ): PublishSponsorsTierPayload + + """Regenerates the identity provider recovery codes for an enterprise""" + regenerateEnterpriseIdentityProviderRecoveryCodes( + """Parameters for RegenerateEnterpriseIdentityProviderRecoveryCodes""" + input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput! + ): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload + + """Regenerates a verifiable domain's verification token.""" + regenerateVerifiableDomainToken( + """Parameters for RegenerateVerifiableDomainToken""" + input: RegenerateVerifiableDomainTokenInput! + ): RegenerateVerifiableDomainTokenPayload + + """Reject all pending deployments under one or more environments""" + rejectDeployments( + """Parameters for RejectDeployments""" + input: RejectDeploymentsInput! + ): RejectDeploymentsPayload + + """Removes assignees from an assignable object.""" + removeAssigneesFromAssignable( + """Parameters for RemoveAssigneesFromAssignable""" + input: RemoveAssigneesFromAssignableInput! + ): RemoveAssigneesFromAssignablePayload + + """Removes an administrator from the enterprise.""" + removeEnterpriseAdmin( + """Parameters for RemoveEnterpriseAdmin""" + input: RemoveEnterpriseAdminInput! + ): RemoveEnterpriseAdminPayload + + """Removes the identity provider from an enterprise""" + removeEnterpriseIdentityProvider( + """Parameters for RemoveEnterpriseIdentityProvider""" + input: RemoveEnterpriseIdentityProviderInput! + ): RemoveEnterpriseIdentityProviderPayload + + """Removes a user from all organizations within the enterprise""" + removeEnterpriseMember( + """Parameters for RemoveEnterpriseMember""" + input: RemoveEnterpriseMemberInput! + ): RemoveEnterpriseMemberPayload + + """Removes an organization from the enterprise""" + removeEnterpriseOrganization( + """Parameters for RemoveEnterpriseOrganization""" + input: RemoveEnterpriseOrganizationInput! + ): RemoveEnterpriseOrganizationPayload + + """Removes a support entitlement from an enterprise member.""" + removeEnterpriseSupportEntitlement( + """Parameters for RemoveEnterpriseSupportEntitlement""" + input: RemoveEnterpriseSupportEntitlementInput! + ): RemoveEnterpriseSupportEntitlementPayload + + """Removes labels from a Labelable object.""" + removeLabelsFromLabelable( + """Parameters for RemoveLabelsFromLabelable""" + input: RemoveLabelsFromLabelableInput! + ): RemoveLabelsFromLabelablePayload + + """Removes outside collaborator from all repositories in an organization.""" + removeOutsideCollaborator( + """Parameters for RemoveOutsideCollaborator""" + input: RemoveOutsideCollaboratorInput! + ): RemoveOutsideCollaboratorPayload + + """Removes a reaction from a subject.""" + removeReaction( + """Parameters for RemoveReaction""" + input: RemoveReactionInput! + ): RemoveReactionPayload + + """Removes a star from a Starrable.""" + removeStar( + """Parameters for RemoveStar""" + input: RemoveStarInput! + ): RemoveStarPayload + + """Remove an upvote to a discussion or discussion comment.""" + removeUpvote( + """Parameters for RemoveUpvote""" + input: RemoveUpvoteInput! + ): RemoveUpvotePayload + + """Reopen a 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 + + """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 + + """ + Update the setting to restrict notifications to only verified or approved domains available to an owner. + """ + updateNotificationRestrictionSetting( + """Parameters for UpdateNotificationRestrictionSetting""" + input: UpdateNotificationRestrictionSettingInput! + ): UpdateNotificationRestrictionSettingPayload + + """Sets whether private repository forks are enabled for an organization.""" + updateOrganizationAllowPrivateRepositoryForkingSetting( + """Parameters for UpdateOrganizationAllowPrivateRepositoryForkingSetting""" + input: UpdateOrganizationAllowPrivateRepositoryForkingSettingInput! + ): UpdateOrganizationAllowPrivateRepositoryForkingSettingPayload + + """ + Sets whether contributors are required to sign off on web-based commits for repositories in an organization. + """ + updateOrganizationWebCommitSignoffSetting( + """Parameters for UpdateOrganizationWebCommitSignoffSetting""" + input: UpdateOrganizationWebCommitSignoffSettingInput! + ): UpdateOrganizationWebCommitSignoffSettingPayload + + """Updates an existing project.""" + updateProject( + """Parameters for UpdateProject""" + input: UpdateProjectInput! + ): UpdateProjectPayload + + """Updates an existing project card.""" + updateProjectCard( + """Parameters for UpdateProjectCard""" + input: UpdateProjectCardInput! + ): UpdateProjectCardPayload + + """Updates an existing project column.""" + updateProjectColumn( + """Parameters for UpdateProjectColumn""" + input: UpdateProjectColumnInput! + ): UpdateProjectColumnPayload + + """Updates an existing project (beta).""" + updateProjectV2( + """Parameters for UpdateProjectV2""" + input: UpdateProjectV2Input! + ): UpdateProjectV2Payload + + """Updates a draft issue within a Project.""" + updateProjectV2DraftIssue( + """Parameters for UpdateProjectV2DraftIssue""" + input: UpdateProjectV2DraftIssueInput! + ): UpdateProjectV2DraftIssuePayload + + """ + This mutation updates the value of a field for an item in a Project. Currently + only single-select, text, number, date, and iteration fields are supported. + """ + updateProjectV2ItemFieldValue( + """Parameters for UpdateProjectV2ItemFieldValue""" + input: UpdateProjectV2ItemFieldValueInput! + ): UpdateProjectV2ItemFieldValuePayload + + """ + This mutation updates the position of the item in the project, where the position represents the priority of an item. + """ + updateProjectV2ItemPosition( + """Parameters for UpdateProjectV2ItemPosition""" + input: UpdateProjectV2ItemPositionInput! + ): UpdateProjectV2ItemPositionPayload + + """Update a pull request""" + updatePullRequest( + """Parameters for UpdatePullRequest""" + input: UpdatePullRequestInput! + ): UpdatePullRequestPayload + + """Merge or Rebase HEAD from upstream branch into pull request branch""" + updatePullRequestBranch( + """Parameters for UpdatePullRequestBranch""" + input: UpdatePullRequestBranchInput! + ): UpdatePullRequestBranchPayload + + """Updates the body of a pull request review.""" + updatePullRequestReview( + """Parameters for UpdatePullRequestReview""" + input: UpdatePullRequestReviewInput! + ): UpdatePullRequestReviewPayload + + """Updates a pull request review comment.""" + updatePullRequestReviewComment( + """Parameters for UpdatePullRequestReviewComment""" + input: UpdatePullRequestReviewCommentInput! + ): UpdatePullRequestReviewCommentPayload + + """Update a Git Ref.""" + updateRef( + """Parameters for UpdateRef""" + input: UpdateRefInput! + ): UpdateRefPayload + + """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 + + """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 enabled for the owner.""" + ENABLED + + """The setting is disabled for the owner.""" + DISABLED +} + +"""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 Node & AuditEntry & 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 suspended from generating OAuth Accesses due to abuse or security concerns. + """ + SUSPENDED + + """The OAuth Application was in the process of being deleted.""" + PENDING_DELETION +} + +""" +An OIDC identity provider configured to provision identities for an enterprise. +""" +type OIDCProvider implements Node { + """The enterprise this identity provider belongs to.""" + enterprise: Enterprise + + """ExternalIdentities provisioned by this identity provider.""" + externalIdentities( + """Filter to external identities with valid org membership only""" + membersOnly: Boolean + + """Filter to external identities with the users login""" + login: String + + """Filter to external identities with the users userName/NameID attribute""" + userName: String + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 +} + +"""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 Node & AuditEntry & 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 Node & AuditEntry & 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 and clone repositories.""" + READ + + """Can read, clone, push, and add collaborators to repositories.""" + ADMIN +} + +""" +An account on GitHub, with one or more owners, that has repositories, members and teams. +""" +type Organization implements Node & Actor & PackageOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & UniformResourceLocatable & MemberStatusable & ProfileOwner & Sponsorable & 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 + + """ + 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! + + """Audit log entries of the organization""" + 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 + + """The query string to filter audit entries""" + query: String + + """Ordering options for the returned audit log entries.""" + orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} + ): OrganizationAuditEntryConnection! + + """A URL pointing to the organization'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! + + """Identifies the primary key from the database.""" + databaseId: Int + + """The organization's public profile description.""" + description: String + + """The organization's public profile description rendered to HTML.""" + descriptionHTML: String + + """A list of domains owned by the organization.""" + 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 + + """Returns the last _n_ elements from the list.""" + last: Int + + """Filter by if the domain is verified.""" + isVerified: Boolean = null + + """Filter by if the domain is approved.""" + isApproved: Boolean = null + + """Ordering options for verifiable domains returned.""" + orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} + ): VerifiableDomainConnection + + """The organization's public email.""" + email: String + + """A list of owners of the organization's enterprise account.""" + enterpriseOwners( + """The search string to look for.""" + query: String + + """The organization role to filter by.""" + organizationRole: RoleInOrganization + + """Ordering options for enterprise owners returned from the connection.""" + orderBy: OrgEnterpriseOwnerOrder = {field: LOGIN, direction: ASC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): OrganizationEnterpriseOwnerConnection! + + """ + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). + """ + estimatedNextSponsorsPayoutInCents: Int! + + """True if this user/organization has a GitHub Sponsors listing.""" + hasSponsorsListing: Boolean! + id: ID! + + """The interaction ability settings for this organization.""" + interactionAbility: RepositoryInteractionAbility + + """ + The setting value for whether the organization has an IP allow list enabled. + """ + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + + """ + The IP addresses that are allowed to access resources owned by the organization. + """ + 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 organization has IP allow list configuration for installed GitHub Apps enabled. + """ + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! + + """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 the organization has verified its profile email and website.""" + isVerified: Boolean! + + """ + 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! + + """The organization's public profile location.""" + location: String + + """The organization's login name.""" + login: String! + + """A list of all mannequins for this organization.""" + mannequins( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """Ordering options for mannequins returned from the connection.""" + orderBy: MannequinOrder = {field: CREATED_AT, direction: ASC} + ): MannequinConnection! + + """ + 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! + + """Members can fork private repositories in this organization""" + membersCanForkPrivateRepositories: Boolean! + + """A list of users who are members of this organization.""" + 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! + + """ + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). + """ + monthlyEstimatedSponsorsIncomeInCents: Int! + + """The organization's public profile name.""" + name: String + + """The HTTP path creating a new team""" + newTeamResourcePath: URI! + + """The HTTP URL creating a new team""" + newTeamUrl: URI! + + """ + Indicates if email notification delivery for this organization is restricted to verified or approved domains. + """ + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! + + """The billing email for the organization.""" + organizationBillingEmail: String + + """A list of packages under the owner.""" + packages( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """Find packages by their names.""" + names: [String] + + """Find packages in a repository by ID.""" + repositoryId: ID + + """Filter registry package by type.""" + packageType: PackageType + + """Ordering of the returned packages.""" + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + ): PackageConnection! + + """A list of users who have been invited to join this organization.""" + 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! + + """ + A list of repositories and gists this profile owner can pin to their profile. + """ + pinnableItems( + """Filter the types of pinnable items that are returned.""" + types: [PinnableItemType!] + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """ + A list of repositories and gists this profile owner has pinned to their profile + """ + pinnedItems( + """Filter the types of pinned items that are returned.""" + types: [PinnableItemType!] + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """ + Returns how many more items this profile owner can pin to their profile. + """ + pinnedItemsRemaining: Int! + + """Find project by number.""" + project( + """The project number to find.""" + number: Int! + ): Project + + """Find a project by number.""" + projectV2( + """The project number.""" + number: Int! + ): ProjectV2 + + """A list of projects under the owner.""" + projects( + """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!] + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectConnection! + + """The HTTP path listing organization's projects""" + projectsResourcePath: URI! + + """The HTTP URL listing organization's projects""" + projectsUrl: URI! + + """A list of projects under the owner.""" + projectsV2( + """A project to search for under the the owner.""" + query: String + + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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! + + """ + 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.""" + repositories( + """If non-null, filters repositories according to privacy""" + privacy: RepositoryPrivacy + + """Ordering options for repositories returned from the connection""" + orderBy: RepositoryOrder + + """ + 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] + + """ + 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 whether they have been locked + """ + isLocked: Boolean + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean + ): RepositoryConnection! + + """Find Repository.""" + repository( + """Name of Repository to find.""" + name: String! + + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + ): 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 in a specific repository.""" + repositoryId: ID + + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + ): DiscussionCommentConnection! + + """Discussions this user has started.""" + repositoryDiscussions( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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 + + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null + + """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.""" + last: Int + + """Filter repository migrations by state.""" + state: MigrationState + + """Filter repository migrations by repository name.""" + repositoryName: String + + """Ordering options for repository migrations returned.""" + orderBy: RepositoryMigrationOrder = {field: CREATED_AT, direction: ASC} + ): RepositoryMigrationConnection! + + """ + When true the organization requires all members, billing managers, and outside + collaborators to enable two-factor authentication. + """ + requiresTwoFactorAuthentication: Boolean + + """The HTTP path for this organization.""" + resourcePath: URI! + + """A list of rulesets for this organization.""" + 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 + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + Return rulesets configured at higher levels that apply to this organization + """ + includeParents: Boolean = false + ): RepositoryRulesetConnection + + """The Organization's SAML identity providers""" + samlIdentityProvider: OrganizationIdentityProvider + + """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.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. + """ + tierId: ID + + """Ordering options for sponsors returned from the connection.""" + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! + + """Events involving this sponsorable, such as new sponsorships.""" + sponsorsActivities( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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 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 + + """Ordering options for activity returned from the connection.""" + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} + + """Filter activities to only the specified actions.""" + actions: [SponsorsActivityAction!] = [] + + """ + 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 + ): SponsorsActivityConnection! + + """The GitHub Sponsors listing for this user or organization.""" + sponsorsListing: SponsorsListing + + """ + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. + """ + sponsorshipForViewerAsSponsor( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship + + """ + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. + """ + 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 + + """List of sponsorship updates sent from this sponsorable to sponsors.""" + 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! + + """ + The sponsorships where this user or organization is the maintainer receiving the funds. + """ + 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 + + """Returns the last _n_ elements from the list.""" + last: Int + + """Whether or not to include private sponsorships in the result set""" + includePrivate: Boolean = false + + """ + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. + """ + orderBy: SponsorshipOrder + + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true + ): SponsorshipConnection! + + """The sponsorships where this user or organization is the funder.""" + sponsorshipsAsSponsor( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. + """ + orderBy: SponsorshipOrder + + """ + 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!] + + """ + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. + """ + activeOnly: Boolean = true + ): SponsorshipConnection! + + """Find an organization's team by its slug.""" + team( + """The name or slug of the team to find.""" + slug: String! + ): Team + + """A list of teams in this organization.""" + teams( + """If non-null, filters teams according to privacy""" + privacy: TeamPrivacy + + """If non-null, filters teams according to notification setting""" + notificationSetting: TeamNotificationSetting + + """ + If non-null, filters teams according to whether the viewer is an admin or member on team + """ + role: TeamRole + + """If non-null, filters teams with query on team name and team slug""" + query: String + + """User logins to filter by""" + userLogins: [String!] + + """Ordering options for teams returned from the connection""" + orderBy: TeamOrder + + """ + If true, filters teams that are mapped to an LDAP Group (Enterprise only) + """ + ldapMapped: Boolean + + """If true, restrict to only root teams""" + rootTeamsOnly: Boolean = false + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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 HTTP path listing organization's teams""" + teamsResourcePath: URI! + + """The HTTP URL listing organization's teams""" + teamsUrl: URI! + + """ + 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 that occurred before this time.""" + until: DateTime + + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] + ): Int + + """The organization's Twitter username.""" + twitterUsername: String + + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """The HTTP URL for this organization.""" + url: URI! + + """Organization is adminable by the viewer.""" + viewerCanAdminister: Boolean! + + """Can the viewer pin repositories and gists to the profile?""" + viewerCanChangePinnedItems: Boolean! + + """Can the current viewer create new projects on this owner.""" + viewerCanCreateProjects: Boolean! + + """Viewer can create repositories on this organization""" + viewerCanCreateRepositories: Boolean! + + """Viewer can create teams on this organization.""" + viewerCanCreateTeams: Boolean! + + """Whether or not the viewer is able to sponsor this user/organization.""" + viewerCanSponsor: Boolean! + + """Viewer is an active member of this organization.""" + viewerIsAMember: Boolean! + + """Whether or not this Organization is followed by the viewer.""" + viewerIsFollowing: Boolean! + + """True if the viewer is sponsoring this user/organization.""" + viewerIsSponsoring: Boolean! + + """ + Whether contributors are required to sign off on web-based commits for repositories in this organization. + """ + webCommitSignoffRequired: Boolean! + + """The organization's public profile URL.""" + websiteUrl: URI +} + +"""An audit entry in an organization audit log.""" +union OrganizationAuditEntry = MembersCanDeleteReposClearAuditEntry | MembersCanDeleteReposDisableAuditEntry | MembersCanDeleteReposEnableAuditEntry | OauthApplicationCreateAuditEntry | OrgAddBillingManagerAuditEntry | OrgAddMemberAuditEntry | OrgBlockUserAuditEntry | OrgConfigDisableCollaboratorsOnlyAuditEntry | OrgConfigEnableCollaboratorsOnlyAuditEntry | OrgCreateAuditEntry | OrgDisableOauthAppRestrictionsAuditEntry | OrgDisableSamlAuditEntry | OrgDisableTwoFactorRequirementAuditEntry | OrgEnableOauthAppRestrictionsAuditEntry | OrgEnableSamlAuditEntry | OrgEnableTwoFactorRequirementAuditEntry | OrgInviteMemberAuditEntry | OrgInviteToBusinessAuditEntry | OrgOauthAppAccessApprovedAuditEntry | OrgOauthAppAccessDeniedAuditEntry | OrgOauthAppAccessRequestedAuditEntry | OrgRemoveBillingManagerAuditEntry | OrgRemoveMemberAuditEntry | OrgRemoveOutsideCollaboratorAuditEntry | OrgRestoreMemberAuditEntry | OrgUnblockUserAuditEntry | OrgUpdateDefaultRepositoryPermissionAuditEntry | OrgUpdateMemberAuditEntry | OrgUpdateMemberRepositoryCreationPermissionAuditEntry | OrgUpdateMemberRepositoryInvitationPermissionAuditEntry | PrivateRepositoryForkingDisableAuditEntry | PrivateRepositoryForkingEnableAuditEntry | RepoAccessAuditEntry | RepoAddMemberAuditEntry | RepoAddTopicAuditEntry | RepoArchivedAuditEntry | RepoChangeMergeSettingAuditEntry | RepoConfigDisableAnonymousGitAccessAuditEntry | RepoConfigDisableCollaboratorsOnlyAuditEntry | RepoConfigDisableContributorsOnlyAuditEntry | RepoConfigDisableSockpuppetDisallowedAuditEntry | RepoConfigEnableAnonymousGitAccessAuditEntry | RepoConfigEnableCollaboratorsOnlyAuditEntry | RepoConfigEnableContributorsOnlyAuditEntry | RepoConfigEnableSockpuppetDisallowedAuditEntry | RepoConfigLockAnonymousGitAccessAuditEntry | RepoConfigUnlockAnonymousGitAccessAuditEntry | RepoCreateAuditEntry | RepoDestroyAuditEntry | RepoRemoveMemberAuditEntry | RepoRemoveTopicAuditEntry | RepositoryVisibilityChangeDisableAuditEntry | RepositoryVisibilityChangeEnableAuditEntry | TeamAddMemberAuditEntry | TeamAddRepositoryAuditEntry | TeamChangeParentTeamAuditEntry | TeamRemoveMemberAuditEntry | TeamRemoveRepositoryAuditEntry + +"""The connection type for OrganizationAuditEntry.""" +type OrganizationAuditEntryConnection { + """A list of edges.""" + edges: [OrganizationAuditEntryEdge] + + """A list of nodes.""" + nodes: [OrganizationAuditEntry] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""Metadata for an audit entry with action org.*""" +interface OrganizationAuditEntryData { + """The Organization associated with the Audit Entry.""" + organization: Organization + + """The name of the Organization.""" + organizationName: String + + """The HTTP path for the organization""" + organizationResourcePath: URI + + """The HTTP URL for the organization""" + organizationUrl: URI +} + +"""An edge in a connection.""" +type OrganizationAuditEntryEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: OrganizationAuditEntry +} + +"""A list of organizations managed by an enterprise.""" +type OrganizationConnection { + """A list of edges.""" + edges: [OrganizationEdge] + + """A list of nodes.""" + nodes: [Organization] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type OrganizationEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: Organization +} + +"""The connection type for User.""" +type OrganizationEnterpriseOwnerConnection { + """A list of edges.""" + edges: [OrganizationEnterpriseOwnerEdge] + + """A list of nodes.""" + nodes: [User] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +""" +An enterprise owner in the context of an organization that is part of the enterprise. +""" +type OrganizationEnterpriseOwnerEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: User + + """The role of the owner with respect to the organization.""" + organizationRole: RoleInOrganization! +} + +""" +An Identity Provider configured to provision SAML and SCIM identities for Organizations +""" +type OrganizationIdentityProvider implements Node { + """ + The digest algorithm used to sign SAML requests for the Identity Provider. + """ + digestMethod: URI + + """External Identities provisioned by this Identity Provider""" + externalIdentities( + """Filter to external identities with valid org membership only""" + membersOnly: Boolean + + """Filter to external identities with the users login""" + login: String + + """Filter to external identities with the users userName/NameID attribute""" + userName: String + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): 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 + + """Organization this Identity Provider belongs to""" + organization: Organization + + """ + The signature algorithm used to sign SAML requests for the Identity Provider. + """ + signatureMethod: URI + + """The URL endpoint for the Identity Provider's SAML SSO.""" + ssoUrl: URI } -"""The connection type for GistComment.""" -type GistCommentConnection { +"""An Invitation for a user to an organization.""" +type OrganizationInvitation implements Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """The email address of the user invited to the organization.""" + email: String + id: ID! + + """The source of the invitation.""" + invitationSource: OrganizationInvitationSource! + + """The type of invitation that was sent (e.g. email, user).""" + invitationType: OrganizationInvitationType! + + """The user who was invited to the organization.""" + invitee: User + + """The user who created the invitation.""" + inviter: User! + + """The organization the invite is for""" + organization: Organization! + + """The user's pending role in the organization (e.g. member, owner).""" + role: OrganizationInvitationRole! +} + +"""The connection type for OrganizationInvitation.""" +type OrganizationInvitationConnection { """A list of edges.""" - edges: [GistCommentEdge] + edges: [OrganizationInvitationEdge] """A list of nodes.""" - nodes: [GistComment] + nodes: [OrganizationInvitation] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -6519,21 +16370,57 @@ type GistCommentConnection { } """An edge in a connection.""" -type GistCommentEdge { +type OrganizationInvitationEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: GistComment + node: OrganizationInvitation } -"""The connection type for Gist.""" -type GistConnection { +"""The possible organization invitation roles.""" +enum OrganizationInvitationRole { + """The user is invited to be a direct member of the organization.""" + DIRECT_MEMBER + + """The user is invited to be an admin of the organization.""" + ADMIN + + """The user is invited to be a billing manager of the organization.""" + BILLING_MANAGER + + """The user's previous role will be reinstated.""" + REINSTATE +} + +"""The possible organization invitation sources.""" +enum OrganizationInvitationSource { + """The invitation was sent before this feature was added""" + UNKNOWN + + """The invitation was created from the web interface or from API""" + MEMBER + + """The invitation was created from SCIM""" + SCIM +} + +"""The possible organization invitation types.""" +enum OrganizationInvitationType { + """The invitation was to an existing user.""" + USER + + """The invitation was to an email address.""" + EMAIL +} + +"""The connection type for User.""" +type OrganizationMemberConnection { """A list of edges.""" - edges: [GistEdge] + edges: [OrganizationMemberEdge] """A list of nodes.""" - nodes: [Gist] + nodes: [User] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -6542,2037 +16429,1912 @@ type GistConnection { totalCount: Int! } -"""An edge in a connection.""" -type GistEdge { +"""Represents a user within an organization.""" +type OrganizationMemberEdge { """A cursor for use in pagination.""" cursor: String! + """ + Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. + """ + hasTwoFactorEnabled: Boolean + """The item at the end of the edge.""" - node: Gist + node: User + + """The role this user has in the organization.""" + role: OrganizationMemberRole } -"""A file in a gist.""" -type GistFile { - """ - The file name encoded to remove characters that are invalid in URL paths. - """ - encodedName: String +"""The possible roles within an organization for its members.""" +enum OrganizationMemberRole { + """The user is a member of the organization.""" + MEMBER - """The gist file encoding.""" - encoding: String + """The user is an administrator of the organization.""" + ADMIN +} - """The file extension from the file name.""" - extension: String +""" +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.""" + ALL - """Indicates if this file is an image.""" - isImage: Boolean! + """Members will be able to create only private repositories.""" + PRIVATE - """Whether the file's contents were truncated.""" - isTruncated: Boolean! + """Members will be able to create only internal repositories.""" + INTERNAL - """The programming language this file is written in.""" - language: Language + """Members will not be able to create public or private repositories.""" + DISABLED +} - """The gist file name.""" - name: String +"""A GitHub Enterprise Importer (GEI) organization migration.""" +type OrganizationMigration implements Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The gist file size in bytes.""" - size: Int + """Identifies the primary key from the database.""" + databaseId: String - """UTF8 text data or null if the file is binary""" - text( - """Optionally truncate the returned file to this length.""" - truncate: Int - ): String + """The reason the organization migration failed.""" + failureReason: String + id: ID! + + """The remaining amount of repos to be migrated.""" + remainingRepositoriesCount: Int + + """The name of the source organization to be migrated.""" + sourceOrgName: String! + + """The URL of the source organization to migrate.""" + sourceOrgUrl: URI! + + """The migration state.""" + state: OrganizationMigrationState! + + """The name of the target organization.""" + targetOrgName: String! + + """The total amount of repositories to be migrated.""" + totalRepositoriesCount: Int } -"""Ordering options for gist connections""" -input GistOrder { - """The field to order repositories by.""" - field: GistOrderField! +"""The Octoshift Organization migration state.""" +enum OrganizationMigrationState { + """The Octoshift migration has not started.""" + NOT_STARTED + + """The Octoshift migration has been queued.""" + QUEUED + + """The Octoshift migration is in progress.""" + IN_PROGRESS + + """The Octoshift migration is performing pre repository migrations.""" + PRE_REPO_MIGRATION + + """The Octoshift org migration is performing repository migrations.""" + REPO_MIGRATION + + """The Octoshift migration is performing post repository migrations.""" + POST_REPO_MIGRATION + + """The Octoshift migration has succeeded.""" + SUCCEEDED + + """The Octoshift migration has failed.""" + FAILED +} + +"""Ordering options for organization connections.""" +input OrganizationOrder { + """The field to order organizations by.""" + field: OrganizationOrderField! """The ordering direction.""" direction: OrderDirection! } -"""Properties by which gist connections can be ordered.""" -enum GistOrderField { - """Order gists by creation time""" +"""Properties by which organization connections can be ordered.""" +enum OrganizationOrderField { + """Order organizations by creation time""" CREATED_AT - """Order gists by update time""" - UPDATED_AT - - """Order gists by push time""" - PUSHED_AT + """Order organizations by login""" + LOGIN } -"""The privacy of a Gist""" -enum GistPrivacy { - """Public""" - PUBLIC +"""Used for argument of CreateProjectV2 mutation.""" +union OrganizationOrUser = Organization | User - """Secret""" - SECRET +"""An organization list hovercard context""" +type OrganizationsHovercardContext implements HovercardContext { + """A string describing this context""" + message: String! - """Gists that are public and secret""" - ALL -} + """An octicon to accompany this context""" + octicon: String! -"""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! + """Organizations this user is a member of that are relevant""" + relevantOrganizations( + """Ordering options for the User's organizations.""" + orderBy: OrganizationOrder = null - """The timestamp of the Git action (authoring or committing).""" - date: GitTimestamp + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The email in the Git commit.""" - email: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name in the Git commit.""" - name: String + """Returns the first _n_ elements from the list.""" + first: Int - """ - The GitHub user corresponding to the email field. Null if no such user exists. - """ - user: User + """Returns the last _n_ elements from the list.""" + last: Int + ): OrganizationConnection! + + """The total number of organizations this user is in""" + totalOrganizationCount: Int! } -"""The connection type for GitActor.""" -type GitActorConnection { - """A list of edges.""" - edges: [GitActorEdge] +"""An organization teams hovercard context""" +type OrganizationTeamsHovercardContext implements HovercardContext { + """A string describing this context""" + message: String! + + """An octicon to accompany this context""" + octicon: String! + + """Teams in this organization the user is a member of that are relevant""" + 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 - """A list of nodes.""" - nodes: [GitActor] + """Returns the first _n_ elements from the list.""" + first: Int - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Returns the last _n_ elements from the list.""" + last: Int + ): TeamConnection! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The path for the full team list for this user""" + teamsResourcePath: URI! -"""An edge in a connection.""" -type GitActorEdge { - """A cursor for use in pagination.""" - cursor: String! + """The URL for the full team list for this user""" + teamsUrl: URI! - """The item at the end of the edge.""" - node: GitActor + """The total number of teams the user is on in the organization""" + totalTeamCount: Int! } -"""Represents information about the GitHub instance.""" -type GitHubMetadata { - """Returns a String that's a SHA of `github-services`""" - gitHubServicesSha: GitObjectID! +"""Audit log entry for a org.block_user""" +type OrgBlockUserAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """IP addresses that users connect to for git operations""" - gitIpAddresses: [String!] + """The user who initiated the action""" + actor: AuditEntryActor - """IP addresses that service hooks are sent from""" - hookIpAddresses: [String!] + """The IP address of the actor""" + actorIp: String - """IP addresses that the importer connects from""" - importerIpAddresses: [String!] + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Whether or not users are verified""" - isPasswordAuthenticationVerifiable: Boolean! + """The username of the user who initiated the action""" + actorLogin: String - """IP addresses for GitHub Pages' A records""" - pagesIpAddresses: [String!] -} + """The HTTP path for the actor.""" + actorResourcePath: URI -"""Represents a Git object.""" -interface GitObject { - """An abbreviated version of the Git object ID""" - abbreviatedOid: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """The HTTP path for this Git object""" - commitResourcePath: URI! + """The blocked user.""" + blockedUser: User - """The HTTP URL for this Git object""" - commitUrl: URI! - id: ID! + """The username of the blocked user.""" + blockedUserName: String - """The Git object ID""" - oid: GitObjectID! + """The HTTP path for the blocked user.""" + blockedUserResourcePath: URI - """The Repository the Git object belongs to""" - repository: Repository! -} + """The HTTP URL for the blocked user.""" + blockedUserUrl: URI -"""A Git object ID.""" -scalar GitObjectID + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! -"""Information about a signature (GPG or S/MIME) on a Commit or Tag.""" -interface GitSignature { - """Email used to sign this object.""" - email: String! + """The corresponding operation type for the action""" + operationType: OperationType - """True if the signature is valid and verified by GitHub.""" - isValid: Boolean! + """The Organization associated with the Audit Entry.""" + organization: Organization - """ - Payload for GPG signing object. Raw ODB object without the signature header. - """ - payload: String! + """The name of the Organization.""" + organizationName: String - """ASCII-armored signature header from object.""" - signature: String! + """The HTTP path for the organization""" + organizationResourcePath: URI - """GitHub user corresponding to the email signing this commit.""" - signer: User + """The HTTP URL for the organization""" + organizationUrl: URI + + """The user affected by the action""" + user: User """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - state: GitSignatureState! + userLogin: String - """True if the signature was made with GitHub's signing key.""" - wasSignedByGitHub: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""The state of a Git signature.""" -enum GitSignatureState { - """Valid signature and verified by GitHub""" - VALID +"""Audit log entry for a org.config.disable_collaborators_only event.""" +type OrgConfigDisableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Invalid signature""" - INVALID + """The user who initiated the action""" + actor: AuditEntryActor - """Malformed signature""" - MALFORMED_SIG + """The IP address of the actor""" + actorIp: String - """Key used for signing not known to GitHub""" - UNKNOWN_KEY + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Invalid email used for signing""" - BAD_EMAIL + """The username of the user who initiated the action""" + actorLogin: String - """Email used for signing unverified on GitHub""" - UNVERIFIED_EMAIL + """The HTTP path for the actor.""" + actorResourcePath: URI - """Email used for signing not known to GitHub""" - NO_USER + """The HTTP URL for the actor.""" + actorUrl: URI - """Unknown signature type""" - UNKNOWN_SIG_TYPE + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Unsigned""" - UNSIGNED + """The corresponding operation type for the action""" + operationType: OperationType - """ - Internal error - the GPG verification service is unavailable at the moment - """ - GPGVERIFY_UNAVAILABLE + """The Organization associated with the Audit Entry.""" + organization: Organization - """Internal error - the GPG verification service misbehaved""" - GPGVERIFY_ERROR + """The name of the Organization.""" + organizationName: String - """The usage flags for the key that signed this don't allow signing""" - NOT_SIGNING_KEY + """The HTTP path for the organization""" + organizationResourcePath: URI - """Signing key expired""" - EXPIRED_KEY + """The HTTP URL for the organization""" + organizationUrl: URI - """Valid signature, pending certificate revocation checking""" - OCSP_PENDING + """The user affected by the action""" + user: User - """Valid siganture, though certificate revocation check failed""" - OCSP_ERROR + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """The signing certificate or its chain could not be verified""" - BAD_CERT + """The HTTP path for the user.""" + userResourcePath: URI - """One or more certificates in chain has been revoked""" - OCSP_REVOKED + """The HTTP URL for the user.""" + userUrl: URI } -"""Git SSH string""" -scalar GitSSHRemote +"""Audit log entry for a org.config.enable_collaborators_only event.""" +type OrgConfigEnableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! -""" -An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC. -""" -scalar GitTimestamp + """The user who initiated the action""" + actor: AuditEntryActor -"""Represents a GPG signature on a Commit or Tag.""" -type GpgSignature implements GitSignature { - """Email used to sign this object.""" - email: String! + """The IP address of the actor""" + actorIp: String - """True if the signature is valid and verified by GitHub.""" - isValid: Boolean! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Hex-encoded ID of the key that signed this object.""" - keyId: String + """The username of the user who initiated the action""" + actorLogin: String - """ - Payload for GPG signing object. Raw ODB object without the signature header. - """ - payload: String! + """The HTTP path for the actor.""" + actorResourcePath: URI - """ASCII-armored signature header from object.""" - signature: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """GitHub user corresponding to the email signing this commit.""" - signer: User + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. - """ - state: GitSignatureState! + """The corresponding operation type for the action""" + operationType: OperationType - """True if the signature was made with GitHub's signing key.""" - wasSignedByGitHub: Boolean! -} + """The Organization associated with the Audit Entry.""" + organization: Organization -"""Represents a 'head_ref_deleted' event on a given pull request.""" -type HeadRefDeletedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """The name of the Organization.""" + organizationName: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The HTTP path for the organization""" + organizationResourcePath: URI - """Identifies the Ref associated with the `head_ref_deleted` event.""" - headRef: Ref + """The HTTP URL for the organization""" + organizationUrl: URI + + """The user affected by the action""" + user: User """ - Identifies the name of the Ref associated with the `head_ref_deleted` event. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - headRefName: String! - id: ID! + userLogin: String - """PullRequest referenced by event.""" - pullRequest: PullRequest! + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""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 +"""Audit log entry for a org.create event.""" +type OrgCreateAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Identifies the after commit SHA for the 'head_ref_force_pushed' event.""" - afterCommit: Commit + """The user who initiated the action""" + actor: AuditEntryActor - """ - Identifies the before commit SHA for the 'head_ref_force_pushed' event. - """ - beforeCommit: Commit + """The IP address of the actor""" + actorIp: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """PullRequest referenced by event.""" - pullRequest: PullRequest! + """The username of the user who initiated the action""" + actorLogin: String - """ - Identifies the fully qualified ref name for the 'head_ref_force_pushed' event. - """ - ref: Ref -} + """The HTTP path for the actor.""" + actorResourcePath: URI -"""Represents a 'head_ref_restored' event on a given pull request.""" -type HeadRefRestoredEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """The HTTP URL for the actor.""" + actorUrl: URI - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The billing plan for the Organization.""" + billingPlan: OrgCreateAuditEntryBillingPlan + + """The time the action was initiated""" + createdAt: PreciseDateTime! id: ID! - """PullRequest referenced by event.""" - pullRequest: PullRequest! -} + """The corresponding operation type for the action""" + operationType: OperationType -"""Detail needed to display a hovercard for a user""" -type Hovercard { - """Each of the contexts for this hovercard""" - contexts: [HovercardContext!]! -} + """The Organization associated with the Audit Entry.""" + organization: Organization -"""An individual line of a hovercard""" -interface HovercardContext { - """A string describing this context""" - message: String! + """The name of the Organization.""" + organizationName: String - """An octicon to accompany this context""" - octicon: String! -} + """The HTTP path for the organization""" + organizationResourcePath: URI -"""A string containing HTML code.""" -scalar HTML + """The HTTP URL for the organization""" + organizationUrl: URI -""" -The possible states in which authentication can be configured with an identity provider. -""" -enum IdentityProviderConfigurationState { - """Authentication with an identity provider is configured and enforced.""" - ENFORCED + """The user affected by the action""" + user: User """ - Authentication with an identity provider is configured but not enforced. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - CONFIGURED + userLogin: String - """Authentication with an identity provider is not configured.""" - UNCONFIGURED + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""Autogenerated input type of InviteEnterpriseAdmin""" -input InviteEnterpriseAdminInput { - """The ID of the enterprise to which you want to invite an administrator.""" - enterpriseId: ID! +"""The billing plans available for organizations.""" +enum OrgCreateAuditEntryBillingPlan { + """Free Plan""" + FREE - """The login of a user to invite as an administrator.""" - invitee: String + """Team Plan""" + BUSINESS - """The email of the person to invite as an administrator.""" - email: String + """Enterprise Cloud Plan""" + BUSINESS_PLUS - """The role of the administrator.""" - role: EnterpriseAdministratorRole + """Legacy Unlimited Plan""" + UNLIMITED - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Tiered Per Seat Plan""" + TIERED_PER_SEAT } -"""Autogenerated return type of InviteEnterpriseAdmin""" -type InviteEnterpriseAdminPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String +"""Audit log entry for a org.disable_oauth_app_restrictions event.""" +type OrgDisableOauthAppRestrictionsAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """The created enterprise administrator invitation.""" - invitation: EnterpriseAdministratorInvitation -} + """The user who initiated the action""" + actor: AuditEntryActor -"""The possible values for the IP allow list enabled setting.""" -enum IpAllowListEnabledSettingValue { - """The setting is enabled for the owner.""" - ENABLED + """The IP address of the actor""" + actorIp: String - """The setting is disabled for the owner.""" - DISABLED -} + """A readable representation of the actor's location""" + actorLocation: ActorLocation -""" -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! + """The username of the user who initiated the action""" + actorLogin: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """The HTTP path for the actor.""" + actorResourcePath: URI - """Whether the entry is currently active.""" - isActive: Boolean! + """The HTTP URL for the actor.""" + actorUrl: URI - """The name of the IP allow list entry.""" - name: String + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """The owner of the IP allow list entry.""" - owner: IpAllowListOwner! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! -} + """The Organization associated with the Audit Entry.""" + organization: Organization -"""The connection type for IpAllowListEntry.""" -type IpAllowListEntryConnection { - """A list of edges.""" - edges: [IpAllowListEntryEdge] + """The name of the Organization.""" + organizationName: String - """A list of nodes.""" - nodes: [IpAllowListEntry] + """The HTTP path for the organization""" + organizationResourcePath: URI - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The HTTP URL for the organization""" + organizationUrl: URI - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The user affected by the action""" + user: User -"""An edge in a connection.""" -type IpAllowListEntryEdge { - """A cursor for use in pagination.""" - cursor: String! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """The item at the end of the edge.""" - node: IpAllowListEntry + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""Ordering options for IP allow list entry connections.""" -input IpAllowListEntryOrder { - """The field to order IP allow list entries by.""" - field: IpAllowListEntryOrderField! +"""Audit log entry for a org.disable_saml event.""" +type OrgDisableSamlAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """The ordering direction.""" - direction: OrderDirection! -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Properties by which IP allow list entry connections can be ordered.""" -enum IpAllowListEntryOrderField { - """Order IP allow list entries by creation time.""" - CREATED_AT + """The IP address of the actor""" + actorIp: String - """Order IP allow list entries by the allow list value.""" - ALLOW_LIST_VALUE -} + """A readable representation of the actor's location""" + actorLocation: ActorLocation + + """The username of the user who initiated the action""" + actorLogin: String -"""Types that can own an IP allow list.""" -union IpAllowListOwner = Enterprise | Organization + """The HTTP path for the actor.""" + actorResourcePath: URI -""" -An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project. -""" -type Issue implements Node & Assignable & Closable & Comment & Updatable & UpdatableComment & Labelable & Lockable & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable { - """Reason that the conversation was locked.""" - activeLockReason: LockReason + """The HTTP URL for the actor.""" + actorUrl: URI - """A list of Users assigned to this object.""" - assignees( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The time the action was initiated""" + createdAt: PreciseDateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The SAML provider's digest algorithm URL.""" + digestMethodUrl: URI + id: ID! - """Returns the first _n_ elements from the list.""" - first: Int + """The SAML provider's issuer URL.""" + issuerUrl: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): UserConnection! + """The corresponding operation type for the action""" + operationType: OperationType - """The actor who authored the comment.""" - author: Actor + """The Organization associated with the Audit Entry.""" + organization: Organization - """Author's association with the subject of the comment.""" - authorAssociation: CommentAuthorAssociation! + """The name of the Organization.""" + organizationName: String - """Identifies the body of the issue.""" - body: String! + """The HTTP path for the organization""" + organizationResourcePath: URI - """The body rendered to HTML.""" - bodyHTML: HTML! + """The HTTP URL for the organization""" + organizationUrl: URI - """The http path for this issue body""" - bodyResourcePath: URI! + """The SAML provider's signature algorithm URL.""" + signatureMethodUrl: URI - """Identifies the body of the issue rendered to text.""" - bodyText: String! + """The SAML provider's single sign-on URL.""" + singleSignOnUrl: URI - """The http URL for this issue body""" - bodyUrl: URI! + """The user affected by the action""" + user: User """ - `true` if the object is closed (definition of closed may depend on type) + For actions involving two users, the actor is the initiator and the user is the affected user. """ - closed: Boolean! - - """Identifies the date and time when the object was closed.""" - closedAt: DateTime + userLogin: String - """A list of comments associated with the Issue.""" - comments( - """Ordering options for issue comments returned from the connection.""" - orderBy: IssueCommentOrder + """The HTTP path for the user.""" + userResourcePath: URI - """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.disable_two_factor_requirement event.""" +type OrgDisableTwoFactorRequirementAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Returns the first _n_ elements from the list.""" - first: Int + """The user who initiated the action""" + actor: AuditEntryActor - """Returns the last _n_ elements from the list.""" - last: Int - ): IssueCommentConnection! + """The IP address of the actor""" + actorIp: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Check if this comment was created via an email reply.""" - createdViaEmail: Boolean! + """The username of the user who initiated the action""" + actorLogin: String - """Identifies the primary key from the database.""" - databaseId: Int + """The HTTP path for the actor.""" + actorResourcePath: URI - """The actor who edited the comment.""" - editor: Actor + """The HTTP URL for the actor.""" + actorUrl: URI - """The hovercard information for this issue""" - hovercard( - """Whether or not to include notification contexts""" - includeNotificationContexts: Boolean = true - ): Hovercard! + """The time the action was initiated""" + createdAt: PreciseDateTime! id: ID! - """ - Check if this comment was edited and includes an edit with the creation data - """ - includesCreatedEdit: Boolean! - - """Is this issue read by the viewer""" - isReadByViewer: Boolean - - """A list of labels associated with the object.""" - labels( - """Ordering options for labels returned from the connection.""" - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + """The corresponding operation type for the action""" + operationType: OperationType - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The Organization associated with the Audit Entry.""" + organization: Organization - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The name of the Organization.""" + organizationName: String - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP path for the organization""" + organizationResourcePath: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): LabelConnection + """The HTTP URL for the organization""" + organizationUrl: URI - """The moment the editor made the last edit""" - lastEditedAt: DateTime + """The user affected by the action""" + user: User - """`true` if the object is locked""" - locked: Boolean! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Identifies the milestone associated with the issue.""" - milestone: Milestone + """The HTTP path for the user.""" + userResourcePath: URI - """Identifies the issue number.""" - number: Int! + """The HTTP URL for the user.""" + userUrl: URI +} - """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 +"""Audit log entry for a org.enable_oauth_app_restrictions event.""" +type OrgEnableOauthAppRestrictionsAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + 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 - ): UserConnection! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """List of project cards associated with this issue.""" - projectCards( - """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 - """Returns the last _n_ elements from the list.""" - last: Int + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """A list of archived states to filter the cards by""" - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - ): ProjectCardConnection! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies when the comment was published at.""" - publishedAt: DateTime + """The Organization associated with the Audit Entry.""" + organization: Organization - """A list of reactions grouped by content left on the subject.""" - reactionGroups: [ReactionGroup!] + """The name of the Organization.""" + organizationName: String - """A list of Reactions left on the Issue.""" - reactions( - """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 Reactions by emoji.""" - content: ReactionContent + """The HTTP path for the user.""" + userResourcePath: URI - """Allows specifying the order in which reactions are returned.""" - orderBy: ReactionOrder - ): ReactionConnection! + """The HTTP URL for the user.""" + userUrl: URI +} - """The repository associated with this node.""" - repository: Repository! +"""Audit log entry for a org.enable_saml event.""" +type OrgEnableSamlAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """The HTTP path for this issue""" - resourcePath: URI! + """The user who initiated the action""" + actor: AuditEntryActor - """Identifies the state of the issue.""" - state: IssueState! + """The IP address of the actor""" + actorIp: String - """A list of events, comments, commits, etc. associated with the issue.""" - timelineItems( - """Filter timeline items by a `since` timestamp.""" - since: DateTime + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Skips the first _n_ elements in the list.""" - skip: Int + """The username of the user who initiated the action""" + actorLogin: String - """Filter timeline items by type.""" - itemTypes: [IssueTimelineItemsItemType!] + """The HTTP path for the actor.""" + actorResourcePath: URI - """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! - """Returns the first _n_ elements from the list.""" - first: Int + """The SAML provider's digest algorithm URL.""" + digestMethodUrl: URI + id: ID! - """Returns the last _n_ elements from the list.""" - last: Int - ): IssueTimelineItemsConnection! + """The SAML provider's issuer URL.""" + issuerUrl: URI - """Identifies the issue title.""" - title: String! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The HTTP URL for this issue""" - url: URI! + """The name of the Organization.""" + organizationName: String - """A list of edits to this content.""" - 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 SAML provider's signature algorithm URL.""" + signatureMethodUrl: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): UserContentEditConnection + """The SAML provider's single sign-on URL.""" + singleSignOnUrl: URI - """Can user react to this subject""" - viewerCanReact: Boolean! + """The user affected by the action""" + user: User """ - Check if the viewer is able to change their subscription status for the repository. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanSubscribe: Boolean! + userLogin: String - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI - """Reasons why the current viewer can not update this comment.""" - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + """The HTTP URL for the user.""" + userUrl: URI +} - """Did the viewer author this comment.""" - viewerDidAuthor: Boolean! +"""Audit log entry for a org.enable_two_factor_requirement event.""" +type OrgEnableTwoFactorRequirementAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. - """ - viewerSubscription: SubscriptionState -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Represents a comment on an Issue.""" -type IssueComment implements Node & Comment & Deletable & Minimizable & Updatable & UpdatableComment & Reactable & RepositoryNode { - """The actor who authored the comment.""" - author: Actor + """The IP address of the actor""" + actorIp: String - """Author's association with the subject of the comment.""" - authorAssociation: CommentAuthorAssociation! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The body as Markdown.""" - body: String! + """The username of the user who initiated the action""" + actorLogin: String - """The body rendered to HTML.""" - bodyHTML: HTML! + """The HTTP path for the actor.""" + actorResourcePath: URI - """The body rendered to text.""" - bodyText: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Check if this comment was created via an email reply.""" - createdViaEmail: Boolean! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the primary key from the database.""" - databaseId: Int + """The Organization associated with the Audit Entry.""" + organization: Organization - """The actor who edited the comment.""" - editor: Actor - id: ID! + """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 """ - Check if this comment was edited and includes an edit with the creation data + For actions involving two users, the actor is the initiator and the user is the affected user. """ - includesCreatedEdit: Boolean! + userLogin: String - """Returns whether or not a comment has been minimized.""" - isMinimized: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI - """Identifies the issue associated with the comment.""" - issue: Issue! + """The HTTP URL for the user.""" + userUrl: URI +} - """The moment the editor made the last edit""" - lastEditedAt: DateTime +"""Ordering options for an organization's enterprise owner connections.""" +input OrgEnterpriseOwnerOrder { + """The field to order enterprise owners by.""" + field: OrgEnterpriseOwnerOrderField! - """Returns why the comment was minimized.""" - minimizedReason: String + """The ordering direction.""" + direction: OrderDirection! +} - """Identifies when the comment was published at.""" - publishedAt: DateTime +"""Properties by which enterprise owners can be ordered.""" +enum OrgEnterpriseOwnerOrderField { + """Order enterprise owners by login.""" + LOGIN +} - """ - Returns the pull request associated with the comment, if this comment was made on a - pull request. - - """ - pullRequest: PullRequest +"""Audit log entry for a org.invite_member event.""" +type OrgInviteMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """A list of reactions grouped by content left on the subject.""" - reactionGroups: [ReactionGroup!] + """The user who initiated the action""" + actor: AuditEntryActor - """A list of Reactions left on the Issue.""" - reactions( - """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 + """The HTTP path for the actor.""" + actorResourcePath: URI - """Allows filtering Reactions by emoji.""" - content: ReactionContent + """The HTTP URL for the actor.""" + actorUrl: URI - """Allows specifying the order in which reactions are returned.""" - orderBy: ReactionOrder - ): ReactionConnection! + """The time the action was initiated""" + createdAt: PreciseDateTime! - """The repository associated with this node.""" - repository: Repository! + """The email address of the organization invitation.""" + email: String + id: ID! - """The HTTP path for this issue comment""" - resourcePath: URI! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The HTTP URL for this issue comment""" - url: URI! + """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 - """A list of edits to this content.""" - userContentEdits( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for the user.""" + userUrl: URI +} - """Returns the last _n_ elements from the list.""" - last: Int - ): UserContentEditConnection +"""Audit log entry for a org.invite_to_business event.""" +type OrgInviteToBusinessAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """Check if the current viewer can delete this object.""" - viewerCanDelete: Boolean! + """The user who initiated the action""" + actor: AuditEntryActor - """Check if the current viewer can minimize this object.""" - viewerCanMinimize: Boolean! + """The IP address of the actor""" + actorIp: String - """Can user react to this subject""" - viewerCanReact: Boolean! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """The username of the user who initiated the action""" + actorLogin: String - """Reasons why the current viewer can not update this comment.""" - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + """The HTTP path for the actor.""" + actorResourcePath: URI - """Did the viewer author this comment.""" - viewerDidAuthor: Boolean! -} + """The HTTP URL for the actor.""" + actorUrl: URI -"""The connection type for IssueComment.""" -type IssueCommentConnection { - """A list of edges.""" - edges: [IssueCommentEdge] + """The time the action was initiated""" + createdAt: PreciseDateTime! - """A list of nodes.""" - nodes: [IssueComment] + """The HTTP path for this enterprise.""" + enterpriseResourcePath: URI - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The slug of the enterprise.""" + enterpriseSlug: String - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The HTTP URL for this enterprise.""" + enterpriseUrl: URI + id: ID! -"""An edge in a connection.""" -type IssueCommentEdge { - """A cursor for use in pagination.""" - cursor: String! + """The corresponding operation type for the action""" + operationType: OperationType - """The item at the end of the edge.""" - node: IssueComment -} + """The Organization associated with the Audit Entry.""" + organization: Organization -"""Ways in which lists of issue comments can be ordered upon return.""" -input IssueCommentOrder { - """The field in which to order issue comments by.""" - field: IssueCommentOrderField! + """The name of the Organization.""" + organizationName: String - """The direction in which to order issue comments by the specified field.""" - direction: OrderDirection! -} + """The HTTP path for the organization""" + organizationResourcePath: URI -"""Properties by which issue comment connections can be ordered.""" -enum IssueCommentOrderField { - """Order issue comments by update time""" - UPDATED_AT -} + """The HTTP URL for the organization""" + organizationUrl: URI -"""The connection type for Issue.""" -type IssueConnection { - """A list of edges.""" - edges: [IssueEdge] + """The user affected by the action""" + user: User - """A list of nodes.""" - nodes: [Issue] + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The HTTP path for the user.""" + userResourcePath: URI - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The HTTP URL for the user.""" + userUrl: URI } -"""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 +"""Audit log entry for a org.oauth_app_access_approved event.""" +type OrgOauthAppAccessApprovedAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """Returns the first _n_ elements from the list.""" - first: Int + """The user who initiated the action""" + actor: AuditEntryActor - """Returns the last _n_ elements from the list.""" - last: Int + """The IP address of the actor""" + actorIp: String - """Ordering options for contributions returned from the connection.""" - orderBy: ContributionOrder = {direction: DESC} - ): CreatedIssueContributionConnection! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The repository in which the issues were opened.""" - repository: Repository! -} + """The username of the user who initiated the action""" + actorLogin: String -"""An edge in a connection.""" -type IssueEdge { - """A cursor for use in pagination.""" - cursor: String! + """The HTTP path for the actor.""" + actorResourcePath: URI - """The item at the end of the edge.""" - node: Issue -} + """The HTTP URL for the actor.""" + actorUrl: URI -"""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 + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """List issues created by given name.""" - createdBy: String + """The name of the OAuth Application.""" + oauthApplicationName: String - """List issues where the list of label names exist on the issue.""" - labels: [String!] + """The HTTP path for the OAuth Application""" + oauthApplicationResourcePath: URI - """List issues where the given name is mentioned in the issue.""" - mentioned: String + """The HTTP URL for the OAuth Application""" + oauthApplicationUrl: 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. - """ - milestone: String + """The corresponding operation type for the action""" + operationType: OperationType - """List issues that have been updated at or after the given date.""" - since: DateTime + """The Organization associated with the Audit Entry.""" + organization: Organization - """List issues filtered by the list of states given.""" - states: [IssueState!] + """The name of the Organization.""" + organizationName: String - """List issues subscribed to by viewer.""" - viewerSubscribed: Boolean = false -} + """The HTTP path for the organization""" + organizationResourcePath: URI -"""Ways in which lists of issues can be ordered upon return.""" -input IssueOrder { - """The field in which to order issues by.""" - field: IssueOrderField! + """The HTTP URL for the organization""" + organizationUrl: URI - """The direction in which to order issues by the specified field.""" - direction: OrderDirection! -} + """The user affected by the action""" + user: User -"""Properties by which issue connections can be ordered.""" -enum IssueOrderField { - """Order issues by creation time""" - CREATED_AT + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Order issues by update time""" - UPDATED_AT + """The HTTP path for the user.""" + userResourcePath: URI - """Order issues by comment count""" - COMMENTS + """The HTTP URL for the user.""" + userUrl: URI } -"""Used for return value of Repository.issueOrPullRequest.""" -union IssueOrPullRequest = Issue | PullRequest +"""Audit log entry for a org.oauth_app_access_denied event.""" +type OrgOauthAppAccessDeniedAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! -"""The possible states of an issue.""" -enum IssueState { - """An issue that is still open""" - OPEN + """The user who initiated the action""" + actor: AuditEntryActor - """An issue that has been closed""" - CLOSED -} + """The IP address of the actor""" + actorIp: String -"""A repository issue template.""" -type IssueTemplate { - """The template purpose.""" - about: String + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The suggested issue body.""" - body: String + """The username of the user who initiated the action""" + actorLogin: String - """The template name.""" - name: String! + """The HTTP path for the actor.""" + actorResourcePath: URI - """The suggested issue title.""" - title: String -} + """The HTTP URL for the actor.""" + actorUrl: URI -"""The connection type for IssueTimelineItem.""" -type IssueTimelineConnection { - """A list of edges.""" - edges: [IssueTimelineItemEdge] + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """A list of nodes.""" - nodes: [IssueTimelineItem] + """The name of the OAuth Application.""" + oauthApplicationName: String - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The HTTP path for the OAuth Application""" + oauthApplicationResourcePath: URI - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The HTTP URL for the OAuth Application""" + oauthApplicationUrl: URI -"""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 + """The corresponding operation type for the action""" + operationType: OperationType -"""An edge in a connection.""" -type IssueTimelineItemEdge { - """A cursor for use in pagination.""" - cursor: String! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The item at the end of the edge.""" - node: IssueTimelineItem -} + """The name of the Organization.""" + organizationName: String -"""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 HTTP path for the organization""" + organizationResourcePath: URI -"""The connection type for IssueTimelineItems.""" -type IssueTimelineItemsConnection { - """A list of edges.""" - edges: [IssueTimelineItemsEdge] + """The HTTP URL for the organization""" + organizationUrl: URI + + """The user affected by the action""" + user: User """ - Identifies the count of items after applying `before` and `after` filters. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - filteredCount: Int! + userLogin: String - """A list of nodes.""" - nodes: [IssueTimelineItems] + """The HTTP path for the user.""" + userResourcePath: URI - """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. - """ - pageCount: Int! + """The HTTP URL for the user.""" + userUrl: URI +} - """Information to aid in pagination.""" - pageInfo: PageInfo! +"""Audit log entry for a org.oauth_app_access_requested event.""" +type OrgOauthAppAccessRequestedAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The user who initiated the action""" + actor: AuditEntryActor - """Identifies the date and time when the timeline was last updated.""" - updatedAt: DateTime! -} + """The IP address of the actor""" + actorIp: String -"""An edge in a connection.""" -type IssueTimelineItemsEdge { - """A cursor for use in pagination.""" - cursor: String! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The item at the end of the edge.""" - node: IssueTimelineItems -} + """The username of the user who initiated the action""" + actorLogin: String -"""The possible item types found in a timeline.""" -enum IssueTimelineItemsItemType { - """Represents a comment on an Issue.""" - ISSUE_COMMENT + """The HTTP path for the actor.""" + actorResourcePath: URI - """Represents a mention made by one issue or pull request to another.""" - CROSS_REFERENCED_EVENT + """The HTTP URL for the actor.""" + actorUrl: URI - """ - Represents a 'added_to_project' event on a given issue or pull request. - """ - ADDED_TO_PROJECT_EVENT + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Represents an 'assigned' event on any assignable object.""" - ASSIGNED_EVENT + """The name of the OAuth Application.""" + oauthApplicationName: String - """Represents a 'closed' event on any `Closable`.""" - CLOSED_EVENT + """The HTTP path for the OAuth Application""" + oauthApplicationResourcePath: URI - """Represents a 'comment_deleted' event on a given issue or pull request.""" - COMMENT_DELETED_EVENT + """The HTTP URL for the OAuth Application""" + oauthApplicationUrl: URI - """Represents a 'connected' event on a given issue or pull request.""" - CONNECTED_EVENT + """The corresponding operation type for the action""" + operationType: OperationType - """ - Represents a 'converted_note_to_issue' event on a given issue or pull request. - """ - CONVERTED_NOTE_TO_ISSUE_EVENT + """The Organization associated with the Audit Entry.""" + organization: Organization - """Represents a 'demilestoned' event on a given issue or pull request.""" - DEMILESTONED_EVENT + """The name of the Organization.""" + organizationName: String - """Represents a 'disconnected' event on a given issue or pull request.""" - DISCONNECTED_EVENT + """The HTTP path for the organization""" + organizationResourcePath: URI - """Represents a 'labeled' event on a given issue or pull request.""" - LABELED_EVENT + """The HTTP URL for the organization""" + organizationUrl: URI - """Represents a 'locked' event on a given issue or pull request.""" - LOCKED_EVENT + """The user affected by the action""" + user: User """ - Represents a 'marked_as_duplicate' 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. """ - MARKED_AS_DUPLICATE_EVENT + userLogin: String - """Represents a 'mentioned' event on a given issue or pull request.""" - MENTIONED_EVENT + """The HTTP path for the user.""" + userResourcePath: URI - """Represents a 'milestoned' event on a given issue or pull request.""" - MILESTONED_EVENT + """The HTTP URL for the user.""" + userUrl: URI +} - """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. - """ - MOVED_COLUMNS_IN_PROJECT_EVENT +"""Audit log entry for a org.remove_billing_manager event.""" +type OrgRemoveBillingManagerAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Represents a 'pinned' event on a given issue or pull request.""" - PINNED_EVENT + """The user who initiated the action""" + actor: AuditEntryActor - """Represents a 'referenced' event on a given `ReferencedSubject`.""" - REFERENCED_EVENT + """The IP address of the actor""" + actorIp: String - """ - Represents a 'removed_from_project' event on a given issue or pull request. - """ - REMOVED_FROM_PROJECT_EVENT + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Represents a 'renamed' event on a given issue or pull request""" - RENAMED_TITLE_EVENT + """The username of the user who initiated the action""" + actorLogin: String - """Represents a 'reopened' event on any `Closable`.""" - REOPENED_EVENT + """The HTTP path for the actor.""" + actorResourcePath: URI - """Represents a 'subscribed' event on a given `Subscribable`.""" - SUBSCRIBED_EVENT + """The HTTP URL for the actor.""" + actorUrl: URI - """Represents a 'transferred' event on a given issue or pull request.""" - TRANSFERRED_EVENT + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Represents an 'unassigned' event on any assignable object.""" - UNASSIGNED_EVENT + """The corresponding operation type for the action""" + operationType: OperationType - """Represents an 'unlabeled' event on a given issue or pull request.""" - UNLABELED_EVENT + """The Organization associated with the Audit Entry.""" + organization: Organization - """Represents an 'unlocked' event on a given issue or pull request.""" - UNLOCKED_EVENT + """The name of the Organization.""" + organizationName: String - """Represents a 'user_blocked' event on a given user.""" - USER_BLOCKED_EVENT + """The HTTP path for the organization""" + organizationResourcePath: URI - """ - Represents an 'unmarked_as_duplicate' event on a given issue or pull request. - """ - UNMARKED_AS_DUPLICATE_EVENT + """The HTTP URL for the organization""" + organizationUrl: URI - """Represents an 'unpinned' event on a given issue or pull request.""" - UNPINNED_EVENT + """The reason for the billing manager being removed.""" + reason: OrgRemoveBillingManagerAuditEntryReason - """Represents an 'unsubscribed' event on a given `Subscribable`.""" - UNSUBSCRIBED_EVENT -} + """The user affected by the action""" + user: User -"""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. - + For actions involving two users, the actor is the initiator and the user is the affected user. """ - isRestricted: Boolean! - - """When this contribution was made.""" - occurredAt: DateTime! + userLogin: String - """The HTTP path for this contribution.""" - resourcePath: URI! + """The HTTP path for the user.""" + userResourcePath: URI - """The HTTP URL for this contribution.""" - url: URI! + """The HTTP URL for the user.""" + userUrl: URI +} +"""The reason a billing manager was removed from an Organization.""" +enum OrgRemoveBillingManagerAuditEntryReason { """ - The user who made this contribution. - + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - user: User! -} + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE -"""A label for categorizing Issues or Milestones with a given Repository.""" -type Label implements Node { - """Identifies the label color.""" - color: String! + """SAML external identity missing""" + SAML_EXTERNAL_IDENTITY_MISSING - """Identifies the date and time when the label was created.""" - createdAt: DateTime + """SAML SSO enforcement requires an external identity""" + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY +} - """A brief description of this label.""" - description: String - id: ID! +"""Audit log entry for a org.remove_member event.""" +type OrgRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Indicates whether or not this is a default label.""" - isDefault: Boolean! + """The user who initiated the action""" + actor: AuditEntryActor - """A list of issues associated with this label.""" - issues( - """Ordering options for issues returned from the connection.""" - orderBy: IssueOrder + """The IP address of the actor""" + actorIp: String - """A list of label names to filter the pull requests by.""" - labels: [String!] + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """A list of states to filter the issues by.""" - states: [IssueState!] + """The username of the user who initiated the action""" + actorLogin: String - """Filtering options for issues returned from the connection.""" - filterBy: IssueFilters + """The HTTP path for the actor.""" + actorResourcePath: URI - """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 types of membership the member has with the organization.""" + membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] - """Returns the last _n_ elements from the list.""" - last: Int - ): IssueConnection! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the label name.""" - name: String! + """The Organization associated with the Audit Entry.""" + organization: Organization - """A list of pull requests associated with this label.""" - pullRequests( - """A list of states to filter the pull requests by.""" - states: [PullRequestState!] + """The name of the Organization.""" + organizationName: String - """A list of label names to filter the pull requests by.""" - labels: [String!] + """The HTTP path for the organization""" + organizationResourcePath: URI - """The head ref name to filter the pull requests by.""" - headRefName: String + """The HTTP URL for the organization""" + organizationUrl: URI - """The base ref name to filter the pull requests by.""" - baseRefName: String + """The reason for the member being removed.""" + reason: OrgRemoveMemberAuditEntryReason - """Ordering options for pull requests returned from the connection.""" - orderBy: IssueOrder + """The user affected by the action""" + user: User - """Returns the elements in the list that come after the specified cursor.""" - after: String + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for the user.""" + userUrl: URI +} - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestConnection! +"""The type of membership a user has with an Organization.""" +enum OrgRemoveMemberAuditEntryMembershipType { + """A suspended member.""" + SUSPENDED - """The repository associated with this label.""" - repository: Repository! + """A direct member is a user that is a member of the Organization.""" + DIRECT_MEMBER - """The HTTP path for this label.""" - resourcePath: URI! + """ + 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 - """Identifies the date and time when the label was last updated.""" - updatedAt: DateTime + """ + A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + """ + BILLING_MANAGER - """The HTTP URL for this label.""" - url: URI! + """ + 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 + + """ + An outside collaborator is a person who isn't explicitly a member of the + Organization, but who has Read, Write, or Admin permissions to one or more + repositories in the organization. + """ + OUTSIDE_COLLABORATOR } -"""An object that can have labels assigned to it.""" -interface Labelable { - """A list of labels associated with the object.""" - labels( - """Ordering options for labels returned from the connection.""" - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} +"""The reason a member was removed from an Organization.""" +enum OrgRemoveMemberAuditEntryReason { + """ + The organization required 2FA of its billing managers and this user did not have 2FA enabled. + """ + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE - """Returns the elements in the list that come after the specified cursor.""" - after: String + """SAML external identity missing""" + SAML_EXTERNAL_IDENTITY_MISSING - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """SAML SSO enforcement requires an external identity""" + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY - """Returns the first _n_ elements from the list.""" - first: Int + """User account has been deleted""" + USER_ACCOUNT_DELETED - """Returns the last _n_ elements from the list.""" - last: Int - ): LabelConnection + """User was removed from organization during account recovery""" + TWO_FACTOR_ACCOUNT_RECOVERY } -"""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! +"""Audit log entry for a org.remove_outside_collaborator event.""" +type OrgRemoveOutsideCollaboratorAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Represents a 'labeled' event on a given issue or pull request.""" -type LabeledEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """The IP address of the actor""" + actorIp: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Identifies the label associated with the 'labeled' event.""" - label: Label! + """The username of the user who initiated the action""" + actorLogin: String - """Identifies the `Labelable` associated with the event.""" - labelable: Labelable! -} + """The HTTP path for the actor.""" + actorResourcePath: URI -"""An edge in a connection.""" -type LabelEdge { - """A cursor for use in pagination.""" - cursor: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """The item at the end of the edge.""" - node: Label -} + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! -"""Ways in which lists of labels can be ordered upon return.""" -input LabelOrder { - """The field in which to order labels by.""" - field: LabelOrderField! + """ + The types of membership the outside collaborator has with the organization. + """ + membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] - """The direction in which to order labels by the specified field.""" - direction: OrderDirection! -} + """The corresponding operation type for the action""" + operationType: OperationType -"""Properties by which label connections can be ordered.""" -enum LabelOrderField { - """Order labels by name """ - NAME + """The Organization associated with the Audit Entry.""" + organization: Organization - """Order labels by creation time""" - CREATED_AT -} + """The name of the Organization.""" + organizationName: String -"""Represents a given language found in repositories.""" -type Language implements Node { - """The color defined for the current language.""" - color: String - id: ID! + """The HTTP path for the organization""" + organizationResourcePath: URI - """The name of the current language.""" - name: String! -} + """The HTTP URL for the organization""" + organizationUrl: URI -"""A list of languages associated with the parent.""" -type LanguageConnection { - """A list of edges.""" - edges: [LanguageEdge] + """ + The reason for the outside collaborator being removed from the Organization. + """ + reason: OrgRemoveOutsideCollaboratorAuditEntryReason - """A list of nodes.""" - nodes: [Language] + """The user affected by the action""" + user: User - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The HTTP path for the user.""" + userResourcePath: URI - """The total size in bytes of files written in that language.""" - totalSize: Int! + """The HTTP URL for the user.""" + userUrl: URI } -"""Represents the language of a repository.""" -type LanguageEdge { - cursor: String! - node: Language! +"""The type of membership a user has with an Organization.""" +enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { + """ + 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 - """The number of bytes of code written in the language.""" - size: Int! + """ + 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 billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + """ + BILLING_MANAGER } -"""Ordering options for language connections.""" -input LanguageOrder { - """The field to order languages by.""" - field: LanguageOrderField! +"""The reason an outside collaborator was removed from an Organization.""" +enum OrgRemoveOutsideCollaboratorAuditEntryReason { + """ + The organization required 2FA of its billing managers and this user did not have 2FA enabled. + """ + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE - """The ordering direction.""" - direction: OrderDirection! + """SAML external identity missing""" + SAML_EXTERNAL_IDENTITY_MISSING } -"""Properties by which language connections can be ordered.""" -enum LanguageOrderField { - """Order languages by the size of all files containing the language""" - SIZE -} +"""Audit log entry for a org.restore_member event.""" +type OrgRestoreMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! -"""A repository's open source license""" -type License implements Node { - """The full text of the license""" - body: String! + """The user who initiated the action""" + actor: AuditEntryActor - """The conditions set by the license""" - conditions: [LicenseRule]! + """The IP address of the actor""" + actorIp: String - """A human-readable description of the license""" - description: String + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Whether the license should be featured""" - featured: Boolean! + """The username of the user who initiated the action""" + actorLogin: String - """Whether the license should be displayed in license pickers""" - hidden: Boolean! + """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! - """Instructions on how to implement the license""" - implementation: String + """The corresponding operation type for the action""" + operationType: OperationType - """The lowercased SPDX ID of the license""" - key: String! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The limitations set by the license""" - limitations: [LicenseRule]! + """The name of the Organization.""" + organizationName: String - """The license full name specified by """ - name: String! + """The HTTP path for the organization""" + organizationResourcePath: URI - """Customary short name if applicable (e.g, GPLv3)""" - nickname: String + """The HTTP URL for the organization""" + organizationUrl: URI - """The permissions set by the license""" - permissions: [LicenseRule]! + """The number of custom email routings for the restored member.""" + restoredCustomEmailRoutingsCount: Int - """ - Whether the license is a pseudo-license placeholder (e.g., other, no-license) - """ - pseudoLicense: Boolean! + """The number of issue assignments for the restored member.""" + restoredIssueAssignmentsCount: Int - """Short identifier specified by """ - spdxId: String + """Restored organization membership objects.""" + restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] - """URL to the license on """ - url: URI -} + """The number of restored memberships.""" + restoredMembershipsCount: Int -"""Describes a License's conditions, permissions, and limitations""" -type LicenseRule { - """A description of the rule""" - description: String! + """The number of repositories of the restored member.""" + restoredRepositoriesCount: Int - """The machine-readable rule key""" - key: String! + """The number of starred repositories for the restored member.""" + restoredRepositoryStarsCount: Int - """The human-readable rule label""" - label: String! -} + """The number of watched repositories for the restored member.""" + restoredRepositoryWatchesCount: Int -"""Autogenerated input type of LinkRepositoryToProject""" -input LinkRepositoryToProjectInput { - """The ID of the Project to link to a Repository""" - projectId: ID! + """The user affected by the action""" + user: User - """The ID of the Repository to link to a Project.""" - repositoryId: ID! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""Autogenerated return type of LinkRepositoryToProject""" -type LinkRepositoryToProjectPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String +"""Types of memberships that can be restored for an Organization member.""" +union OrgRestoreMemberAuditEntryMembership = OrgRestoreMemberMembershipOrganizationAuditEntryData | OrgRestoreMemberMembershipRepositoryAuditEntryData | OrgRestoreMemberMembershipTeamAuditEntryData - """The linked Project.""" - project: Project +"""Metadata for an organization membership for org.restore_member actions""" +type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { + """The Organization associated with the Audit Entry.""" + organization: Organization - """The linked Repository.""" - repository: Repository -} + """The name of the Organization.""" + organizationName: String -"""An object that can be locked.""" -interface Lockable { - """Reason that the conversation was locked.""" - activeLockReason: LockReason + """The HTTP path for the organization""" + organizationResourcePath: URI - """`true` if the object is locked""" - locked: Boolean! + """The HTTP URL for the organization""" + organizationUrl: URI } -"""Represents a 'locked' event on a given issue or pull request.""" -type LockedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor +"""Metadata for a repository membership for org.restore_member actions""" +type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { + """The repository associated with the action""" + repository: Repository - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """The name of the repository""" + repositoryName: String - """Reason that the conversation was locked (optional).""" - lockReason: LockReason + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Object that was locked.""" - lockable: Lockable! + """The HTTP URL for the repository""" + repositoryUrl: URI } -"""Autogenerated input type of LockLockable""" -input LockLockableInput { - """ID of the item to be locked.""" - lockableId: ID! +"""Metadata for a team membership for org.restore_member actions""" +type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { + """The team associated with the action""" + team: Team - """A reason for why the item will be locked.""" - lockReason: LockReason + """The name of the team""" + teamName: String - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The HTTP path for this team""" + teamResourcePath: URI + + """The HTTP URL for this team""" + teamUrl: URI } -"""Autogenerated return type of LockLockable""" -type LockLockablePayload { - """Identifies the actor who performed the event.""" - actor: Actor +"""Audit log entry for a org.unblock_user""" +type OrgUnblockUserAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The user who initiated the action""" + actor: AuditEntryActor - """The item that was locked.""" - lockedRecord: Lockable -} + """The IP address of the actor""" + actorIp: String -"""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 + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """ - The issue or pull request was locked because the conversation was too heated. - """ - TOO_HEATED + """The username of the user who initiated the action""" + actorLogin: String - """ - The issue or pull request was locked because the conversation was resolved. - """ - RESOLVED + """The HTTP path for the actor.""" + actorResourcePath: URI - """ - The issue or pull request was locked because the conversation was spam. - """ - SPAM -} + """The HTTP URL for the actor.""" + actorUrl: URI -"""A placeholder user for attribution of imported data on GitHub.""" -type Mannequin implements Node & Actor & UniformResourceLocatable { - """A URL pointing to the GitHub App's public avatar.""" - avatarUrl( - """The size of the resulting square image.""" - size: Int - ): URI! + """The user being unblocked by the organization.""" + blockedUser: User - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The username of the blocked user.""" + blockedUserName: String - """Identifies the primary key from the database.""" - databaseId: Int + """The HTTP path for the blocked user.""" + blockedUserResourcePath: URI - """The mannequin's email on the source instance.""" - email: String - id: ID! + """The HTTP URL for the blocked user.""" + blockedUserUrl: URI - """The username of the actor.""" - login: String! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """The HTML path to this resource.""" - resourcePath: URI! + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The URL to this resource.""" - url: URI! -} + """The name of the Organization.""" + organizationName: String -""" -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 HTTP path for the organization""" + organizationResourcePath: URI - """ - The authoritative issue or pull request which has been duplicated by another. - """ - canonical: IssueOrPullRequest + """The HTTP URL for the organization""" + organizationUrl: URI - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The user affected by the action""" + user: User """ - The issue or pull request which has been marked as a duplicate of another. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - duplicate: IssueOrPullRequest - id: ID! + userLogin: String - """Canonical and duplicate belong to different repositories.""" - isCrossRepository: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""A public description of a Marketplace category.""" -type MarketplaceCategory implements Node { - """The category's description.""" - description: String +"""Audit log entry for a org.update_default_repository_permission""" +type OrgUpdateDefaultRepositoryPermissionAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """ - The technical description of how apps listed in this category work with GitHub. - """ - howItWorks: String - id: ID! + """The user who initiated the action""" + actor: AuditEntryActor - """The category's name.""" - name: String! + """The IP address of the actor""" + actorIp: String - """How many Marketplace listings have this as their primary category.""" - primaryListingCount: Int! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The HTTP path for this Marketplace category.""" - resourcePath: URI! + """The username of the user who initiated the action""" + actorLogin: String - """How many Marketplace listings have this as their secondary category.""" - secondaryListingCount: Int! + """The HTTP path for the actor.""" + actorResourcePath: URI - """The short name of the category used in its URL.""" - slug: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """The HTTP URL for this Marketplace category.""" - url: URI! -} + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! -"""A listing in the GitHub integration marketplace.""" -type MarketplaceListing implements Node { - """The GitHub App this listing represents.""" - app: App + """The corresponding operation type for the action""" + operationType: OperationType - """URL to the listing owner's company site.""" - companyUrl: URI + """The Organization associated with the Audit Entry.""" + organization: Organization - """ - The HTTP path for configuring access to the listing's integration or OAuth app - """ - configurationResourcePath: URI! + """The name of the Organization.""" + organizationName: String - """ - The HTTP URL for configuring access to the listing's integration or OAuth app - """ - configurationUrl: URI! + """The HTTP path for the organization""" + organizationResourcePath: URI - """URL to the listing's documentation.""" - documentationUrl: URI + """The HTTP URL for the organization""" + organizationUrl: URI - """The listing's detailed description.""" - extendedDescription: String + """The new base repository permission level for the organization.""" + permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission - """The listing's detailed description rendered to HTML.""" - extendedDescriptionHTML: HTML! + """The former base repository permission level for the organization.""" + permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission - """The listing's introductory description.""" - fullDescription: String! + """The user affected by the action""" + user: User - """The listing's introductory description rendered to HTML.""" - fullDescriptionHTML: HTML! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Does this listing have any plans with a free trial?""" - hasPublishedFreeTrialPlans: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI - """Does this listing have a terms of service link?""" - hasTermsOfService: Boolean! + """The HTTP URL for the user.""" + userUrl: URI +} - """Whether the creator of the app is a verified org""" - hasVerifiedOwner: Boolean! +"""The default permission a repository can have in an Organization.""" +enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { + """Can read and clone repositories.""" + READ - """A technical description of how this app works with GitHub.""" - howItWorks: String + """Can read, clone and push to repositories.""" + WRITE - """The listing's technical description rendered to HTML.""" - howItWorksHTML: HTML! - id: ID! + """Can read, clone, push, and add collaborators to repositories.""" + ADMIN - """URL to install the product to the viewer's account or organization.""" - installationUrl: URI + """No default permission value.""" + NONE +} - """Whether this listing's app has been installed for the current viewer""" - installedForViewer: Boolean! +"""Audit log entry for a org.update_member event.""" +type OrgUpdateMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """Whether this listing has been removed from the Marketplace.""" - isArchived: Boolean! + """The user who initiated the action""" + actor: AuditEntryActor - """ - 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! + """The IP address of the actor""" + actorIp: String - """ - Whether the product this listing represents is available as part of a paid plan. - """ - isPaid: Boolean! + """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 - """Whether this listing has been approved for display in the Marketplace.""" - isPublic: Boolean! + """The HTTP URL for the actor.""" + actorUrl: URI - """ - Whether this listing has been rejected by GitHub for display in the Marketplace. - """ - isRejected: Boolean! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """ - Whether this listing has been approved for unverified display in the Marketplace. - """ - isUnverified: Boolean! + """The corresponding operation type for the action""" + operationType: OperationType - """ - Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace. - """ - isUnverifiedPending: Boolean! + """The Organization associated with the Audit Entry.""" + organization: Organization - """ - Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace. - """ - isVerificationPendingFromDraft: Boolean! + """The name of the Organization.""" + organizationName: String - """ - Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace. - """ - isVerificationPendingFromUnverified: Boolean! + """The HTTP path for the organization""" + organizationResourcePath: URI - """ - Whether this listing has been approved for verified display in the Marketplace. - """ - isVerified: Boolean! + """The HTTP URL for the organization""" + organizationUrl: URI - """The hex color code, without the leading '#', for the logo background.""" - logoBackgroundColor: String! + """The new member permission level for the organization.""" + permission: OrgUpdateMemberAuditEntryPermission - """URL for the listing's logo image.""" - logoUrl( - """The size in pixels of the resulting square image.""" - size: Int = 400 - ): URI + """The former member permission level for the organization.""" + permissionWas: OrgUpdateMemberAuditEntryPermission - """The listing's full name.""" - name: String! + """The user affected by the action""" + user: User """ - The listing's very short description without a trailing period or ampersands. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - normalizedShortDescription: String! + userLogin: String - """URL to the listing's detailed pricing.""" - pricingUrl: URI + """The HTTP path for the user.""" + userResourcePath: URI - """The category that best describes the listing.""" - primaryCategory: MarketplaceCategory! + """The HTTP URL for the user.""" + userUrl: URI +} - """ - 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 permissions available to members on an Organization.""" +enum OrgUpdateMemberAuditEntryPermission { + """Can read and clone repositories.""" + READ - """The HTTP path for the Marketplace listing.""" - resourcePath: URI! + """Can read, clone, push, and add collaborators to repositories.""" + ADMIN +} - """The URLs for the listing's screenshots.""" - screenshotUrls: [String]! +""" +Audit log entry for a org.update_member_repository_creation_permission event. +""" +type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { + """The action name""" + action: String! - """An alternate category that describes the listing.""" - secondaryCategory: MarketplaceCategory + """The user who initiated the action""" + actor: AuditEntryActor - """The listing's very short description.""" - shortDescription: String! + """The IP address of the actor""" + actorIp: String - """The short name of the listing used in its URL.""" - slug: String! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """URL to the listing's status page.""" - statusUrl: URI + """The username of the user who initiated the action""" + actorLogin: String - """An email address for support for this listing's app.""" - supportEmail: String + """The HTTP path for the actor.""" + actorResourcePath: URI - """ - 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! + """The HTTP URL for the actor.""" + actorUrl: URI - """URL to the listing's terms of service.""" - termsOfServiceUrl: URI + """Can members create repositories in the organization.""" + canCreateRepositories: Boolean - """The HTTP URL for the Marketplace listing.""" - url: URI! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Can the current viewer add plans for this Marketplace listing.""" - viewerCanAddPlans: Boolean! + """The corresponding operation type for the action""" + operationType: OperationType - """Can the current viewer approve this Marketplace listing.""" - viewerCanApprove: Boolean! + """The Organization associated with the Audit Entry.""" + organization: Organization - """Can the current viewer delist this Marketplace listing.""" - viewerCanDelist: Boolean! + """The name of the Organization.""" + organizationName: String - """Can the current viewer edit this Marketplace listing.""" - viewerCanEdit: Boolean! + """The HTTP path for the organization""" + organizationResourcePath: URI + + """The HTTP URL for the organization""" + organizationUrl: URI + + """The user affected by the action""" + user: User """ - Can the current viewer edit the primary and secondary category of this - Marketplace listing. - + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanEditCategories: Boolean! + userLogin: String - """Can the current viewer edit the plans for this Marketplace listing.""" - viewerCanEditPlans: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI """ - Can the current viewer return this Marketplace listing to draft state - so it becomes editable again. - + The permission for visibility level of repositories for this organization. """ - viewerCanRedraft: Boolean! + visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility +} +"""The permissions available for repository creation on an Organization.""" +enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - Can the current viewer reject this Marketplace listing by returning it to - an editable draft state or rejecting it entirely. - + All organization members are restricted from creating any repositories. """ - viewerCanReject: Boolean! + ALL """ - Can the current viewer request this listing be reviewed for display in - the Marketplace as verified. - + All organization members are restricted from creating public repositories. """ - viewerCanRequestApproval: Boolean! + PUBLIC + + """All organization members are allowed to create any repositories.""" + NONE """ - Indicates whether the current user has an active subscription to this Marketplace listing. - + All organization members are restricted from creating private repositories. """ - viewerHasPurchased: Boolean! + PRIVATE """ - Indicates if the current user has purchased a subscription to this Marketplace listing - for all of the organizations the user owns. - + All organization members are restricted from creating internal repositories. """ - viewerHasPurchasedForAllOrganizations: Boolean! + INTERNAL """ - Does the current viewer role allow them to administer this Marketplace listing. - + All organization members are restricted from creating public or internal repositories. """ - 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 -} - -"""Autogenerated input type of MarkFileAsViewed""" -input MarkFileAsViewedInput { - """The Node ID of the pull request.""" - pullRequestId: ID! - - """The path of the file to mark as viewed""" - path: String! - - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} - -"""Autogenerated return type of MarkFileAsViewed""" -type MarkFileAsViewedPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String - - """The updated pull request.""" - pullRequest: PullRequest -} - -"""Autogenerated input type of MarkPullRequestReadyForReview""" -input MarkPullRequestReadyForReviewInput { - """ID of the pull request to be marked as ready for review.""" - pullRequestId: ID! - - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + PUBLIC_INTERNAL -"""Autogenerated return type of MarkPullRequestReadyForReview""" -type MarkPullRequestReadyForReviewPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """ + All organization members are restricted from creating private or internal repositories. + """ + PRIVATE_INTERNAL - """The pull request that is ready for review.""" - pullRequest: PullRequest + """ + All organization members are restricted from creating public or private repositories. + """ + PUBLIC_PRIVATE } -"""Audit log entry for a members_can_delete_repos.clear event.""" -type MembersCanDeleteReposClearAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { +""" +Audit log entry for a org.update_member_repository_invitation_permission event. +""" +type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { """The action name""" action: String! @@ -8594,17 +18356,13 @@ type MembersCanDeleteReposClearAuditEntry implements Node & AuditEntry & Enterpr """The HTTP URL for the actor.""" actorUrl: URI + """ + Can outside collaborators be invited to repositories in the organization. + """ + canInviteOutsideCollaboratorsToRepositories: Boolean + """The time the action was initiated""" 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""" @@ -8637,144 +18395,228 @@ type MembersCanDeleteReposClearAuditEntry implements Node & AuditEntry & Enterpr userUrl: URI } -"""Audit log entry for a members_can_delete_repos.disable event.""" -type MembersCanDeleteReposDisableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! +"""Information for an uploaded package.""" +type Package implements Node { + id: ID! - """The user who initiated the action""" - actor: AuditEntryActor + """Find the latest version for the package.""" + latestVersion: PackageVersion - """The IP address of the actor""" - actorIp: String + """Identifies the name of the package.""" + name: String! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Identifies the type of the package.""" + packageType: PackageType! - """The username of the user who initiated the action""" - actorLogin: String + """The repository this package belongs to.""" + repository: Repository - """The HTTP path for the actor.""" - actorResourcePath: URI + """Statistics about package activity.""" + statistics: PackageStatistics - """The HTTP URL for the actor.""" - actorUrl: URI + """Find package version by version string.""" + version( + """The package version.""" + version: String! + ): PackageVersion - """The time the action was initiated""" - createdAt: PreciseDateTime! + """list of versions for this package""" + versions( + """Ordering of the returned packages.""" + orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The slug of the enterprise.""" - enterpriseSlug: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI - 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 + ): PackageVersionConnection! +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""The connection type for Package.""" +type PackageConnection { + """A list of edges.""" + edges: [PackageEdge] - """The name of the Organization.""" - organizationName: String + """A list of nodes.""" + nodes: [Package] - """The HTTP path for the organization""" - organizationResourcePath: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The user affected by the action""" - user: User +"""An edge in a connection.""" +type PackageEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """The item at the end of the edge.""" + node: Package +} - """The HTTP path for the user.""" - userResourcePath: URI +"""A file in a package version.""" +type PackageFile implements Node { + id: ID! - """The HTTP URL for the user.""" - userUrl: URI + """MD5 hash of the file.""" + md5: String + + """Name of the file.""" + name: String! + + """The package version this file belongs to.""" + packageVersion: PackageVersion + + """SHA1 hash of the file.""" + sha1: String + + """SHA256 hash of the file.""" + sha256: String + + """Size of the file in bytes.""" + size: Int + + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """URL to download the asset.""" + url: URI } -"""Audit log entry for a members_can_delete_repos.enable event.""" -type MembersCanDeleteReposEnableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! +"""The connection type for PackageFile.""" +type PackageFileConnection { + """A list of edges.""" + edges: [PackageFileEdge] - """The user who initiated the action""" - actor: AuditEntryActor + """A list of nodes.""" + nodes: [PackageFile] - """The IP address of the actor""" - actorIp: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The username of the user who initiated the action""" - actorLogin: String +"""An edge in a connection.""" +type PackageFileEdge { + """A cursor for use in pagination.""" + cursor: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The item at the end of the edge.""" + node: PackageFile +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""Ways in which lists of package files can be ordered upon return.""" +input PackageFileOrder { + """The field in which to order package files by.""" + field: PackageFileOrderField - """The time the action was initiated""" - createdAt: PreciseDateTime! + """The direction in which to order package files by the specified field.""" + direction: OrderDirection +} - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI +"""Properties by which package file connections can be ordered.""" +enum PackageFileOrderField { + """Order package files by creation time""" + CREATED_AT +} - """The slug of the enterprise.""" - enterpriseSlug: String +"""Ways in which lists of packages can be ordered upon return.""" +input PackageOrder { + """The field in which to order packages by.""" + field: PackageOrderField - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI + """The direction in which to order packages by the specified field.""" + direction: OrderDirection +} + +"""Properties by which package connections can be ordered.""" +enum PackageOrderField { + """Order packages by creation time""" + CREATED_AT +} + +"""Represents an owner of a package.""" +interface PackageOwner { id: ID! - """The corresponding operation type for the action""" - operationType: OperationType + """A list of packages under the owner.""" + packages( + """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 + + """Find packages by their names.""" + names: [String] + + """Find packages in a repository by ID.""" + repositoryId: ID + + """Filter registry package by type.""" + packageType: PackageType + + """Ordering of the returned packages.""" + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + ): PackageConnection! +} - """The HTTP path for the organization""" - organizationResourcePath: URI +""" +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! +} - """The HTTP URL for the organization""" - organizationUrl: URI +"""A version tag contains the mapping between a tag name and a version.""" +type PackageTag implements Node { + id: ID! - """The user affected by the action""" - user: User + """Identifies the tag name of the version.""" + name: String! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Version that the tag is associated with.""" + version: PackageVersion +} - """The HTTP path for the user.""" - userResourcePath: URI +"""The possible types of a package.""" +enum PackageType { + """A debian package.""" + DEBIAN - """The HTTP URL for the user.""" - userUrl: URI + """A python package.""" + PYPI } -"""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( +"""Information about a specific package version.""" +type PackageVersion implements Node { + """List of files associated with this package version""" + files( + """Ordering of the returned package files.""" + orderBy: PackageFileOrder = {field: CREATED_AT, direction: ASC} + """Returns the elements in the list that come after the specified cursor.""" after: String @@ -8788,261 +18630,246 @@ interface MemberStatusable { """Returns the last _n_ elements from the list.""" last: Int + ): PackageFileConnection! + id: ID! - """Ordering options for user statuses returned from the connection.""" - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! -} + """The package associated with this version.""" + package: Package -"""Represents a 'mentioned' event on a given issue or pull request.""" -type MentionedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """The platform this version was built for.""" + platform: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """Whether or not this version is a pre-release.""" + preRelease: Boolean! - """Identifies the primary key from the database.""" - databaseId: Int - id: ID! + """The README of this package version.""" + readme: String + + """The release associated with this package version.""" + release: Release + + """Statistics about package activity.""" + statistics: PackageVersionStatistics + + """The package version summary.""" + summary: String + + """The version string.""" + version: String! } -"""Whether or not a PullRequest can be merged.""" -enum MergeableState { - """The pull request can be merged.""" - MERGEABLE +"""The connection type for PackageVersion.""" +type PackageVersionConnection { + """A list of edges.""" + edges: [PackageVersionEdge] - """The pull request cannot be merged due to merge conflicts.""" - CONFLICTING + """A list of nodes.""" + nodes: [PackageVersion] - """The mergeability of the pull request is still being calculated.""" - UNKNOWN + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""Autogenerated input type of MergeBranch""" -input MergeBranchInput { - """ - The Node ID of the Repository containing the base branch that will be modified. - """ - repositoryId: ID! +"""An edge in a connection.""" +type PackageVersionEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - The name of the base branch that the provided head will be merged into. - """ - base: String! + """The item at the end of the edge.""" + node: PackageVersion +} - """ - The head to merge into the base branch. This can be a branch name or a commit GitObjectID. - """ - head: String! +"""Ways in which lists of package versions can be ordered upon return.""" +input PackageVersionOrder { + """The field in which to order package versions by.""" + field: PackageVersionOrderField """ - Message to use for the merge commit. If omitted, a default will be used. + The direction in which to order package versions by the specified field. """ - commitMessage: String + direction: OrderDirection +} - """The email address to associate with this commit.""" - authorEmail: String +"""Properties by which package version connections can be ordered.""" +enum PackageVersionOrderField { + """Order package versions by creation time""" + CREATED_AT +} - """A unique identifier for the client performing the mutation.""" - clientMutationId: String +""" +Represents a object that contains package version activity statistics such as downloads. +""" +type PackageVersionStatistics { + """Number of times the package was downloaded since it was created.""" + downloadsTotalCount: Int! } -"""Autogenerated return type of MergeBranch""" -type MergeBranchPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String +"""Information about pagination in a connection.""" +type PageInfo { + """When paginating forwards, the cursor to continue.""" + endCursor: String - """The resulting merge Commit.""" - mergeCommit: Commit -} + """When paginating forwards, are there more items?""" + hasNextPage: Boolean! -"""Represents a 'merged' event on a given pull request.""" -type MergedEvent implements Node & UniformResourceLocatable { - """Identifies the actor who performed the event.""" - actor: Actor + """When paginating backwards, are there more items?""" + hasPreviousPage: Boolean! - """Identifies the commit associated with the `merge` event.""" - commit: Commit + """When paginating backwards, the cursor to continue.""" + startCursor: String +} - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! +"""The possible types of patch statuses.""" +enum PatchStatus { + """The file was added. Git status 'A'.""" + ADDED - """Identifies the Ref associated with the `merge` event.""" - mergeRef: Ref + """The file was deleted. Git status 'D'.""" + DELETED - """Identifies the name of the Ref associated with the `merge` event.""" - mergeRefName: String! + """The file was renamed. Git status 'R'.""" + RENAMED - """PullRequest referenced by event.""" - pullRequest: PullRequest! + """The file was copied. Git status 'C'.""" + COPIED - """The HTTP path for this merged event.""" - resourcePath: URI! + """The file's contents were changed. Git status 'M'.""" + MODIFIED - """The HTTP URL for this merged event.""" - url: URI! + """The file's type was changed. Git status 'T'.""" + CHANGED } -"""Autogenerated input type of MergePullRequest""" -input MergePullRequestInput { - """ID of the pull request to be merged.""" - pullRequestId: ID! - - """ - Commit headline to use for the merge commit; if omitted, a default message will be used. - """ - commitHeadline: String +"""Types that can grant permissions on a repository to a user""" +union PermissionGranter = Organization | Repository | Team - """ - Commit body to use for the merge commit; if omitted, a default message will be used - """ - commitBody: String +"""A level of permission and source for a user's access to a repository.""" +type PermissionSource { + """The organization the repository belongs to.""" + organization: Organization! - """ - OID that the pull request head ref must match to allow merge; if omitted, no check is performed. - """ - expectedHeadOid: GitObjectID + """The level of access this source has granted to the user.""" + permission: DefaultRepositoryPermissionField! - """The merge method to use. If omitted, defaults to 'MERGE'""" - mergeMethod: PullRequestMergeMethod = MERGE + """The source of this permission.""" + source: PermissionGranter! +} - """The email address to associate with this merge.""" - authorEmail: String +"""Autogenerated input type of PinIssue""" +input PinIssueInput { + """The ID of the issue to be pinned""" + issueId: ID! """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of MergePullRequest""" -type MergePullRequestPayload { - """Identifies the actor who performed the event.""" - actor: Actor - +"""Autogenerated return type of PinIssue""" +type PinIssuePayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String - """The pull request that was merged.""" - pullRequest: PullRequest -} - -"""Represents a Milestone object on a given repository.""" -type Milestone implements Node & Closable & UniformResourceLocatable { - """ - `true` 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( - """Ordering options for issues returned from the connection.""" - orderBy: IssueOrder + """The issue that was pinned""" + issue: Issue +} - """A list of label names to filter the pull requests by.""" - labels: [String!] +"""Types that can be pinned to a profile page.""" +union PinnableItem = Gist | Repository - """A list of states to filter the issues by.""" - states: [IssueState!] +"""The connection type for PinnableItem.""" +type PinnableItemConnection { + """A list of edges.""" + edges: [PinnableItemEdge] - """Filtering options for issues returned from the connection.""" - filterBy: IssueFilters + """A list of nodes.""" + nodes: [PinnableItem] - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """Returns the first _n_ elements from the list.""" - first: Int +"""An edge in a connection.""" +type PinnableItemEdge { + """A cursor for use in pagination.""" + cursor: String! - """Returns the last _n_ elements from the list.""" - last: Int - ): IssueConnection! + """The item at the end of the edge.""" + node: PinnableItem +} - """Identifies the number of the milestone.""" - number: Int! +"""Represents items that can be pinned to a profile page or dashboard.""" +enum PinnableItemType { + """A repository.""" + REPOSITORY - """Indentifies the percentage complete for the milestone""" - progressPercentage: Float! + """A gist.""" + GIST - """A list of pull requests associated with the milestone.""" - pullRequests( - """A list of states to filter the pull requests by.""" - states: [PullRequestState!] + """An issue.""" + ISSUE - """A list of label names to filter the pull requests by.""" - labels: [String!] + """A project.""" + PROJECT - """The head ref name to filter the pull requests by.""" - headRefName: String + """A pull request.""" + PULL_REQUEST - """The base ref name to filter the pull requests by.""" - baseRefName: String + """A user.""" + USER - """Ordering options for pull requests returned from the connection.""" - orderBy: IssueOrder + """An organization.""" + ORGANIZATION - """Returns the elements in the list that come after the specified cursor.""" - after: String + """A team.""" + TEAM +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +A Pinned Discussion is a discussion pinned to a repository's index page. +""" +type PinnedDiscussion implements Node & RepositoryNode { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """Returns the first _n_ elements from the list.""" - first: Int + """Identifies the primary key from the database.""" + databaseId: Int - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestConnection! + """The discussion that was pinned.""" + discussion: Discussion! - """The repository associated with this milestone.""" - repository: Repository! + """Color stops of the chosen gradient""" + gradientStopColors: [String!]! + id: ID! - """The HTTP path for this milestone""" - resourcePath: URI! + """Background texture pattern""" + pattern: PinnedDiscussionPattern! - """Identifies the state of the milestone.""" - state: MilestoneState! + """The actor that pinned this discussion.""" + pinnedBy: Actor! - """Identifies the title of the milestone.""" - title: String! + """Preconfigured background gradient option""" + preconfiguredGradient: PinnedDiscussionGradient + + """The repository associated with this node.""" + repository: Repository! """Identifies the date and time when the object was last updated.""" updatedAt: DateTime! - - """The HTTP URL for this milestone""" - url: URI! } -"""The connection type for Milestone.""" -type MilestoneConnection { +"""The connection type for PinnedDiscussion.""" +type PinnedDiscussionConnection { """A list of edges.""" - edges: [MilestoneEdge] + edges: [PinnedDiscussionEdge] """A list of nodes.""" - nodes: [Milestone] + nodes: [PinnedDiscussion] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -9051,8 +18878,60 @@ type MilestoneConnection { totalCount: Int! } -"""Represents a 'milestoned' event on a given issue or pull request.""" -type MilestonedEvent implements Node { +"""An edge in a connection.""" +type PinnedDiscussionEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: PinnedDiscussion +} + +""" +Preconfigured gradients that may be used to style discussions pinned within a repository. +""" +enum PinnedDiscussionGradient { + """A gradient of red to orange""" + RED_ORANGE + + """A gradient of blue to mint""" + BLUE_MINT + + """A gradient of blue to purple""" + BLUE_PURPLE + + """A gradient of pink to blue""" + PINK_BLUE + + """A gradient of purple to coral""" + PURPLE_CORAL +} + +""" +Preconfigured background patterns that may be used to style discussions pinned within a repository. +""" +enum PinnedDiscussionPattern { + """A solid dot pattern""" + DOT_FILL + + """A plus sign pattern""" + PLUS + + """A lightning bolt pattern""" + ZAP + + """An upward-facing chevron pattern""" + CHEVRON_UP + + """A hollow dot pattern""" + DOT + + """A heart pattern""" + HEART_FILL +} + +"""Represents a 'pinned' event on a given issue or pull request.""" +type PinnedEvent implements Node { """Identifies the actor who performed the event.""" actor: Actor @@ -9060,838 +18939,932 @@ type MilestonedEvent implements Node { createdAt: DateTime! id: ID! - """Identifies the milestone title associated with the 'milestoned' event.""" - milestoneTitle: String! - - """Object referenced by event.""" - subject: MilestoneItem! + """Identifies the issue associated with the event.""" + issue: Issue! } -"""An edge in a connection.""" -type MilestoneEdge { - """A cursor for use in pagination.""" - cursor: String! +"""A Pinned Issue is a issue pinned to a repository's index page.""" +type PinnedIssue implements Node { + """Identifies the primary key from the database.""" + databaseId: Int - """The item at the end of the edge.""" - node: Milestone -} + """Identifies the primary key from the database as a BigInt.""" + fullDatabaseId: BigInt + id: ID! -"""Types that can be inside a Milestone.""" -union MilestoneItem = Issue | PullRequest + """The issue that was pinned.""" + issue: Issue! -"""Ordering options for milestone connections.""" -input MilestoneOrder { - """The field to order milestones by.""" - field: MilestoneOrderField! + """The actor that pinned this issue.""" + pinnedBy: Actor! - """The ordering direction.""" - direction: OrderDirection! + """The repository that this issue was pinned to.""" + repository: Repository! } -"""Properties by which milestone connections can be ordered.""" -enum MilestoneOrderField { - """Order milestones by when they are due.""" - DUE_DATE +"""The connection type for PinnedIssue.""" +type PinnedIssueConnection { + """A list of edges.""" + edges: [PinnedIssueEdge] - """Order milestones by when they were created.""" - CREATED_AT + """A list of nodes.""" + nodes: [PinnedIssue] - """Order milestones by when they were last updated.""" - UPDATED_AT + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Order milestones by their number.""" - NUMBER + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""The possible states of a milestone.""" -enum MilestoneState { - """A milestone that is still open.""" - OPEN +"""An edge in a connection.""" +type PinnedIssueEdge { + """A cursor for use in pagination.""" + cursor: String! - """A milestone that has been closed.""" - CLOSED + """The item at the end of the edge.""" + node: PinnedIssue } -"""Entities that can be minimized.""" -interface Minimizable { - """Returns whether or not a comment has been minimized.""" - isMinimized: Boolean! +"""An ISO-8601 encoded UTC date string with millisecond precision.""" +scalar PreciseDateTime - """Returns why the comment was minimized.""" - minimizedReason: String +"""Audit log entry for a private_repository_forking.disable event.""" +type PrivateRepositoryForkingDisableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """Check if the current viewer can minimize this object.""" - viewerCanMinimize: Boolean! -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Autogenerated input type of MinimizeComment""" -input MinimizeCommentInput { - """The Node ID of the subject to modify.""" - subjectId: ID! + """The IP address of the actor""" + actorIp: String - """The classification of comment""" - classifier: ReportedContentClassifiers! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """The username of the user who initiated the action""" + actorLogin: String -"""Autogenerated return type of MinimizeComment""" -type MinimizeCommentPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The HTTP path for the actor.""" + actorResourcePath: URI - """The comment that was minimized.""" - minimizedComment: Minimizable -} + """The HTTP URL for the actor.""" + actorUrl: URI -""" -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 + """The time the action was initiated""" + createdAt: PreciseDateTime! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The HTTP path for this enterprise.""" + enterpriseResourcePath: URI - """Identifies the primary key from the database.""" - databaseId: Int + """The slug of the enterprise.""" + enterpriseSlug: String + + """The HTTP URL for this enterprise.""" + enterpriseUrl: URI id: ID! -} -"""Autogenerated input type of MoveProjectCard""" -input MoveProjectCardInput { - """The id of the card to move.""" - cardId: 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 id of the column to move it into.""" - columnId: ID! + """The HTTP path for the organization""" + organizationResourcePath: URI - """ - Place the new card after the card with this id. Pass null to place it at the top. - """ - afterCardId: ID + """The HTTP URL for the organization""" + organizationUrl: URI - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """The repository associated with the action""" + repository: Repository -"""Autogenerated return type of MoveProjectCard""" -type MoveProjectCardPayload { - """The new edge of the moved card.""" - cardEdge: ProjectCardEdge + """The name of the repository""" + repositoryName: String - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """The HTTP path for the repository""" + repositoryResourcePath: URI -"""Autogenerated input type of MoveProjectColumn""" -input MoveProjectColumnInput { - """The id of the column to move.""" - columnId: ID! + """The HTTP URL for the repository""" + repositoryUrl: URI + + """The user affected by the action""" + user: User """ - Place the new column after the column with this id. Pass null to place it at the front. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - afterColumnId: ID - - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + userLogin: String -"""Autogenerated return type of MoveProjectColumn""" -type MoveProjectColumnPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The HTTP path for the user.""" + userResourcePath: URI - """The new edge of the moved column.""" - columnEdge: ProjectColumnEdge + """The HTTP URL for the user.""" + userUrl: URI } -"""The root query for implementing GraphQL mutations.""" -type Mutation { - """ - Accepts a pending invitation for a user to become an administrator of an enterprise. - """ - acceptEnterpriseAdministratorInvitation(input: AcceptEnterpriseAdministratorInvitationInput!): AcceptEnterpriseAdministratorInvitationPayload +"""Audit log entry for a private_repository_forking.enable event.""" +type PrivateRepositoryForkingEnableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """Applies a suggested topic to the repository.""" - acceptTopicSuggestion(input: AcceptTopicSuggestionInput!): AcceptTopicSuggestionPayload + """The user who initiated the action""" + actor: AuditEntryActor - """Adds assignees to an assignable object.""" - addAssigneesToAssignable(input: AddAssigneesToAssignableInput!): AddAssigneesToAssignablePayload + """The IP address of the actor""" + actorIp: String - """Adds a comment to an Issue or Pull Request.""" - addComment(input: AddCommentInput!): AddCommentPayload + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Adds labels to a labelable object.""" - addLabelsToLabelable(input: AddLabelsToLabelableInput!): AddLabelsToLabelablePayload + """The username of the user who initiated the action""" + actorLogin: String - """ - Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. - """ - addProjectCard(input: AddProjectCardInput!): AddProjectCardPayload + """The HTTP path for the actor.""" + actorResourcePath: URI - """Adds a column to a Project.""" - addProjectColumn(input: AddProjectColumnInput!): AddProjectColumnPayload + """The HTTP URL for the actor.""" + actorUrl: URI - """Adds a review to a Pull Request.""" - addPullRequestReview(input: AddPullRequestReviewInput!): AddPullRequestReviewPayload + """The time the action was initiated""" + createdAt: PreciseDateTime! - """Adds a comment to a review.""" - addPullRequestReviewComment(input: AddPullRequestReviewCommentInput!): AddPullRequestReviewCommentPayload + """The HTTP path for this enterprise.""" + enterpriseResourcePath: URI - """Adds a new thread to a pending Pull Request Review.""" - addPullRequestReviewThread(input: AddPullRequestReviewThreadInput!): AddPullRequestReviewThreadPayload + """The slug of the enterprise.""" + enterpriseSlug: String - """Adds a reaction to a subject.""" - addReaction(input: AddReactionInput!): AddReactionPayload + """The HTTP URL for this enterprise.""" + enterpriseUrl: URI + id: ID! - """Adds a star to a Starrable.""" - addStar(input: AddStarInput!): AddStarPayload + """The corresponding operation type for the action""" + operationType: OperationType - """Marks a repository as archived.""" - archiveRepository(input: ArchiveRepositoryInput!): ArchiveRepositoryPayload + """The Organization associated with the Audit Entry.""" + organization: Organization - """ - Cancels a pending invitation for an administrator to join an enterprise. - """ - cancelEnterpriseAdminInvitation(input: CancelEnterpriseAdminInvitationInput!): CancelEnterpriseAdminInvitationPayload + """The name of the Organization.""" + organizationName: String - """Update your status on GitHub.""" - changeUserStatus(input: ChangeUserStatusInput!): ChangeUserStatusPayload + """The HTTP path for the organization""" + organizationResourcePath: URI - """Clears all labels from a labelable object.""" - clearLabelsFromLabelable(input: ClearLabelsFromLabelableInput!): ClearLabelsFromLabelablePayload + """The HTTP URL for the organization""" + organizationUrl: URI - """ - Creates a new project by cloning configuration from an existing project. - """ - cloneProject(input: CloneProjectInput!): CloneProjectPayload + """The repository associated with the action""" + repository: Repository - """ - Create a new repository with the same files and directory structure as a template repository. - """ - cloneTemplateRepository(input: CloneTemplateRepositoryInput!): CloneTemplateRepositoryPayload + """The name of the repository""" + repositoryName: String - """Close an issue.""" - closeIssue(input: CloseIssueInput!): CloseIssuePayload + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Close a pull request.""" - closePullRequest(input: ClosePullRequestInput!): ClosePullRequestPayload + """The HTTP URL for the repository""" + repositoryUrl: URI + + """The user affected by the action""" + user: User """ - Convert a project note card to one associated with a newly created issue. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - convertProjectCardNoteToIssue(input: ConvertProjectCardNoteToIssueInput!): ConvertProjectCardNoteToIssuePayload + userLogin: String - """Create a new branch protection rule""" - createBranchProtectionRule(input: CreateBranchProtectionRuleInput!): CreateBranchProtectionRulePayload + """The HTTP path for the user.""" + userResourcePath: URI - """Create a check run.""" - createCheckRun(input: CreateCheckRunInput!): CreateCheckRunPayload + """The HTTP URL for the user.""" + userUrl: URI +} - """Create a check suite""" - createCheckSuite(input: CreateCheckSuiteInput!): CreateCheckSuitePayload +""" +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.""" + hasPinnedItems: Boolean! - """Creates an organization as part of an enterprise account.""" - createEnterpriseOrganization(input: CreateEnterpriseOrganizationInput!): CreateEnterpriseOrganizationPayload + """ + 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. + """ + items( + """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 project.""" - createProject(input: CreateProjectInput!): CreateProjectPayload + """Returns the last _n_ elements from the list.""" + last: Int + ): PinnableItemConnection! +} - """Create a new pull request""" - createPullRequest(input: CreatePullRequestInput!): CreatePullRequestPayload +"""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! - """Create a new Git Ref.""" - createRef(input: CreateRefInput!): CreateRefPayload + """The public profile email.""" + email: String + id: ID! - """Create a new repository.""" - createRepository(input: CreateRepositoryInput!): CreateRepositoryPayload + """ + 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! - """Creates a new team discussion.""" - createTeamDiscussion(input: CreateTeamDiscussionInput!): CreateTeamDiscussionPayload + """The public profile location.""" + location: String - """Creates a new team discussion comment.""" - createTeamDiscussionComment(input: CreateTeamDiscussionCommentInput!): CreateTeamDiscussionCommentPayload + """The username used to login.""" + login: String! - """Rejects a suggested topic for the repository.""" - declineTopicSuggestion(input: DeclineTopicSuggestionInput!): DeclineTopicSuggestionPayload + """The public profile name.""" + name: String - """Delete a branch protection rule""" - deleteBranchProtectionRule(input: DeleteBranchProtectionRuleInput!): DeleteBranchProtectionRulePayload + """ + A list of repositories and gists this profile owner can pin to their profile. + """ + pinnableItems( + """Filter the types of pinnable items that are returned.""" + types: [PinnableItemType!] - """Deletes a deployment.""" - deleteDeployment(input: DeleteDeploymentInput!): DeleteDeploymentPayload + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Deletes an IP allow list entry.""" - deleteIpAllowListEntry(input: DeleteIpAllowListEntryInput!): DeleteIpAllowListEntryPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Deletes an Issue object.""" - deleteIssue(input: DeleteIssueInput!): DeleteIssuePayload + """Returns the first _n_ elements from the list.""" + first: Int - """Deletes an IssueComment object.""" - deleteIssueComment(input: DeleteIssueCommentInput!): DeleteIssueCommentPayload + """Returns the last _n_ elements from the list.""" + last: Int + ): PinnableItemConnection! - """Deletes a project.""" - deleteProject(input: DeleteProjectInput!): DeleteProjectPayload + """ + A list of repositories and gists this profile owner has pinned to their profile + """ + pinnedItems( + """Filter the types of pinned items that are returned.""" + types: [PinnableItemType!] - """Deletes a project card.""" - deleteProjectCard(input: DeleteProjectCardInput!): DeleteProjectCardPayload + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Deletes a project column.""" - deleteProjectColumn(input: DeleteProjectColumnInput!): DeleteProjectColumnPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Deletes a pull request review.""" - deletePullRequestReview(input: DeletePullRequestReviewInput!): DeletePullRequestReviewPayload + """Returns the first _n_ elements from the list.""" + first: Int - """Deletes a pull request review comment.""" - deletePullRequestReviewComment(input: DeletePullRequestReviewCommentInput!): DeletePullRequestReviewCommentPayload + """Returns the last _n_ elements from the list.""" + last: Int + ): PinnableItemConnection! - """Delete a Git Ref.""" - deleteRef(input: DeleteRefInput!): DeleteRefPayload + """ + Returns how many more items this profile owner can pin to their profile. + """ + pinnedItemsRemaining: Int! - """Deletes a team discussion.""" - deleteTeamDiscussion(input: DeleteTeamDiscussionInput!): DeleteTeamDiscussionPayload + """Can the viewer pin repositories and gists to the profile?""" + viewerCanChangePinnedItems: Boolean! - """Deletes a team discussion comment.""" - deleteTeamDiscussionComment(input: DeleteTeamDiscussionCommentInput!): DeleteTeamDiscussionCommentPayload + """The public profile website URL.""" + websiteUrl: URI +} - """Dismisses an approved or rejected pull request review.""" - dismissPullRequestReview(input: DismissPullRequestReviewInput!): DismissPullRequestReviewPayload +""" +Projects manage issues, pull requests and notes within a project owner. +""" +type Project implements Node & Closable & Updatable { + """The project's description body.""" + body: String - """Follow a user.""" - followUser(input: FollowUserInput!): FollowUserPayload + """The projects description body rendered to HTML.""" + bodyHTML: HTML! - """Invite someone to become an administrator of the enterprise.""" - inviteEnterpriseAdmin(input: InviteEnterpriseAdminInput!): InviteEnterpriseAdminPayload + """ + Indicates if the object is closed (definition of closed may depend on type) + """ + closed: Boolean! - """Creates a repository link for a project.""" - linkRepositoryToProject(input: LinkRepositoryToProjectInput!): LinkRepositoryToProjectPayload + """Identifies the date and time when the object was closed.""" + closedAt: DateTime - """Lock a lockable object""" - lockLockable(input: LockLockableInput!): LockLockablePayload + """List of columns in the project""" + columns( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Mark a pull request file as viewed""" - markFileAsViewed(input: MarkFileAsViewedInput!): MarkFileAsViewedPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Marks a pull request ready for review.""" - markPullRequestReadyForReview(input: MarkPullRequestReadyForReviewInput!): MarkPullRequestReadyForReviewPayload + """Returns the first _n_ elements from the list.""" + first: Int - """Merge a head into a branch.""" - mergeBranch(input: MergeBranchInput!): MergeBranchPayload + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectColumnConnection! - """Merge a pull request.""" - mergePullRequest(input: MergePullRequestInput!): MergePullRequestPayload + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """Minimizes a comment on an Issue, Commit, Pull Request, or Gist""" - minimizeComment(input: MinimizeCommentInput!): MinimizeCommentPayload + """The actor who originally created the project.""" + creator: Actor - """Moves a project card to another place.""" - moveProjectCard(input: MoveProjectCardInput!): MoveProjectCardPayload + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! - """Moves a project column to another place.""" - moveProjectColumn(input: MoveProjectColumnInput!): MoveProjectColumnPayload + """The project's name.""" + name: String! - """Regenerates the identity provider recovery codes for an enterprise""" - regenerateEnterpriseIdentityProviderRecoveryCodes(input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput!): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload + """The project's number.""" + number: Int! - """Removes assignees from an assignable object.""" - removeAssigneesFromAssignable(input: RemoveAssigneesFromAssignableInput!): RemoveAssigneesFromAssignablePayload + """ + The project's owner. Currently limited to repositories, organizations, and users. + """ + owner: ProjectOwner! - """Removes an administrator from the enterprise.""" - removeEnterpriseAdmin(input: RemoveEnterpriseAdminInput!): RemoveEnterpriseAdminPayload + """List of pending cards in this project""" + pendingCards( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Removes the identity provider from an enterprise""" - removeEnterpriseIdentityProvider(input: RemoveEnterpriseIdentityProviderInput!): RemoveEnterpriseIdentityProviderPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Removes an organization from the enterprise""" - removeEnterpriseOrganization(input: RemoveEnterpriseOrganizationInput!): RemoveEnterpriseOrganizationPayload + """Returns the first _n_ elements from the list.""" + first: Int - """Removes labels from a Labelable object.""" - removeLabelsFromLabelable(input: RemoveLabelsFromLabelableInput!): RemoveLabelsFromLabelablePayload + """Returns the last _n_ elements from the list.""" + last: Int - """Removes outside collaborator from all repositories in an organization.""" - removeOutsideCollaborator(input: RemoveOutsideCollaboratorInput!): RemoveOutsideCollaboratorPayload + """A list of archived states to filter the cards by""" + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + ): ProjectCardConnection! - """Removes a reaction from a subject.""" - removeReaction(input: RemoveReactionInput!): RemoveReactionPayload + """Project progress details.""" + progress: ProjectProgress! - """Removes a star from a Starrable.""" - removeStar(input: RemoveStarInput!): RemoveStarPayload + """The HTTP path for this project""" + resourcePath: URI! - """Reopen a issue.""" - reopenIssue(input: ReopenIssueInput!): ReopenIssuePayload + """Whether the project is open or closed.""" + state: ProjectState! - """Reopen a pull request.""" - reopenPullRequest(input: ReopenPullRequestInput!): ReopenPullRequestPayload + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """Set review requests on a pull request.""" - requestReviews(input: RequestReviewsInput!): RequestReviewsPayload + """The HTTP URL for this project""" + url: URI! - """Rerequests an existing check suite.""" - rerequestCheckSuite(input: RerequestCheckSuiteInput!): RerequestCheckSuitePayload + """Indicates if the object can be closed by the viewer.""" + viewerCanClose: Boolean! - """Marks a review thread as resolved.""" - resolveReviewThread(input: ResolveReviewThreadInput!): ResolveReviewThreadPayload + """Indicates if the object can be reopened by the viewer.""" + viewerCanReopen: Boolean! - """Creates or updates the identity provider for an enterprise.""" - setEnterpriseIdentityProvider(input: SetEnterpriseIdentityProviderInput!): SetEnterpriseIdentityProviderPayload + """Check if the current viewer can update this object.""" + viewerCanUpdate: Boolean! +} +"""A card in a project.""" +type ProjectCard implements Node { """ - Set an organization level interaction limit for an organization's public repositories. + 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. + """ - setOrganizationInteractionLimit(input: SetOrganizationInteractionLimitInput!): SetOrganizationInteractionLimitPayload + column: ProjectColumn - """Sets an interaction limit setting for a repository.""" - setRepositoryInteractionLimit(input: SetRepositoryInteractionLimitInput!): SetRepositoryInteractionLimitPayload + """The card content item""" + content: ProjectCardItem - """Set a user level interaction limit for an user's public repositories.""" - setUserInteractionLimit(input: SetUserInteractionLimitInput!): SetUserInteractionLimitPayload + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """Submits a pending pull request review.""" - submitPullRequestReview(input: SubmitPullRequestReviewInput!): SubmitPullRequestReviewPayload + """The actor who created this card""" + creator: Actor - """Transfer an issue to a different repository""" - transferIssue(input: TransferIssueInput!): TransferIssuePayload + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! - """Unarchives a repository.""" - unarchiveRepository(input: UnarchiveRepositoryInput!): UnarchiveRepositoryPayload + """Whether the card is archived""" + isArchived: Boolean! - """Unfollow a user.""" - unfollowUser(input: UnfollowUserInput!): UnfollowUserPayload + """The card note""" + note: String - """Deletes a repository link from a project.""" - unlinkRepositoryFromProject(input: UnlinkRepositoryFromProjectInput!): UnlinkRepositoryFromProjectPayload + """The project that contains this card.""" + project: Project! - """Unlock a lockable object""" - unlockLockable(input: UnlockLockableInput!): UnlockLockablePayload + """The HTTP path for this card""" + resourcePath: URI! - """Unmark a pull request file as viewed""" - unmarkFileAsViewed(input: UnmarkFileAsViewedInput!): UnmarkFileAsViewedPayload + """The state of ProjectCard""" + state: ProjectCardState - """Unmark an issue as a duplicate of another issue.""" - unmarkIssueAsDuplicate(input: UnmarkIssueAsDuplicateInput!): UnmarkIssueAsDuplicatePayload + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """Unminimizes a comment on an Issue, Commit, Pull Request, or Gist""" - unminimizeComment(input: UnminimizeCommentInput!): UnminimizeCommentPayload + """The HTTP URL for this card""" + url: URI! +} - """Marks a review thread as unresolved.""" - unresolveReviewThread(input: UnresolveReviewThreadInput!): UnresolveReviewThreadPayload +"""The possible archived states of a project card.""" +enum ProjectCardArchivedState { + """A project card that is archived""" + ARCHIVED - """Create a new branch protection rule""" - updateBranchProtectionRule(input: UpdateBranchProtectionRuleInput!): UpdateBranchProtectionRulePayload + """A project card that is not archived""" + NOT_ARCHIVED +} - """Update a check run""" - updateCheckRun(input: UpdateCheckRunInput!): UpdateCheckRunPayload +"""The connection type for ProjectCard.""" +type ProjectCardConnection { + """A list of edges.""" + edges: [ProjectCardEdge] - """Modifies the settings of an existing check suite""" - updateCheckSuitePreferences(input: UpdateCheckSuitePreferencesInput!): UpdateCheckSuitePreferencesPayload + """A list of nodes.""" + nodes: [ProjectCard] - """Updates the role of an enterprise administrator.""" - updateEnterpriseAdministratorRole(input: UpdateEnterpriseAdministratorRoleInput!): UpdateEnterpriseAdministratorRolePayload + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Sets whether private repository forks are enabled for an enterprise.""" - updateEnterpriseAllowPrivateRepositoryForkingSetting(input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput!): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - Sets the default repository permission for organizations in an enterprise. - """ - updateEnterpriseDefaultRepositoryPermissionSetting(input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput!): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload +"""An edge in a connection.""" +type ProjectCardEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - Sets whether organization members with admin permissions on a repository can change repository visibility. - """ - updateEnterpriseMembersCanChangeRepositoryVisibilitySetting(input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput!): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload + """The item at the end of the edge.""" + node: ProjectCard +} - """Sets the members can create repositories setting for an enterprise.""" - updateEnterpriseMembersCanCreateRepositoriesSetting(input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput!): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload +"""Types that can be inside Project Cards.""" +union ProjectCardItem = Issue | PullRequest - """Sets the members can delete issues setting for an enterprise.""" - updateEnterpriseMembersCanDeleteIssuesSetting(input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput!): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload +"""Various content states of a ProjectCard""" +enum ProjectCardState { + """The card has content only.""" + CONTENT_ONLY - """Sets the members can delete repositories setting for an enterprise.""" - updateEnterpriseMembersCanDeleteRepositoriesSetting(input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput!): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload + """The card has a note only.""" + NOTE_ONLY - """ - Sets whether members can invite collaborators are enabled for an enterprise. - """ - updateEnterpriseMembersCanInviteCollaboratorsSetting(input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput!): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload + """The card is redacted.""" + REDACTED +} - """Sets whether or not an organization admin can make purchases.""" - updateEnterpriseMembersCanMakePurchasesSetting(input: UpdateEnterpriseMembersCanMakePurchasesSettingInput!): UpdateEnterpriseMembersCanMakePurchasesSettingPayload +"""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 - """ - Sets the members can update protected branches setting for an enterprise. - """ - updateEnterpriseMembersCanUpdateProtectedBranchesSetting(input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput!): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Sets the members can view dependency insights for an enterprise.""" - updateEnterpriseMembersCanViewDependencyInsightsSetting(input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput!): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload + """Returns the first _n_ elements from the list.""" + first: Int - """Sets whether organization projects are enabled for an enterprise.""" - updateEnterpriseOrganizationProjectsSetting(input: UpdateEnterpriseOrganizationProjectsSettingInput!): UpdateEnterpriseOrganizationProjectsSettingPayload + """Returns the last _n_ elements from the list.""" + last: Int - """Updates an enterprise's profile.""" - updateEnterpriseProfile(input: UpdateEnterpriseProfileInput!): UpdateEnterpriseProfilePayload + """A list of archived states to filter the cards by""" + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + ): ProjectCardConnection! - """Sets whether repository projects are enabled for a enterprise.""" - updateEnterpriseRepositoryProjectsSetting(input: UpdateEnterpriseRepositoryProjectsSettingInput!): UpdateEnterpriseRepositoryProjectsSettingPayload + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """Sets whether team discussions are enabled for an enterprise.""" - updateEnterpriseTeamDiscussionsSetting(input: UpdateEnterpriseTeamDiscussionsSettingInput!): UpdateEnterpriseTeamDiscussionsSettingPayload + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! - """ - Sets whether two factor authentication is required for all users in an enterprise. - """ - updateEnterpriseTwoFactorAuthenticationRequiredSetting(input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput!): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload + """The project column's name.""" + name: String! - """Sets whether an IP allow list is enabled on an owner.""" - updateIpAllowListEnabledSetting(input: UpdateIpAllowListEnabledSettingInput!): UpdateIpAllowListEnabledSettingPayload + """The project that contains this column.""" + project: Project! - """Updates an IP allow list entry.""" - updateIpAllowListEntry(input: UpdateIpAllowListEntryInput!): UpdateIpAllowListEntryPayload + """The semantic purpose of the column""" + purpose: ProjectColumnPurpose - """Updates an Issue.""" - updateIssue(input: UpdateIssueInput!): UpdateIssuePayload + """The HTTP path for this project column""" + resourcePath: URI! - """Updates an IssueComment object.""" - updateIssueComment(input: UpdateIssueCommentInput!): UpdateIssueCommentPayload + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """The HTTP URL for this project column""" + url: URI! +} + +"""The connection type for ProjectColumn.""" +type ProjectColumnConnection { + """A list of edges.""" + edges: [ProjectColumnEdge] - """Updates an existing project.""" - updateProject(input: UpdateProjectInput!): UpdateProjectPayload + """A list of nodes.""" + nodes: [ProjectColumn] - """Updates an existing project card.""" - updateProjectCard(input: UpdateProjectCardInput!): UpdateProjectCardPayload + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Updates an existing project column.""" - updateProjectColumn(input: UpdateProjectColumnInput!): UpdateProjectColumnPayload + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """Update a pull request""" - updatePullRequest(input: UpdatePullRequestInput!): UpdatePullRequestPayload +"""An edge in a connection.""" +type ProjectColumnEdge { + """A cursor for use in pagination.""" + cursor: String! - """Updates the body of a pull request review.""" - updatePullRequestReview(input: UpdatePullRequestReviewInput!): UpdatePullRequestReviewPayload + """The item at the end of the edge.""" + node: ProjectColumn +} - """Updates a pull request review comment.""" - updatePullRequestReviewComment(input: UpdatePullRequestReviewCommentInput!): UpdatePullRequestReviewCommentPayload +"""The semantic purpose of the column - todo, in progress, or done.""" +enum ProjectColumnPurpose { + """The column contains cards still to be worked on""" + TODO - """Update a Git Ref.""" - updateRef(input: UpdateRefInput!): UpdateRefPayload + """The column contains cards which are currently being worked on""" + IN_PROGRESS - """Update information about a repository.""" - updateRepository(input: UpdateRepositoryInput!): UpdateRepositoryPayload + """The column contains cards which are complete""" + DONE +} - """Updates the state for subscribable subjects.""" - updateSubscription(input: UpdateSubscriptionInput!): UpdateSubscriptionPayload +"""A list of projects associated with the owner.""" +type ProjectConnection { + """A list of edges.""" + edges: [ProjectEdge] - """Updates a team discussion.""" - updateTeamDiscussion(input: UpdateTeamDiscussionInput!): UpdateTeamDiscussionPayload + """A list of nodes.""" + nodes: [Project] - """Updates a discussion comment.""" - updateTeamDiscussionComment(input: UpdateTeamDiscussionCommentInput!): UpdateTeamDiscussionCommentPayload + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Replaces the repository's topics with the given topics.""" - updateTopics(input: UpdateTopicsInput!): UpdateTopicsPayload + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""An object with an ID.""" -interface Node { - """ID of the object.""" - id: ID! -} +"""An edge in a connection.""" +type ProjectEdge { + """A cursor for use in pagination.""" + cursor: String! -"""Metadata for an audit entry with action oauth_application.*""" -interface OauthApplicationAuditEntryData { - """The name of the OAuth Application.""" - oauthApplicationName: String + """The item at the end of the edge.""" + node: Project +} - """The HTTP path for the OAuth Application""" - oauthApplicationResourcePath: URI +"""Ways in which lists of projects can be ordered upon return.""" +input ProjectOrder { + """The field in which to order projects by.""" + field: ProjectOrderField! - """The HTTP URL for the OAuth Application""" - oauthApplicationUrl: URI + """The direction in which to order projects by the specified field.""" + direction: OrderDirection! } -"""Audit log entry for a oauth_application.create event.""" -type OauthApplicationCreateAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! +"""Properties by which project connections can be ordered.""" +enum ProjectOrderField { + """Order projects by creation time""" + CREATED_AT - """The user who initiated the action""" - actor: AuditEntryActor + """Order projects by update time""" + UPDATED_AT - """The IP address of the actor""" - actorIp: String + """Order projects by name""" + NAME +} - """A readable representation of the actor's location""" - actorLocation: ActorLocation +"""Represents an owner of a Project.""" +interface ProjectOwner { + id: ID! - """The username of the user who initiated the action""" - actorLogin: String + """Find project by number.""" + project( + """The project number to find.""" + number: Int! + ): Project - """The HTTP path for the actor.""" - actorResourcePath: URI + """A list of projects under the owner.""" + projects( + """Ordering options for projects returned from the connection""" + orderBy: ProjectOrder - """The HTTP URL for the actor.""" - actorUrl: URI + """Query to search projects by, currently only searching by name.""" + search: String - """The application URL of the OAuth Application.""" - applicationUrl: URI + """A list of states to filter the projects by.""" + states: [ProjectState!] - """The callback URL of the OAuth Application.""" - callbackUrl: URI + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The 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 + ): ProjectConnection! - """The HTTP URL for the OAuth Application""" - oauthApplicationUrl: URI + """The HTTP path listing owners projects""" + projectsResourcePath: URI! - """The corresponding operation type for the action""" - operationType: OperationType + """The HTTP URL listing owners projects""" + projectsUrl: URI! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Can the current viewer create new projects on this owner.""" + viewerCanCreateProjects: Boolean! +} - """The name of the Organization.""" - organizationName: String +"""Project progress stats.""" +type ProjectProgress { + """The number of done cards.""" + doneCount: Int! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The percentage of done cards.""" + donePercentage: Float! - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Whether progress tracking is enabled and cards with purpose exist for this project + """ + enabled: Boolean! - """The rate limit of the OAuth Application.""" - rateLimit: Int + """The number of in-progress cards.""" + inProgressCount: Int! - """The state of the OAuth Application.""" - state: OauthApplicationCreateAuditEntryState + """The percentage of in-progress cards.""" + inProgressPercentage: Float! - """The user affected by the action""" - user: User + """The number of to do cards.""" + todoCount: Int! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """The percentage of to do cards.""" + todoPercentage: Float! +} - """The HTTP path for the user.""" - userResourcePath: URI +"""State of the project; either 'open' or 'closed'""" +enum ProjectState { + """The project is open.""" + OPEN - """The HTTP URL for the user.""" - userUrl: URI + """The project is closed.""" + CLOSED } -"""The state of an OAuth Application when it was created.""" -enum OauthApplicationCreateAuditEntryState { - """The OAuth Application was active and allowed to have OAuth Accesses.""" - ACTIVE +"""GitHub-provided templates for Projects""" +enum ProjectTemplate { + """Create a board with columns for To do, In progress and Done.""" + BASIC_KANBAN """ - The OAuth Application was suspended from generating OAuth Accesses due to abuse or security concerns. + Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. """ - SUSPENDED - - """The OAuth Application was in the process of being deleted.""" - PENDING_DELETION -} + AUTOMATED_KANBAN_V2 -"""The corresponding operation type for the action""" -enum OperationType { - """An existing resource was accessed""" - ACCESS + """ + Create a board with triggers to automatically move cards across columns with review automation. + """ + AUTOMATED_REVIEWS_KANBAN - """A resource performed an authentication event""" - AUTHENTICATION + """ + Create a board to triage and prioritize bugs with To do, priority, and Done columns. + """ + BUG_TRIAGE +} - """A new resource was created""" - CREATE +""" +New projects that manage issues, pull requests and drafts using tables and boards. +""" +type ProjectV2 implements Closable & Updatable & Node { + """Returns true if the project is closed.""" + closed: Boolean! - """An existing resource was modified""" - MODIFY + """Identifies the date and time when the object was closed.""" + closedAt: DateTime - """An existing resource was removed""" - REMOVE + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """An existing resource was restored""" - RESTORE + """The actor who originally created the project.""" + creator: Actor - """An existing resource was transferred between multiple resources""" - TRANSFER -} + """Identifies the primary key from the database.""" + databaseId: Int -""" -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 + """A field of the project""" + field( + """The name of the field""" + name: String! + ): ProjectV2FieldConfiguration - """Specifies a descending order for a given `orderBy` argument.""" - DESC -} + """List of fields and their constraints in the project""" + fields( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Audit log entry for a org.add_billing_manager""" -type OrgAddBillingManagerAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - 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 project v2 fields returned from the connection""" + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection! + id: ID! - """The username of the user who initiated the action""" - actorLogin: String + """List of items in the project""" + items( + """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 - """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 - """ - The email address used to invite a billing manager for the organization. - """ - invitationEmail: String + """Ordering options for project v2 items returned from the connection""" + orderBy: ProjectV2ItemOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemConnection! - """The corresponding operation type for the action""" - operationType: OperationType + """The project's number.""" + number: Int! - """The Organization associated with the Audit Entry.""" - organization: Organization + """The project's owner. Currently limited to organizations and users.""" + owner: ProjectV2Owner! - """The name of the Organization.""" - organizationName: String + """Returns true if the project is public.""" + public: Boolean! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The project's readme.""" + readme: String - """The HTTP URL for the organization""" - organizationUrl: URI + """The repositories the project is linked to.""" + repositories( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user affected by the action""" - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the user.""" - userUrl: URI -} + """Ordering options for repositories returned from the connection""" + orderBy: RepositoryOrder = {field: CREATED_AT, direction: DESC} + ): RepositoryConnection! -"""Audit log entry for a org.add_member""" -type OrgAddMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """The HTTP path for this project""" + resourcePath: URI! - """The user who initiated the action""" - actor: AuditEntryActor + """The project's short description.""" + shortDescription: String - """The IP address of the actor""" - actorIp: String + """The teams the project is linked to.""" + teams( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The username of the user who initiated the action""" - actorLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the actor.""" - actorResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the actor.""" - actorUrl: URI + """Ordering options for teams returned from this connection.""" + orderBy: TeamOrder = {field: NAME, direction: ASC} + ): TeamConnection! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Returns true if this project is a template.""" + template: Boolean! - """The corresponding operation type for the action""" - operationType: OperationType + """The project's name.""" + title: String! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """The name of the Organization.""" - organizationName: String + """The HTTP URL for this project""" + url: URI! - """The HTTP path for the organization""" - organizationResourcePath: URI + """A view of the project""" + view( + """The number of a view belonging to the project""" + number: Int! + ): ProjectV2View - """The HTTP URL for the organization""" - organizationUrl: URI + """Indicates if the object can be closed by the viewer.""" + viewerCanClose: Boolean! - """The permission level of the member added to the organization.""" - permission: OrgAddMemberAuditEntryPermission + """Indicates if the object can be reopened by the viewer.""" + viewerCanReopen: Boolean! - """The user affected by the action""" - user: User + """Check if the current viewer can update this object.""" + viewerCanUpdate: Boolean! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """List of views in the project""" + views( + """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 -"""The permissions available to members on an Organization.""" -enum OrgAddMemberAuditEntryPermission { - """Can read and clone repositories.""" - READ + """Returns the last _n_ elements from the list.""" + last: Int - """Can read, clone, push, and add collaborators to repositories.""" - ADMIN -} + """Ordering options for project v2 views returned from the connection""" + orderBy: ProjectV2ViewOrder = {field: POSITION, direction: ASC} + ): ProjectV2ViewConnection! -""" -An account on GitHub, with one or more owners, that has repositories, members and teams. -""" -type Organization implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwner & UniformResourceLocatable & MemberStatusable & ProfileOwner & Sponsorable { - """ - 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! + """A workflow of the project""" + workflow( + """The number of a workflow belonging to the project""" + number: Int! + ): ProjectV2Workflow - """Audit log entries of the organization""" - auditLog( + """List of the workflows in the project""" + workflows( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -9906,214 +19879,259 @@ type Organization implements Node & Actor & PackageOwner & ProjectOwner & Reposi """Returns the last _n_ elements from the list.""" last: Int - """The query string to filter audit entries""" - query: String + """Ordering options for project v2 workflows returned from the connection""" + orderBy: ProjectV2WorkflowOrder = {field: NAME, direction: ASC} + ): ProjectV2WorkflowConnection! +} - """Ordering options for the returned audit log entries.""" - orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} - ): OrganizationAuditEntryConnection! +"""The connection type for ProjectV2.""" +type ProjectV2Connection { + """A list of edges.""" + edges: [ProjectV2Edge] - """A URL pointing to the organization's public avatar.""" - avatarUrl( - """The size of the resulting square image.""" - size: Int - ): URI! + """A list of nodes.""" + nodes: [ProjectV2] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""The type of a project field.""" +enum ProjectV2CustomFieldType { + """Text""" + TEXT + + """Single Select""" + SINGLE_SELECT + + """Number""" + NUMBER + + """Date""" + DATE +} + +"""An edge in a connection.""" +type ProjectV2Edge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: ProjectV2 +} +"""A field inside a project.""" +type ProjectV2Field implements ProjectV2FieldCommon & Node { """Identifies the date and time when the object was created.""" createdAt: DateTime! + """The field's type.""" + dataType: ProjectV2FieldType! + """Identifies the primary key from the database.""" databaseId: Int + id: ID! - """The organization's public profile description.""" - description: String + """The project field's name.""" + name: String! - """The organization's public profile description rendered to HTML.""" - descriptionHTML: String + """The project that contains this field.""" + project: ProjectV2! - """The organization's public email.""" - email: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """True if this user/organization has a GitHub Sponsors listing.""" - hasSponsorsListing: Boolean! +"""Common fields across different project field types""" +interface ProjectV2FieldCommon { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """The field's type.""" + dataType: ProjectV2FieldType! + + """Identifies the primary key from the database.""" + databaseId: Int id: ID! - """The interaction ability settings for this organization.""" - interactionAbility: RepositoryInteractionAbility + """The project field's name.""" + name: String! - """ - The setting value for whether the organization has an IP allow list enabled. - """ - ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + """The project that contains this field.""" + project: ProjectV2! - """ - The IP addresses that are allowed to access resources owned by the organization. - """ - ipAllowListEntries( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""Configurations for project fields.""" +union ProjectV2FieldConfiguration = ProjectV2Field | ProjectV2IterationField | ProjectV2SingleSelectField + +"""The connection type for ProjectV2FieldConfiguration.""" +type ProjectV2FieldConfigurationConnection { + """A list of edges.""" + edges: [ProjectV2FieldConfigurationEdge] + + """A list of nodes.""" + nodes: [ProjectV2FieldConfiguration] + + """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 ProjectV2FieldConfigurationEdge { + """A cursor for use in pagination.""" + cursor: String! - """Ordering options for IP allow list entries returned.""" - orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} - ): IpAllowListEntryConnection! + """The item at the end of the edge.""" + node: ProjectV2FieldConfiguration +} - """True if the viewer is sponsored by this user/organization.""" - isSponsoringViewer: Boolean! +"""The connection type for ProjectV2Field.""" +type ProjectV2FieldConnection { + """A list of edges.""" + edges: [ProjectV2FieldEdge] - """ - Whether the organization has verified its profile email and website, always false on Enterprise. - """ - isVerified: Boolean! + """A list of nodes.""" + nodes: [ProjectV2Field] - """ - 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! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The organization's public profile location.""" - location: String + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The organization's login name.""" - login: String! +"""An edge in a connection.""" +type ProjectV2FieldEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - 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 + """The item at the end of the edge.""" + node: ProjectV2Field +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""Ordering options for project v2 field connections""" +input ProjectV2FieldOrder { + """The field to order the project v2 fields by.""" + field: ProjectV2FieldOrderField! - """Returns the first _n_ elements from the list.""" - first: Int + """The ordering direction.""" + direction: OrderDirection! +} - """Returns the last _n_ elements from the list.""" - last: Int +"""Properties by which project v2 field connections can be ordered.""" +enum ProjectV2FieldOrderField { + """Order project v2 fields by position""" + POSITION - """Ordering options for user statuses returned from the connection.""" - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! + """Order project v2 fields by creation time""" + CREATED_AT - """A list of users who are members of this organization.""" - membersWithRole( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Order project v2 fields by name""" + NAME +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""The type of a project field.""" +enum ProjectV2FieldType { + """Assignees""" + ASSIGNEES - """Returns the first _n_ elements from the list.""" - first: Int + """Linked Pull Requests""" + LINKED_PULL_REQUESTS - """Returns the last _n_ elements from the list.""" - last: Int - ): OrganizationMemberConnection! + """Reviewers""" + REVIEWERS - """The organization's public profile name.""" - name: String + """Labels""" + LABELS - """The HTTP path creating a new team""" - newTeamResourcePath: URI! + """Milestone""" + MILESTONE - """The HTTP URL creating a new team""" - newTeamUrl: URI! + """Repository""" + REPOSITORY - """The billing email for the organization.""" - organizationBillingEmail: String + """Title""" + TITLE - """A list of packages under the owner.""" - packages( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Text""" + TEXT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Single Select""" + SINGLE_SELECT - """Returns the first _n_ elements from the list.""" - first: Int + """Number""" + NUMBER - """Returns the last _n_ elements from the list.""" - last: Int + """Date""" + DATE - """Find packages by their names.""" - names: [String] + """Iteration""" + ITERATION - """Find packages in a repository by ID.""" - repositoryId: ID + """Tracks""" + TRACKS - """Filter registry package by type.""" - packageType: PackageType + """Tracked by""" + TRACKED_BY +} - """Ordering of the returned packages.""" - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} - ): PackageConnection! +""" +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 text to set on the field.""" + text: String - """A list of users who have been invited to join this organization.""" - pendingMembers( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The number to set on the field.""" + number: Float - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The ISO 8601 date to set on the field.""" + date: Date - """Returns the first _n_ elements from the list.""" - first: Int + """The id of the single select option to set on the field.""" + singleSelectOptionId: String - """Returns the last _n_ elements from the list.""" - last: Int - ): UserConnection! + """The id of the iteration to set on the field.""" + iterationId: String +} - """ - A list of repositories and gists this profile owner can pin to their profile. - """ - pinnableItems( - """Filter the types of pinnable items that are returned.""" - types: [PinnableItemType!] +"""Ways in which to filter lists of projects.""" +input ProjectV2Filters { + """List project v2 filtered by the state given.""" + state: ProjectV2State +} - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""An item within a Project.""" +type ProjectV2Item implements Node { + """The content of the referenced draft issue, issue, or pull request""" + content: ProjectV2ItemContent - """ - 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 actor who created the item.""" + creator: Actor - """Returns the last _n_ elements from the list.""" - last: Int - ): PinnableItemConnection! + """Identifies the primary key from the database.""" + databaseId: Int - """ - A list of repositories and gists this profile owner has pinned to their profile - """ - pinnedItems( - """Filter the types of pinned items that are returned.""" - types: [PinnableItemType!] + """A specific field value given a field name""" + fieldValueByName( + """The name of the field to return the field value of""" + name: String! + ): ProjectV2ItemFieldValue + """List of field values""" + fieldValues( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -10127,147 +20145,123 @@ type Organization implements Node & Actor & PackageOwner & ProjectOwner & Reposi """Returns the last _n_ elements from the list.""" last: Int - ): PinnableItemConnection! - - """ - Returns how many more items this profile owner can pin to their profile. - """ - pinnedItemsRemaining: Int! - - """Find project by number.""" - project( - """The project number to find.""" - number: Int! - ): Project - """A list of projects under the owner.""" - projects( - """Ordering options for projects returned from the connection""" - orderBy: ProjectOrder + """ + Ordering options for project v2 item field values returned from the connection + """ + orderBy: ProjectV2ItemFieldValueOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemFieldValueConnection! + id: ID! - """Query to search projects by, currently only searching by name.""" - search: String + """Whether the item is archived.""" + isArchived: Boolean! - """A list of states to filter the projects by.""" - states: [ProjectState!] + """The project that contains this item.""" + project: ProjectV2! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The type of the item.""" + type: ProjectV2ItemType! - """ - 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 connection type for ProjectV2Item.""" +type ProjectV2ItemConnection { + """A list of edges.""" + edges: [ProjectV2ItemEdge] - """Returns the last _n_ elements from the list.""" - last: Int - ): ProjectConnection! + """A list of nodes.""" + nodes: [ProjectV2Item] - """The HTTP path listing organization's projects""" - projectsResourcePath: URI! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL listing organization's projects""" - projectsUrl: URI! + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """A list of repositories that the user owns.""" - repositories( - """If non-null, filters repositories according to privacy""" - privacy: RepositoryPrivacy +"""Types that can be inside Project Items.""" +union ProjectV2ItemContent = DraftIssue | Issue | PullRequest - """Ordering options for repositories returned from the connection""" - orderBy: RepositoryOrder +"""An edge in a connection.""" +type ProjectV2ItemEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - 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: ProjectV2Item +} - """ - 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 value of a date field in a Project item.""" +type ProjectV2ItemFieldDateValue implements ProjectV2ItemFieldValueCommon & Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean + """The actor who created the item.""" + creator: Actor - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the primary key from the database.""" + databaseId: Int - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Date value for the field""" + date: Date - """Returns the first _n_ elements from the list.""" - first: Int + """The project field that contains this value.""" + field: ProjectV2FieldConfiguration! + id: ID! - """Returns the last _n_ elements from the list.""" - last: Int + """The project item that contains this value.""" + item: ProjectV2Item! - """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean - ): RepositoryConnection! + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """Find Repository.""" - repository( - """Name of Repository to find.""" - name: String! - ): Repository +"""The value of an iteration field in a Project item.""" +type ProjectV2ItemFieldIterationValue implements ProjectV2ItemFieldValueCommon & Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """ - When true the organization requires all members, billing managers, and outside - collaborators to enable two-factor authentication. - """ - requiresTwoFactorAuthentication: Boolean + """The actor who created the item.""" + creator: Actor - """The HTTP path for this organization.""" - resourcePath: URI! + """Identifies the primary key from the database.""" + databaseId: Int - """The Organization's SAML identity providers""" - samlIdentityProvider: OrganizationIdentityProvider + """The duration of the iteration in days.""" + duration: Int! - """The GitHub Sponsors listing for this user or organization.""" - sponsorsListing: SponsorsListing + """The project field that contains this value.""" + field: ProjectV2FieldConfiguration! + id: ID! - """This object's sponsorships as the maintainer.""" - sponsorshipsAsMaintainer( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The project item that contains this value.""" + item: ProjectV2Item! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The ID of the iteration.""" + iterationId: String! - """Returns the first _n_ elements from the list.""" - first: Int + """The start date of the iteration.""" + startDate: Date! - """Returns the last _n_ elements from the list.""" - last: Int + """The title of the iteration.""" + title: String! - """Whether or not to include private sponsorships in the result set""" - includePrivate: Boolean = false + """The title of the iteration, with HTML.""" + titleHTML: 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! + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """This object's sponsorships as the sponsor.""" - sponsorshipsAsSponsor( +"""The value of the labels field in a Project item.""" +type ProjectV2ItemFieldLabelValue { + """The field that contains this value.""" + field: ProjectV2FieldConfiguration! + + """Labels value of a field""" + labels( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -10281,47 +20275,50 @@ type Organization implements Node & Actor & PackageOwner & ProjectOwner & Reposi """Returns the last _n_ elements from the list.""" last: Int + ): LabelConnection +} - """ - 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 value of a milestone field in a Project item.""" +type ProjectV2ItemFieldMilestoneValue { + """The field that contains this value.""" + field: ProjectV2FieldConfiguration! - """Find an organization's team by its slug.""" - team( - """The name or slug of the team to find.""" - slug: String! - ): Team + """Milestone value of a field""" + milestone: Milestone +} - """A list of teams in this organization.""" - teams( - """If non-null, filters teams according to privacy""" - privacy: TeamPrivacy +"""The value of a number field in a Project item.""" +type ProjectV2ItemFieldNumberValue implements ProjectV2ItemFieldValueCommon & Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """ - If non-null, filters teams according to whether the viewer is an admin or member on team - """ - role: TeamRole + """The actor who created the item.""" + creator: Actor - """If non-null, filters teams with query on team name and team slug""" - query: String + """Identifies the primary key from the database.""" + databaseId: Int - """User logins to filter by""" - userLogins: [String!] + """The project field that contains this value.""" + field: ProjectV2FieldConfiguration! + id: ID! - """Ordering options for teams returned from the connection""" - orderBy: TeamOrder + """The project item that contains this value.""" + item: ProjectV2Item! - """ - If true, filters teams that are mapped to an LDAP Group (Enterprise only) - """ - ldapMapped: Boolean + """Number as a float(8)""" + number: Float - """If true, restrict to only root teams""" - rootTeamsOnly: Boolean = false + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} + +"""The value of a pull request field in a Project item.""" +type ProjectV2ItemFieldPullRequestValue { + """The field that contains this value.""" + field: ProjectV2FieldConfiguration! + """The pull requests for this field""" + pullRequests( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -10335,128 +20332,107 @@ type Organization implements Node & Actor & PackageOwner & ProjectOwner & Reposi """Returns the last _n_ elements from the list.""" last: Int - ): TeamConnection! - """The HTTP path listing organization's teams""" - teamsResourcePath: URI! - - """The HTTP URL listing organization's teams""" - teamsUrl: URI! - - """The organization's Twitter username.""" - twitterUsername: String - - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! - - """The HTTP URL for this organization.""" - url: URI! - - """Organization is adminable by the viewer.""" - viewerCanAdminister: Boolean! - - """Can the viewer pin repositories and gists to the profile?""" - viewerCanChangePinnedItems: Boolean! + """Ordering options for pull requests.""" + orderBy: PullRequestOrder = {field: CREATED_AT, direction: ASC} + ): PullRequestConnection +} - """Can the current viewer create new projects on this owner.""" - viewerCanCreateProjects: Boolean! +"""The value of a repository field in a Project item.""" +type ProjectV2ItemFieldRepositoryValue { + """The field that contains this value.""" + field: ProjectV2FieldConfiguration! - """Viewer can create repositories on this organization""" - viewerCanCreateRepositories: Boolean! + """The repository for this field.""" + repository: Repository +} - """Viewer can create teams on this organization.""" - viewerCanCreateTeams: Boolean! +"""The value of a reviewers field in a Project item.""" +type ProjectV2ItemFieldReviewerValue { + """The field that contains this value.""" + field: ProjectV2FieldConfiguration! - """Whether or not the viewer is able to sponsor this user/organization.""" - viewerCanSponsor: Boolean! + """The reviewers for this field.""" + reviewers( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Viewer is an active member of this organization.""" - viewerIsAMember: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """True if the viewer is sponsoring this user/organization.""" - viewerIsSponsoring: Boolean! + """Returns the first _n_ elements from the list.""" + first: Int - """The organization's public profile URL.""" - websiteUrl: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): RequestedReviewerConnection } -"""An audit entry in an organization audit log.""" -union OrganizationAuditEntry = MembersCanDeleteReposClearAuditEntry | MembersCanDeleteReposDisableAuditEntry | MembersCanDeleteReposEnableAuditEntry | OauthApplicationCreateAuditEntry | OrgAddBillingManagerAuditEntry | OrgAddMemberAuditEntry | OrgBlockUserAuditEntry | OrgConfigDisableCollaboratorsOnlyAuditEntry | OrgConfigEnableCollaboratorsOnlyAuditEntry | OrgCreateAuditEntry | OrgDisableOauthAppRestrictionsAuditEntry | OrgDisableSamlAuditEntry | OrgDisableTwoFactorRequirementAuditEntry | OrgEnableOauthAppRestrictionsAuditEntry | OrgEnableSamlAuditEntry | OrgEnableTwoFactorRequirementAuditEntry | OrgInviteMemberAuditEntry | OrgInviteToBusinessAuditEntry | OrgOauthAppAccessApprovedAuditEntry | OrgOauthAppAccessDeniedAuditEntry | OrgOauthAppAccessRequestedAuditEntry | OrgRemoveBillingManagerAuditEntry | OrgRemoveMemberAuditEntry | OrgRemoveOutsideCollaboratorAuditEntry | OrgRestoreMemberAuditEntry | OrgUnblockUserAuditEntry | OrgUpdateDefaultRepositoryPermissionAuditEntry | OrgUpdateMemberAuditEntry | OrgUpdateMemberRepositoryCreationPermissionAuditEntry | OrgUpdateMemberRepositoryInvitationPermissionAuditEntry | PrivateRepositoryForkingDisableAuditEntry | PrivateRepositoryForkingEnableAuditEntry | RepoAccessAuditEntry | RepoAddMemberAuditEntry | RepoAddTopicAuditEntry | RepoArchivedAuditEntry | RepoChangeMergeSettingAuditEntry | RepoConfigDisableAnonymousGitAccessAuditEntry | RepoConfigDisableCollaboratorsOnlyAuditEntry | RepoConfigDisableContributorsOnlyAuditEntry | RepoConfigDisableSockpuppetDisallowedAuditEntry | RepoConfigEnableAnonymousGitAccessAuditEntry | RepoConfigEnableCollaboratorsOnlyAuditEntry | RepoConfigEnableContributorsOnlyAuditEntry | RepoConfigEnableSockpuppetDisallowedAuditEntry | RepoConfigLockAnonymousGitAccessAuditEntry | RepoConfigUnlockAnonymousGitAccessAuditEntry | RepoCreateAuditEntry | RepoDestroyAuditEntry | RepoRemoveMemberAuditEntry | RepoRemoveTopicAuditEntry | RepositoryVisibilityChangeDisableAuditEntry | RepositoryVisibilityChangeEnableAuditEntry | TeamAddMemberAuditEntry | TeamAddRepositoryAuditEntry | TeamChangeParentTeamAuditEntry | TeamRemoveMemberAuditEntry | TeamRemoveRepositoryAuditEntry +"""The value of a single select field in a Project item.""" +type ProjectV2ItemFieldSingleSelectValue implements ProjectV2ItemFieldValueCommon & Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! -"""The connection type for OrganizationAuditEntry.""" -type OrganizationAuditEntryConnection { - """A list of edges.""" - edges: [OrganizationAuditEntryEdge] + """The actor who created the item.""" + creator: Actor - """A list of nodes.""" - nodes: [OrganizationAuditEntry] + """Identifies the primary key from the database.""" + databaseId: Int - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The project field that contains this value.""" + field: ProjectV2FieldConfiguration! + id: ID! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The project item that contains this value.""" + item: ProjectV2Item! -"""Metadata for an audit entry with action org.*""" -interface OrganizationAuditEntryData { - """The Organization associated with the Audit Entry.""" - organization: Organization + """The name of the selected single select option.""" + name: String - """The name of the Organization.""" - organizationName: String + """The html name of the selected single select option.""" + nameHTML: String - """The HTTP path for the organization""" - organizationResourcePath: URI + """The id of the selected single select option.""" + optionId: String - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! } -"""An edge in a connection.""" -type OrganizationAuditEntryEdge { - """A cursor for use in pagination.""" - cursor: String! - - """The item at the end of the edge.""" - node: OrganizationAuditEntry -} +"""The value of a text field in a Project item.""" +type ProjectV2ItemFieldTextValue implements ProjectV2ItemFieldValueCommon & Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! -"""The connection type for Organization.""" -type OrganizationConnection { - """A list of edges.""" - edges: [OrganizationEdge] + """The actor who created the item.""" + creator: Actor - """A list of nodes.""" - nodes: [Organization] + """Identifies the primary key from the database.""" + databaseId: Int - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The project field that contains this value.""" + field: ProjectV2FieldConfiguration! + id: ID! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The project item that contains this value.""" + item: ProjectV2Item! -"""An edge in a connection.""" -type OrganizationEdge { - """A cursor for use in pagination.""" - cursor: String! + """Text value of a field""" + text: String - """The item at the end of the edge.""" - node: Organization + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! } -""" -An Identity Provider configured to provision SAML and SCIM identities for Organizations -""" -type OrganizationIdentityProvider implements Node { - """ - The digest algorithm used to sign SAML requests for the Identity Provider. - """ - digestMethod: URI +"""The value of a user field in a Project item.""" +type ProjectV2ItemFieldUserValue { + """The field that contains this value.""" + field: ProjectV2FieldConfiguration! - """External Identities provisioned by this Identity Provider""" - externalIdentities( + """The users for this field""" + users( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -10470,61 +20446,41 @@ type OrganizationIdentityProvider implements Node { """Returns the last _n_ elements from the list.""" last: Int - ): ExternalIdentityConnection! - id: ID! - - """ - The x509 certificate used by the Identity Provder to sign assertions and responses. - """ - idpCertificate: X509Certificate - - """The Issuer Entity ID for the SAML Identity Provider""" - issuer: String - - """Organization this Identity Provider belongs to""" - organization: Organization - - """ - The signature algorithm used to sign SAML requests for the Identity Provider. - """ - signatureMethod: URI - - """The URL endpoint for the Identity Provider's SAML SSO.""" - ssoUrl: URI + ): UserConnection } -"""An Invitation for a user to an organization.""" -type OrganizationInvitation implements Node { +"""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 { """Identifies the date and time when the object was created.""" createdAt: DateTime! - """The email address of the user invited to the organization.""" - email: String - id: ID! - - """The type of invitation that was sent (e.g. email, user).""" - invitationType: OrganizationInvitationType! + """The actor who created the item.""" + creator: Actor - """The user who was invited to the organization.""" - invitee: User + """Identifies the primary key from the database.""" + databaseId: Int - """The user who created the invitation.""" - inviter: User! + """The project field that contains this value.""" + field: ProjectV2FieldConfiguration! + id: ID! - """The organization the invite is for""" - organization: Organization! + """The project item that contains this value.""" + item: ProjectV2Item! - """The user's pending role in the organization (e.g. member, owner).""" - role: OrganizationInvitationRole! + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! } -"""The connection type for OrganizationInvitation.""" -type OrganizationInvitationConnection { +"""The connection type for ProjectV2ItemFieldValue.""" +type ProjectV2ItemFieldValueConnection { """A list of edges.""" - edges: [OrganizationInvitationEdge] + edges: [ProjectV2ItemFieldValueEdge] """A list of nodes.""" - nodes: [OrganizationInvitation] + nodes: [ProjectV2ItemFieldValue] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -10534,121 +20490,163 @@ type OrganizationInvitationConnection { } """An edge in a connection.""" -type OrganizationInvitationEdge { +type ProjectV2ItemFieldValueEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: OrganizationInvitation + node: ProjectV2ItemFieldValue } -"""The possible organization invitation roles.""" -enum OrganizationInvitationRole { - """The user is invited to be a direct member of the organization.""" - DIRECT_MEMBER +"""Ordering options for project v2 item field value connections""" +input ProjectV2ItemFieldValueOrder { + """The field to order the project v2 item field values by.""" + field: ProjectV2ItemFieldValueOrderField! - """The user is invited to be an admin of the organization.""" - ADMIN - - """The user is invited to be a billing manager of the organization.""" - BILLING_MANAGER + """The ordering direction.""" + direction: OrderDirection! +} - """The user's previous role will be reinstated.""" - REINSTATE +""" +Properties by which project v2 item field value connections can be ordered. +""" +enum ProjectV2ItemFieldValueOrderField { + """ + Order project v2 item field values by the their position in the project + """ + POSITION } -"""The possible organization invitation types.""" -enum OrganizationInvitationType { - """The invitation was to an existing user.""" - USER +"""Ordering options for project v2 item connections""" +input ProjectV2ItemOrder { + """The field to order the project v2 items by.""" + field: ProjectV2ItemOrderField! - """The invitation was to an email address.""" - EMAIL + """The ordering direction.""" + direction: OrderDirection! } -"""The connection type for User.""" -type OrganizationMemberConnection { - """A list of edges.""" - edges: [OrganizationMemberEdge] +"""Properties by which project v2 item connections can be ordered.""" +enum ProjectV2ItemOrderField { + """Order project v2 items by the their position in the project""" + POSITION +} - """A list of nodes.""" - nodes: [User] +"""The type of a project item.""" +enum ProjectV2ItemType { + """Issue""" + ISSUE - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Pull Request""" + PULL_REQUEST - """Identifies the total count of items in the connection.""" - totalCount: Int! + """Draft Issue""" + DRAFT_ISSUE + + """Redacted Item""" + REDACTED } -"""Represents a user within an organization.""" -type OrganizationMemberEdge { - """A cursor for use in pagination.""" - cursor: String! +"""An iteration field inside a project.""" +type ProjectV2IterationField implements ProjectV2FieldCommon & Node { + """Iteration configuration settings""" + configuration: ProjectV2IterationFieldConfiguration! - """ - Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. - """ - hasTwoFactorEnabled: Boolean + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The item at the end of the edge.""" - node: User + """The field's type.""" + dataType: ProjectV2FieldType! - """The role this user has in the organization.""" - role: OrganizationMemberRole + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! + + """The project field's name.""" + name: String! + + """The project that contains this field.""" + project: ProjectV2! + + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! } -"""The possible roles within an organization for its members.""" -enum OrganizationMemberRole { - """The user is a member of the organization.""" - MEMBER +"""Iteration field configuration for a project.""" +type ProjectV2IterationFieldConfiguration { + """The iteration's completed iterations""" + completedIterations: [ProjectV2IterationFieldIteration!]! - """The user is an administrator of the organization.""" - ADMIN + """The iteration's duration in days""" + duration: Int! + + """The iteration's iterations""" + iterations: [ProjectV2IterationFieldIteration!]! + + """The iteration's start day of the week""" + startDay: Int! } -""" -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.""" - ALL +"""Iteration field iteration settings for a project.""" +type ProjectV2IterationFieldIteration { + """The iteration's duration in days""" + duration: Int! - """Members will be able to create only private repositories.""" - PRIVATE + """The iteration's ID.""" + id: String! - """Members will not be able to create public or private repositories.""" - DISABLED + """The iteration's start date""" + startDate: Date! + + """The iteration's title.""" + title: String! + + """The iteration's html title.""" + titleHTML: String! } -"""Ordering options for organization connections.""" -input OrganizationOrder { - """The field to order organizations by.""" - field: OrganizationOrderField! +"""Ways in which lists of projects can be ordered upon return.""" +input ProjectV2Order { + """The field in which to order projects by.""" + field: ProjectV2OrderField! - """The ordering direction.""" + """The direction in which to order projects by the specified field.""" direction: OrderDirection! } -"""Properties by which organization connections can be ordered.""" -enum OrganizationOrderField { - """Order organizations by creation time""" - CREATED_AT +"""Properties by which projects can be ordered.""" +enum ProjectV2OrderField { + """The project's title""" + TITLE - """Order organizations by login""" - LOGIN + """The project's number""" + NUMBER + + """The project's date and time of update""" + UPDATED_AT + + """The project's date and time of creation""" + CREATED_AT } -"""An organization list hovercard context""" -type OrganizationsHovercardContext implements HovercardContext { - """A string describing this context""" - message: String! +"""Represents an owner of a project (beta).""" +interface ProjectV2Owner { + id: ID! - """An octicon to accompany this context""" - octicon: String! + """Find a project by number.""" + projectV2( + """The project number.""" + number: Int! + ): ProjectV2 + + """A list of projects under the owner.""" + projectsV2( + """A project to search for under the the owner.""" + query: String + + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} - """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 @@ -10662,22 +20660,15 @@ type OrganizationsHovercardContext implements HovercardContext { """Returns the last _n_ elements from the list.""" last: Int - ): OrganizationConnection! - - """The total number of organizations this user is in""" - totalOrganizationCount: Int! + ): ProjectV2Connection! } -"""An organization teams hovercard context""" -type OrganizationTeamsHovercardContext implements HovercardContext { - """A string describing this context""" - message: String! - - """An octicon to accompany this context""" - octicon: String! - - """Teams in this organization the user is a member of that are relevant""" - relevantTeams( +"""Recent projects for the owner.""" +interface ProjectV2Recent { + """ + 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 @@ -10691,1807 +20682,2017 @@ 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! + ): ProjectV2Connection! } -"""Audit log entry for a org.block_user""" -type OrgBlockUserAuditEntry implements Node & AuditEntry & 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 +"""A single select field inside a project.""" +type ProjectV2SingleSelectField implements ProjectV2FieldCommon & Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The HTTP URL for the blocked user.""" - blockedUserUrl: URI + """The field's type.""" + dataType: ProjectV2FieldType! - """The time the action was initiated""" - createdAt: PreciseDateTime! + """Identifies the primary key from the database.""" + databaseId: Int 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 + """The project field's name.""" + name: String! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Options for the single select field""" + options: [ProjectV2SingleSelectFieldOption!]! - """The HTTP path for the user.""" - userResourcePath: URI + """The project that contains this field.""" + project: ProjectV2! - """The HTTP URL for the user.""" - userUrl: URI + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! } -"""Audit log entry for a org.config.disable_collaborators_only event.""" -type OrgConfigDisableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & 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 +"""Single select field option for a configuration for a project.""" +type ProjectV2SingleSelectFieldOption { + """The option's ID.""" + id: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The option's name.""" + name: String! - """The HTTP URL for the actor.""" - actorUrl: URI + """The option's html name.""" + nameHTML: String! +} - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! +"""The display color of a single-select field option.""" +enum ProjectV2SingleSelectFieldOptionColor { + """GRAY""" + GRAY - """The corresponding operation type for the action""" - operationType: OperationType + """BLUE""" + BLUE - """The Organization associated with the Audit Entry.""" - organization: Organization + """GREEN""" + GREEN - """The name of the Organization.""" - organizationName: String + """YELLOW""" + YELLOW - """The HTTP path for the organization""" - organizationResourcePath: URI + """ORANGE""" + ORANGE - """The HTTP URL for the organization""" - organizationUrl: URI + """RED""" + RED - """The user affected by the action""" - user: User + """PINK""" + PINK - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """PURPLE""" + PURPLE +} - """The HTTP path for the user.""" - userResourcePath: URI +"""Represents a single select field option""" +input ProjectV2SingleSelectFieldOptionInput { + """The name of the option""" + name: String! - """The HTTP URL for the user.""" - userUrl: URI + """The display color of the option""" + color: ProjectV2SingleSelectFieldOptionColor! + + """The description text of the option""" + description: String! } -"""Audit log entry for a org.config.enable_collaborators_only event.""" -type OrgConfigEnableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""Represents a sort by field and direction.""" +type ProjectV2SortBy { + """The direction of the sorting. Possible values are ASC and DESC.""" + direction: OrderDirection! - """The user who initiated the action""" - actor: AuditEntryActor + """The field by which items are sorted.""" + field: ProjectV2Field! +} - """The IP address of the actor""" - actorIp: String +"""The connection type for ProjectV2SortBy.""" +type ProjectV2SortByConnection { + """A list of edges.""" + edges: [ProjectV2SortByEdge] - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A list of nodes.""" + nodes: [ProjectV2SortBy] - """The username of the user who initiated the action""" - actorLogin: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP path for the actor.""" - actorResourcePath: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""An edge in a connection.""" +type ProjectV2SortByEdge { + """A cursor for use in pagination.""" + cursor: String! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The item at the end of the edge.""" + node: ProjectV2SortBy +} - """The corresponding operation type for the action""" - operationType: OperationType +"""Represents a sort by field and direction.""" +type ProjectV2SortByField { + """The direction of the sorting. Possible values are ASC and DESC.""" + direction: OrderDirection! - """The Organization associated with the Audit Entry.""" - organization: Organization + """The field by which items are sorted.""" + field: ProjectV2FieldConfiguration! +} - """The name of the Organization.""" - organizationName: String +"""The connection type for ProjectV2SortByField.""" +type ProjectV2SortByFieldConnection { + """A list of edges.""" + edges: [ProjectV2SortByFieldEdge] - """The HTTP path for the organization""" - organizationResourcePath: URI + """A list of nodes.""" + nodes: [ProjectV2SortByField] - """The HTTP URL for the organization""" - organizationUrl: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The user affected by the action""" - user: User + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String +"""An edge in a connection.""" +type ProjectV2SortByFieldEdge { + """A cursor for use in pagination.""" + cursor: String! - """The HTTP path for the user.""" - userResourcePath: URI + """The item at the end of the edge.""" + node: ProjectV2SortByField +} - """The HTTP URL for the user.""" - userUrl: URI +"""The possible states of a project v2.""" +enum ProjectV2State { + """A project v2 that is still open""" + OPEN + + """A project v2 that has been closed""" + CLOSED } -"""Audit log entry for a org.create event.""" -type OrgCreateAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""A view within a ProjectV2.""" +type ProjectV2View implements Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The user who initiated the action""" - actor: AuditEntryActor + """Identifies the primary key from the database.""" + databaseId: Int - """The IP address of the actor""" - actorIp: String + """The view's visible fields.""" + fields( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The username of the user who initiated the action""" - actorLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the actor.""" - actorResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the actor.""" - actorUrl: URI + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection - """The billing plan for the Organization.""" - billingPlan: OrgCreateAuditEntryBillingPlan + """The project view's filter.""" + filter: String - """The time the action was initiated""" - createdAt: PreciseDateTime! + """The view's group-by field.""" + groupByFields( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection id: ID! - """The corresponding operation type for the action""" - operationType: OperationType + """The project view's layout.""" + layout: ProjectV2ViewLayout! - """The Organization associated with the Audit Entry.""" - organization: Organization + """The project view's name.""" + name: String! - """The name of the Organization.""" - organizationName: String + """The project view's number.""" + number: Int! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The project that contains this view.""" + project: ProjectV2! - """The HTTP URL for the organization""" - organizationUrl: URI + """The view's sort-by config.""" + sortByFields( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user affected by the action""" - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectV2SortByFieldConnection - """The HTTP URL for the user.""" - userUrl: URI -} + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! -"""The billing plans available for organizations.""" -enum OrgCreateAuditEntryBillingPlan { - """Free Plan""" - FREE + """The view's vertical-group-by field.""" + verticalGroupByFields( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Team Plan""" - BUSINESS + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Enterprise Cloud Plan""" - BUSINESS_PLUS + """Returns the first _n_ elements from the list.""" + first: Int - """Legacy Unlimited Plan""" - UNLIMITED + """Returns the last _n_ elements from the list.""" + last: Int - """Tiered Per Seat Plan""" - TIERED_PER_SEAT + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection } -"""Audit log entry for a org.disable_oauth_app_restrictions event.""" -type OrgDisableOauthAppRestrictionsAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""The connection type for ProjectV2View.""" +type ProjectV2ViewConnection { + """A list of edges.""" + edges: [ProjectV2ViewEdge] - """The user who initiated the action""" - actor: AuditEntryActor + """A list of nodes.""" + nodes: [ProjectV2View] - """The IP address of the actor""" - actorIp: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The username of the user who initiated the action""" - actorLogin: String +"""An edge in a connection.""" +type ProjectV2ViewEdge { + """A cursor for use in pagination.""" + cursor: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The item at the end of the edge.""" + node: ProjectV2View +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""The layout of a project v2 view.""" +enum ProjectV2ViewLayout { + """Board layout""" + BOARD_LAYOUT - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Table layout""" + TABLE_LAYOUT - """The corresponding operation type for the action""" - operationType: OperationType + """Roadmap layout""" + ROADMAP_LAYOUT +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""Ordering options for project v2 view connections""" +input ProjectV2ViewOrder { + """The field to order the project v2 views by.""" + field: ProjectV2ViewOrderField! - """The name of the Organization.""" - organizationName: String + """The ordering direction.""" + direction: OrderDirection! +} - """The HTTP path for the organization""" - organizationResourcePath: URI +"""Properties by which project v2 view connections can be ordered.""" +enum ProjectV2ViewOrderField { + """Order project v2 views by position""" + POSITION - """The HTTP URL for the organization""" - organizationUrl: URI + """Order project v2 views by creation time""" + CREATED_AT + + """Order project v2 views by name""" + NAME +} + +"""A workflow inside a project.""" +type ProjectV2Workflow implements Node { + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """Identifies the primary key from the database.""" + databaseId: Int - """The user affected by the action""" - user: User + """The workflows' enabled state.""" + enabled: Boolean! + id: ID! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """The workflows' name.""" + name: String! - """The HTTP path for the user.""" - userResourcePath: URI + """The workflows' number.""" + number: Int! - """The HTTP URL for the user.""" - userUrl: URI -} + """The project that contains this workflow.""" + project: ProjectV2! -"""Audit log entry for a org.disable_saml event.""" -type OrgDisableSamlAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! +} - """The user who initiated the action""" - actor: AuditEntryActor +"""The connection type for ProjectV2Workflow.""" +type ProjectV2WorkflowConnection { + """A list of edges.""" + edges: [ProjectV2WorkflowEdge] - """The IP address of the actor""" - actorIp: String + """A list of nodes.""" + nodes: [ProjectV2Workflow] - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The username of the user who initiated the action""" - actorLogin: String + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The HTTP path for the actor.""" - actorResourcePath: URI +"""An edge in a connection.""" +type ProjectV2WorkflowEdge { + """A cursor for use in pagination.""" + cursor: String! - """The HTTP URL for the actor.""" - actorUrl: URI + """The item at the end of the edge.""" + node: ProjectV2Workflow +} - """The time the action was initiated""" - createdAt: PreciseDateTime! +"""Ordering options for project v2 workflows connections""" +input ProjectV2WorkflowOrder { + """The field to order the project v2 workflows by.""" + field: ProjectV2WorkflowsOrderField! - """The SAML provider's digest algorithm URL.""" - digestMethodUrl: URI - id: ID! + """The ordering direction.""" + direction: OrderDirection! +} - """The SAML provider's issuer URL.""" - issuerUrl: URI +"""Properties by which project workflows can be ordered.""" +enum ProjectV2WorkflowsOrderField { + """The workflows' name""" + NAME - """The corresponding operation type for the action""" - operationType: OperationType + """The workflows' number""" + NUMBER - """The Organization associated with the Audit Entry.""" - organization: Organization + """The workflows' date and time of update""" + UPDATED_AT - """The name of the Organization.""" - organizationName: String + """The workflows' date and time of creation""" + CREATED_AT +} - """The HTTP path for the organization""" - organizationResourcePath: URI +"""A user's public key.""" +type PublicKey implements Node { + """ + The last time this authorization was used to perform an action. Values will be null for keys not owned by the user. + """ + accessedAt: DateTime - """The HTTP URL for the organization""" - organizationUrl: URI + """ + 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. + """ + createdAt: DateTime - """The SAML provider's signature algorithm URL.""" - signatureMethodUrl: URI + """The fingerprint for this PublicKey.""" + fingerprint: String! + id: ID! - """The SAML provider's single sign-on URL.""" - singleSignOnUrl: URI + """ + Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. + """ + isReadOnly: Boolean - """The user affected by the action""" - user: User + """The public key string.""" + key: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + 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. """ - userLogin: String + updatedAt: DateTime +} - """The HTTP path for the user.""" - userResourcePath: URI +"""The connection type for PublicKey.""" +type PublicKeyConnection { + """A list of edges.""" + edges: [PublicKeyEdge] - """The HTTP URL for the user.""" - userUrl: URI + """A list of nodes.""" + nodes: [PublicKey] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""Audit log entry for a org.disable_two_factor_requirement event.""" -type OrgDisableTwoFactorRequirementAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""An edge in a connection.""" +type PublicKeyEdge { + """A cursor for use in pagination.""" + cursor: String! - """The user who initiated the action""" - actor: AuditEntryActor + """The item at the end of the edge.""" + node: PublicKey +} - """The IP address of the actor""" - actorIp: String +"""Autogenerated input type of PublishSponsorsTier""" +input PublishSponsorsTierInput { + """The ID of the draft tier to publish.""" + tierId: ID! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The username of the user who initiated the action""" - actorLogin: String +"""Autogenerated return type of PublishSponsorsTier""" +type PublishSponsorsTierPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The HTTP path for the actor.""" - actorResourcePath: URI + """The tier that was published.""" + sponsorsTier: SponsorsTier +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""A repository pull request.""" +type PullRequest implements Node & Assignable & Closable & Comment & Updatable & UpdatableComment & Labelable & Lockable & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & ProjectV2Owner { + """Reason that the conversation was locked.""" + activeLockReason: LockReason - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The number of additions in this pull request.""" + additions: Int! - """The corresponding operation type for the action""" - operationType: OperationType + """A list of Users assigned to this object.""" + assignees( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the Organization.""" - organizationName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): UserConnection! - """The HTTP URL for the organization""" - organizationUrl: URI + """The actor who authored the comment.""" + author: Actor - """The user affected by the action""" - user: User + """Author's association with the subject of the comment.""" + authorAssociation: CommentAuthorAssociation! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Returns the auto-merge request object if one exists for this pull request. """ - userLogin: String + autoMergeRequest: AutoMergeRequest - """The HTTP path for the user.""" - userResourcePath: URI + """Identifies the base Ref associated with the pull request.""" + baseRef: Ref - """The HTTP URL for the user.""" - userUrl: URI -} + """ + Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. + """ + baseRefName: String! -"""Audit log entry for a org.enable_oauth_app_restrictions event.""" -type OrgEnableOauthAppRestrictionsAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """ + Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. + """ + baseRefOid: GitObjectID! - """The user who initiated the action""" - actor: AuditEntryActor + """The repository associated with this pull request's base Ref.""" + baseRepository: Repository - """The IP address of the actor""" - actorIp: String + """The body as Markdown.""" + body: String! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The body rendered to HTML.""" + bodyHTML: HTML! - """The username of the user who initiated the action""" - actorLogin: String + """The body rendered to text.""" + bodyText: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The number of changed files in this pull request.""" + changedFiles: Int! - """The HTTP URL for the actor.""" - actorUrl: URI + """The HTTP path for the checks of this pull request.""" + checksResourcePath: URI! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The HTTP URL for the checks of this pull request.""" + checksUrl: URI! - """The corresponding operation type for the action""" - operationType: OperationType + """`true` if the pull request is closed""" + closed: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Identifies the date and time when the object was closed.""" + closedAt: DateTime - """The name of the Organization.""" - organizationName: String + """List of issues that were may be closed by this pull request""" + closingIssuesReferences( + """Return only manually linked Issues""" + userLinkedOnly: Boolean = false - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The user affected by the action""" - user: User + """Returns the first _n_ elements from the list.""" + first: Int - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Ordering options for issues returned from the connection""" + orderBy: IssueOrder + ): IssueConnection - """The HTTP URL for the user.""" - userUrl: URI -} + """A list of comments associated with the pull request.""" + comments( + """Ordering options for issue comments returned from the connection.""" + orderBy: IssueCommentOrder -"""Audit log entry for a org.enable_saml event.""" -type OrgEnableSamlAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """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 + ): IssueCommentConnection! - """The username of the user who initiated the action""" - actorLogin: String + """ + A list of commits present in this pull request's head branch not present in the base branch. + """ + commits( + """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 - """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! + """Returns the last _n_ elements from the list.""" + last: Int + ): PullRequestCommitConnection! - """The SAML provider's digest algorithm URL.""" - digestMethodUrl: URI - id: ID! + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The SAML provider's issuer URL.""" - issuerUrl: URI + """Check if this comment was created via an email reply.""" + createdViaEmail: Boolean! - """The corresponding operation type for the action""" - operationType: OperationType + """Identifies the primary key from the database.""" + databaseId: Int - """The Organization associated with the Audit Entry.""" - organization: Organization + """The number of deletions in this pull request.""" + deletions: Int! - """The name of the Organization.""" - organizationName: String + """The actor who edited this pull request's body.""" + editor: Actor - """The HTTP path for the organization""" - organizationResourcePath: URI + """Lists the files changed within this pull request.""" + files( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The SAML provider's signature algorithm URL.""" - signatureMethodUrl: URI + """Returns the first _n_ elements from the list.""" + first: Int - """The SAML provider's single sign-on URL.""" - singleSignOnUrl: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): PullRequestChangedFileConnection - """The user affected by the action""" - user: User + """Identifies the head Ref associated with the pull request.""" + headRef: Ref """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. """ - userLogin: String - - """The HTTP path for the user.""" - userResourcePath: URI - - """The HTTP URL for the user.""" - userUrl: URI -} + headRefName: String! -"""Audit log entry for a org.enable_two_factor_requirement event.""" -type OrgEnableTwoFactorRequirementAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """ + Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. + """ + headRefOid: GitObjectID! - """The user who initiated the action""" - actor: AuditEntryActor + """The repository associated with this pull request's head Ref.""" + headRepository: Repository - """The IP address of the actor""" - actorIp: String + """ + The owner of the repository associated with this pull request's head Ref. + """ + headRepositoryOwner: RepositoryOwner - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The hovercard information for this issue""" + hovercard( + """Whether or not to include notification contexts""" + includeNotificationContexts: Boolean = true + ): Hovercard! + id: ID! - """The username of the user who initiated the action""" - actorLogin: String + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The head and base repositories are different.""" + isCrossRepository: Boolean! - """The HTTP URL for the actor.""" - actorUrl: URI + """Identifies if the pull request is a draft.""" + isDraft: Boolean! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Is this pull request read by the viewer""" + isReadByViewer: Boolean - """The corresponding operation type for the action""" - operationType: OperationType + """A list of labels associated with the object.""" + labels( + """Ordering options for labels returned from the connection.""" + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - """The Organization associated with the Audit Entry.""" - organization: Organization + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The name of the Organization.""" - organizationName: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP URL for the organization""" - organizationUrl: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): LabelConnection - """The user affected by the action""" - user: User + """The moment the editor made the last edit""" + lastEditedAt: DateTime - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """A list of latest reviews per user associated with the pull request.""" + latestOpinionatedReviews( + """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.invite_member event.""" -type OrgInviteMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """Returns the last _n_ elements from the list.""" + last: Int - """The user who initiated the action""" - actor: AuditEntryActor + """Only return reviews from user who have write access to the repository""" + writersOnly: Boolean = false + ): PullRequestReviewConnection - """The IP address of the actor""" - actorIp: String + """ + A list of latest reviews per user associated with the pull request that are not also pending review. + """ + latestReviews( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The username of the user who initiated the action""" - actorLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the actor.""" - actorResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): PullRequestReviewConnection - """The HTTP URL for the actor.""" - actorUrl: URI + """`true` if the pull request is locked""" + locked: Boolean! - """The time the action was initiated""" - createdAt: PreciseDateTime! + """Indicates whether maintainers can modify the pull request.""" + maintainerCanModify: Boolean! - """The email address of the organization invitation.""" - email: String - id: ID! + """The commit that was created when this pull request was merged.""" + mergeCommit: Commit - """The corresponding operation type for the action""" - operationType: OperationType + """ + The merge queue entry of the pull request in the base branch's merge queue + """ + mergeQueueEntry: MergeQueueEntry - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Whether or not the pull request can be merged based on the existence of merge conflicts. + """ + mergeable: MergeableState! - """The organization invitation.""" - organizationInvitation: OrganizationInvitation + """Whether or not the pull request was merged.""" + merged: Boolean! - """The name of the Organization.""" - organizationName: String + """The date and time that the pull request was merged.""" + mergedAt: DateTime - """The HTTP path for the organization""" - organizationResourcePath: URI + """The actor who merged the pull request.""" + mergedBy: Actor - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the milestone associated with the pull request.""" + milestone: Milestone - """The user affected by the action""" - user: User + """Identifies the pull request number.""" + number: Int! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of Users that are participating in the Pull Request conversation. """ - userLogin: String - - """The HTTP path for the user.""" - userResourcePath: URI - - """The HTTP URL for the user.""" - userUrl: URI -} + participants( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Audit log entry for a org.invite_to_business event.""" -type OrgInviteToBusinessAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { - """The action name""" - 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 + ): UserConnection! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The permalink to the pull request.""" + permalink: URI! - """The username of the user who initiated the action""" - actorLogin: 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. + """ + potentialMergeCommit: Commit - """The HTTP path for the actor.""" - actorResourcePath: URI + """List of project cards associated with this pull request.""" + projectCards( + """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! + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The slug of the enterprise.""" - enterpriseSlug: String + """A list of archived states to filter the cards by""" + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + ): ProjectCardConnection! - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI - id: ID! + """List of project items associated with this pull request.""" + projectItems( + """Include archived items.""" + includeArchived: Boolean = true - """The corresponding operation type for the action""" - operationType: OperationType + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the Organization.""" - organizationName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectV2ItemConnection! - """The HTTP URL for the organization""" - organizationUrl: URI + """Find a project by number.""" + projectV2( + """The project number.""" + number: Int! + ): ProjectV2 - """The user affected by the action""" - user: User + """A list of projects under the owner.""" + projectsV2( + """A project to search for under the the owner.""" + query: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} - """The HTTP path for the user.""" - userResourcePath: URI + """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.oauth_app_access_approved event.""" -type OrgOauthAppAccessApprovedAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! + """Returns the first _n_ elements from the list.""" + first: Int - """The user who initiated the action""" - actor: AuditEntryActor + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectV2Connection! - """The IP address of the actor""" - actorIp: String + """Identifies when the comment was published at.""" + publishedAt: DateTime - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A list of reactions grouped by content left on the subject.""" + reactionGroups: [ReactionGroup!] - """The username of the user who initiated the action""" - actorLogin: String + """A list of Reactions left on the Issue.""" + reactions( + """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 - """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 - """The name of the OAuth Application.""" - oauthApplicationName: String + """Allows filtering Reactions by emoji.""" + content: ReactionContent - """The HTTP path for the OAuth Application""" - oauthApplicationResourcePath: URI + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! - """The HTTP URL for the OAuth Application""" - oauthApplicationUrl: URI + """The repository associated with this node.""" + repository: Repository! - """The corresponding operation type for the action""" - operationType: OperationType + """The HTTP path for this pull request.""" + resourcePath: URI! - """The Organization associated with the Audit Entry.""" - organization: Organization + """The HTTP path for reverting this pull request.""" + revertResourcePath: URI! - """The name of the Organization.""" - organizationName: String + """The HTTP URL for reverting this pull request.""" + revertUrl: URI! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The current status of this pull request with respect to code review.""" + reviewDecision: PullRequestReviewDecision - """The HTTP URL for the organization""" - organizationUrl: URI + """A list of review requests associated with the pull request.""" + reviewRequests( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user affected by the action""" - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): ReviewRequestConnection - """The HTTP URL for the user.""" - userUrl: URI -} + """The list of all review threads for this pull request.""" + reviewThreads( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Audit log entry for a org.oauth_app_access_denied event.""" -type OrgOauthAppAccessDeniedAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """The action name""" - 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 + ): PullRequestReviewThreadConnection! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A list of reviews associated with the pull request.""" + reviews( + """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 + """Returns the last _n_ elements from the list.""" + last: Int - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """A list of states to filter the reviews.""" + states: [PullRequestReviewState!] - """The name of the OAuth Application.""" - oauthApplicationName: String + """Filter by author of the review.""" + author: String + ): PullRequestReviewConnection - """The HTTP path for the OAuth Application""" - oauthApplicationResourcePath: URI + """Identifies the state of the pull request.""" + state: PullRequestState! - """The HTTP URL for the OAuth Application""" - oauthApplicationUrl: URI + """ + A list of reviewer suggestions based on commit history and past review comments. + """ + suggestedReviewers: [SuggestedReviewer]! - """The corresponding operation type for the action""" - operationType: OperationType + """ + A list of events, comments, commits, etc. associated with the pull request. + """ + timelineItems( + """Filter timeline items by a `since` timestamp.""" + since: DateTime - """The Organization associated with the Audit Entry.""" - organization: Organization + """Skips the first _n_ elements in the list.""" + skip: Int - """The name of the Organization.""" - organizationName: String + """Filter timeline items by type.""" + itemTypes: [PullRequestTimelineItemsItemType!] - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The user affected by the action""" - user: User + """Returns the first _n_ elements from the list.""" + first: Int - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the last _n_ elements from the list.""" + last: Int + ): PullRequestTimelineItemsConnection! - """The HTTP path for the user.""" - userResourcePath: URI + """Identifies the pull request title.""" + title: String! - """The HTTP URL for the user.""" - userUrl: URI -} + """Identifies the pull request title rendered to HTML.""" + titleHTML: HTML! -"""Audit log entry for a org.oauth_app_access_requested event.""" -type OrgOauthAppAccessRequestedAuditEntry implements Node & AuditEntry & OauthApplicationAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! + """Returns a count of how many comments this pull request has received.""" + totalCommentsCount: Int - """The user who initiated the action""" - actor: AuditEntryActor + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """The IP address of the actor""" - actorIp: String + """The HTTP URL for this pull request.""" + url: URI! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A list of edits to this content.""" + userContentEdits( + """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 + """Returns the last _n_ elements from the list.""" + last: Int + ): UserContentEditConnection - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Whether or not the viewer can apply suggestion.""" + viewerCanApplySuggestion: Boolean! - """The name of the OAuth Application.""" - oauthApplicationName: String + """Indicates if the object can be closed by the viewer.""" + viewerCanClose: Boolean! - """The HTTP path for the OAuth Application""" - oauthApplicationResourcePath: URI + """Check if the viewer can restore the deleted head ref.""" + viewerCanDeleteHeadRef: Boolean! - """The HTTP URL for the OAuth Application""" - oauthApplicationUrl: URI + """Whether or not the viewer can disable auto-merge""" + viewerCanDisableAutoMerge: Boolean! - """The corresponding operation type for the action""" - operationType: OperationType + """Can the viewer edit files within this pull request.""" + viewerCanEditFiles: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Whether or not the viewer can enable auto-merge""" + viewerCanEnableAutoMerge: Boolean! - """The name of the Organization.""" - organizationName: String + """ + Indicates whether the viewer can bypass branch protections and merge the pull request immediately + """ + viewerCanMergeAsAdmin: Boolean! - """The HTTP path for the organization""" - organizationResourcePath: URI + """Can user react to this subject""" + viewerCanReact: Boolean! - """The HTTP URL for the organization""" - organizationUrl: URI + """Indicates if the object can be reopened by the viewer.""" + viewerCanReopen: Boolean! - """The user affected by the action""" - user: User + """ + 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! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + 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. + """ - userLogin: String + viewerCanUpdateBranch: Boolean! - """The HTTP path for the user.""" - userResourcePath: URI + """Reasons why the current viewer can not update this comment.""" + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! - """The HTTP URL for the user.""" - userUrl: URI -} + """Did the viewer author this comment.""" + viewerDidAuthor: Boolean! -"""Audit log entry for a org.remove_billing_manager event.""" -type OrgRemoveBillingManagerAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """The latest review given from the viewer.""" + viewerLatestReview: PullRequestReview - """The user who initiated the action""" - actor: AuditEntryActor + """ + The person who has requested the viewer for review on this pull request. + """ + viewerLatestReviewRequest: ReviewRequest - """The IP address of the actor""" - actorIp: String + """The merge body text for the viewer and method.""" + viewerMergeBodyText( + """The merge method for the message.""" + mergeType: PullRequestMergeMethod + ): String! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The merge headline text for the viewer and method.""" + viewerMergeHeadlineText( + """The merge method for the message.""" + mergeType: PullRequestMergeMethod + ): String! - """The username of the user who initiated the action""" - actorLogin: String + """ + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + """ + viewerSubscription: SubscriptionState +} - """The HTTP path for the actor.""" - actorResourcePath: URI +"""A file changed in a pull request.""" +type PullRequestChangedFile { + """The number of additions to the file.""" + additions: Int! - """The HTTP URL for the actor.""" - actorUrl: URI + """How the file was changed in this PullRequest""" + changeType: PatchStatus! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The number of deletions to the file.""" + deletions: Int! - """The corresponding operation type for the action""" - operationType: OperationType + """The path of the file.""" + path: String! - """The Organization associated with the Audit Entry.""" - organization: Organization + """The state of the file for the viewer.""" + viewerViewedState: FileViewedState! +} - """The name of the Organization.""" - organizationName: String +"""The connection type for PullRequestChangedFile.""" +type PullRequestChangedFileConnection { + """A list of edges.""" + edges: [PullRequestChangedFileEdge] - """The HTTP path for the organization""" - organizationResourcePath: URI + """A list of nodes.""" + nodes: [PullRequestChangedFile] - """The HTTP URL for the organization""" - organizationUrl: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The reason for the billing manager being removed.""" - reason: OrgRemoveBillingManagerAuditEntryReason + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The user affected by the action""" - user: User +"""An edge in a connection.""" +type PullRequestChangedFileEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: PullRequestChangedFile +} + +"""Represents a Git commit part of a pull request.""" +type PullRequestCommit implements Node & UniformResourceLocatable { + """The Git commit object""" + commit: Commit! + id: ID! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """The pull request this commit belongs to""" + pullRequest: PullRequest! - """The HTTP path for the user.""" - userResourcePath: URI + """The HTTP path for this pull request commit""" + resourcePath: URI! - """The HTTP URL for the user.""" - userUrl: URI + """The HTTP URL for this pull request commit""" + url: URI! } -"""The reason a billing manager was removed from an Organization.""" -enum OrgRemoveBillingManagerAuditEntryReason { - """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. - """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE +"""Represents a commit comment thread part of a pull request.""" +type PullRequestCommitCommentThread implements RepositoryNode & Node { + """The comments that exist in this thread.""" + comments( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """SAML external identity missing""" - SAML_EXTERNAL_IDENTITY_MISSING + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """SAML SSO enforcement requires an external identity""" - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY -} + """Returns the first _n_ elements from the list.""" + first: Int -"""Audit log entry for a org.remove_member event.""" -type OrgRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """Returns the last _n_ elements from the list.""" + last: Int + ): CommitCommentConnection! - """The user who initiated the action""" - actor: AuditEntryActor + """The commit the comments were made on.""" + commit: Commit! + id: ID! - """The IP address of the actor""" - actorIp: String + """The file the comments were made on.""" + path: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The position in the diff for the commit that the comment was made on.""" + position: Int - """The username of the user who initiated the action""" - actorLogin: String + """The pull request this commit comment thread belongs to""" + pullRequest: PullRequest! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The repository associated with this node.""" + repository: Repository! +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""The connection type for PullRequestCommit.""" +type PullRequestCommitConnection { + """A list of edges.""" + edges: [PullRequestCommitEdge] - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """A list of nodes.""" + nodes: [PullRequestCommit] - """The types of membership the member has with the organization.""" - membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The corresponding operation type for the action""" - operationType: OperationType + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""An edge in a connection.""" +type PullRequestCommitEdge { + """A cursor for use in pagination.""" + cursor: String! - """The name of the Organization.""" - organizationName: String + """The item at the end of the edge.""" + node: PullRequestCommit +} - """The HTTP path for the organization""" - organizationResourcePath: URI +"""The connection type for PullRequest.""" +type PullRequestConnection { + """A list of edges.""" + edges: [PullRequestEdge] - """The HTTP URL for the organization""" - organizationUrl: URI + """A list of nodes.""" + nodes: [PullRequest] - """The reason for the member being removed.""" - reason: OrgRemoveMemberAuditEntryReason + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The user affected by the action""" - user: User + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String +"""This aggregates pull requests opened by a user within one repository.""" +type PullRequestContributionsByRepository { + """The pull request contributions.""" + contributions( + """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 contributions returned from the connection.""" + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestContributionConnection! + + """The repository in which the pull requests were opened.""" + repository: Repository! } -"""The type of membership a user has with an Organization.""" -enum OrgRemoveMemberAuditEntryMembershipType { - """A direct member is a user that is a member of the Organization.""" - DIRECT_MEMBER +"""An edge in a connection.""" +type PullRequestEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - 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 + """The item at the end of the edge.""" + node: PullRequest +} +""" +Represents available types of methods to use when merging a pull request. +""" +enum PullRequestMergeMethod { """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + Add all commits from the head branch to the base branch with a merge commit. """ - BILLING_MANAGER + MERGE """ - 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. + Combine all commits from the head branch into a single commit in the base branch. """ - UNAFFILIATED + SQUASH """ - 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. + Add all commits from the head branch onto the base branch individually. """ - OUTSIDE_COLLABORATOR + REBASE } -"""The reason a member was removed from an Organization.""" -enum OrgRemoveMemberAuditEntryReason { - """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. - """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE - - """SAML external identity missing""" - SAML_EXTERNAL_IDENTITY_MISSING - - """SAML SSO enforcement requires an external identity""" - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY - - """User account has been deleted""" - USER_ACCOUNT_DELETED +"""Ways in which lists of issues can be ordered upon return.""" +input PullRequestOrder { + """The field in which to order pull requests by.""" + field: PullRequestOrderField! - """User was removed from organization during account recovery""" - TWO_FACTOR_ACCOUNT_RECOVERY + """The direction in which to order pull requests by the specified field.""" + direction: OrderDirection! } -"""Audit log entry for a org.remove_outside_collaborator event.""" -type OrgRemoveOutsideCollaboratorAuditEntry implements Node & AuditEntry & 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 +"""Properties by which pull_requests connections can be ordered.""" +enum PullRequestOrderField { + """Order pull_requests by creation time""" + CREATED_AT - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Order pull_requests by update time""" + UPDATED_AT +} +"""Parameters to be used for the pull_request rule""" +type PullRequestParameters { """ - The types of membership the outside collaborator has with the organization. + New, reviewable commits pushed will dismiss previous pull request review approvals. """ - membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] - - """The corresponding operation type for the action""" - operationType: OperationType - - """The Organization associated with the Audit Entry.""" - organization: Organization - - """The name of the Organization.""" - organizationName: String + dismissStaleReviewsOnPush: Boolean! - """The HTTP path for the organization""" - organizationResourcePath: URI + """ + Require an approving review in pull requests that modify files that have a designated code owner. + """ + requireCodeOwnerReview: Boolean! - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Whether the most recent reviewable push must be approved by someone other than the person who pushed it. + """ + requireLastPushApproval: Boolean! """ - The reason for the outside collaborator being removed from the Organization. + The number of approving reviews that are required before a pull request can be merged. """ - reason: OrgRemoveOutsideCollaboratorAuditEntryReason - - """The user affected by the action""" - user: User + requiredApprovingReviewCount: Int! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + All conversations on code must be resolved before a pull request can be merged. """ - userLogin: String + requiredReviewThreadResolution: Boolean! +} - """The HTTP path for the user.""" - userResourcePath: URI +"""Parameters to be used for the pull_request rule""" +input PullRequestParametersInput { + """ + New, reviewable commits pushed will dismiss previous pull request review approvals. + """ + dismissStaleReviewsOnPush: Boolean! - """The HTTP URL for the user.""" - userUrl: URI -} + """ + Require an approving review in pull requests that modify files that have a designated code owner. + """ + requireCodeOwnerReview: Boolean! -"""The type of membership a user has with an Organization.""" -enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { """ - 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. + Whether the most recent reviewable push must be approved by someone other than the person who pushed it. """ - OUTSIDE_COLLABORATOR + requireLastPushApproval: Boolean! """ - 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 number of approving reviews that are required before a pull request can be merged. """ - UNAFFILIATED + requiredApprovingReviewCount: Int! """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + All conversations on code must be resolved before a pull request can be merged. """ - BILLING_MANAGER + requiredReviewThreadResolution: Boolean! } -"""The reason an outside collaborator was removed from an Organization.""" -enum OrgRemoveOutsideCollaboratorAuditEntryReason { +"""A review object for a given pull request.""" +type PullRequestReview implements Node & Comment & Deletable & Updatable & UpdatableComment & Reactable & RepositoryNode { + """The actor who authored the comment.""" + author: Actor + + """Author's association with the subject of the comment.""" + authorAssociation: CommentAuthorAssociation! + """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + Indicates whether the author of this review has push access to the repository. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + authorCanPushToRepository: Boolean! - """SAML external identity missing""" - SAML_EXTERNAL_IDENTITY_MISSING -} + """Identifies the pull request review body.""" + body: String! -"""Audit log entry for a org.restore_member event.""" -type OrgRestoreMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """The body rendered to HTML.""" + bodyHTML: HTML! - """The user who initiated the action""" - actor: AuditEntryActor + """The body of this review rendered as plain text.""" + bodyText: String! - """The IP address of the actor""" - actorIp: String + """A list of review comments for the current pull request review.""" + comments( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The username of the user who initiated the action""" - actorLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the actor.""" - actorResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): PullRequestReviewCommentConnection! - """The HTTP URL for the actor.""" - actorUrl: URI + """Identifies the commit associated with this pull request review.""" + commit: Commit - """The time the action was initiated""" - createdAt: PreciseDateTime! + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """Check if this comment was created via an email reply.""" + createdViaEmail: Boolean! + + """Identifies the primary key from the database.""" + databaseId: Int + + """The actor who edited the comment.""" + editor: Actor id: ID! - """The corresponding operation type for the action""" - operationType: OperationType + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """The moment the editor made the last edit""" + lastEditedAt: DateTime - """The name of the Organization.""" - organizationName: String + """A list of teams that this review was made on behalf of.""" + onBehalfOf( + """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 number of custom email routings for the restored member.""" - restoredCustomEmailRoutingsCount: Int + """Returns the last _n_ elements from the list.""" + last: Int + ): TeamConnection! - """The number of issue assignemnts for the restored member.""" - restoredIssueAssignmentsCount: Int + """Identifies when the comment was published at.""" + publishedAt: DateTime - """Restored organization membership objects.""" - restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] + """Identifies the pull request associated with this pull request review.""" + pullRequest: PullRequest! - """The number of restored memberships.""" - restoredMembershipsCount: Int + """A list of reactions grouped by content left on the subject.""" + reactionGroups: [ReactionGroup!] - """The number of repositories of the restored member.""" - restoredRepositoriesCount: Int + """A list of Reactions left on the Issue.""" + reactions( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The number of starred repositories for the restored member.""" - restoredRepositoryStarsCount: Int + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The number of watched repositories for the restored member.""" - restoredRepositoryWatchesCount: Int + """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 Reactions by emoji.""" + content: ReactionContent - """The HTTP path for the user.""" - userResourcePath: URI + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! - """The HTTP URL for the user.""" - userUrl: URI -} + """The repository associated with this node.""" + repository: Repository! -"""Types of memberships that can be restored for an Organization member.""" -union OrgRestoreMemberAuditEntryMembership = OrgRestoreMemberMembershipOrganizationAuditEntryData | OrgRestoreMemberMembershipRepositoryAuditEntryData | OrgRestoreMemberMembershipTeamAuditEntryData + """The HTTP path permalink for this PullRequestReview.""" + resourcePath: URI! -"""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 current state of the pull request review.""" + state: PullRequestReviewState! - """The name of the Organization.""" - organizationName: String + """Identifies when the Pull Request Review was submitted""" + submittedAt: DateTime - """The HTTP path for the organization""" - organizationResourcePath: URI + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """The HTTP URL for the organization""" - organizationUrl: URI -} + """The HTTP URL permalink for this PullRequestReview.""" + url: URI! -"""Metadata for a repository membership for org.restore_member actions""" -type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { - """The repository associated with the action""" - repository: Repository + """A list of edits to this content.""" + userContentEdits( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The name of the repository""" - repositoryName: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP URL for the repository""" - repositoryUrl: URI -} + """Returns the last _n_ elements from the list.""" + last: Int + ): UserContentEditConnection -"""Metadata for a team membership for org.restore_member actions""" -type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { - """The team associated with the action""" - team: Team + """Check if the current viewer can delete this object.""" + viewerCanDelete: Boolean! - """The name of the team""" - teamName: String + """Can user react to this subject""" + viewerCanReact: Boolean! - """The HTTP path for this team""" - teamResourcePath: URI + """Check if the current viewer can update this object.""" + viewerCanUpdate: Boolean! - """The HTTP URL for this team""" - teamUrl: URI + """Reasons why the current viewer can not update this comment.""" + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """Did the viewer author this comment.""" + viewerDidAuthor: Boolean! } -"""Audit log entry for a org.unblock_user""" -type OrgUnblockUserAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""A review comment associated with a given repository pull request.""" +type PullRequestReviewComment implements Node & Comment & Deletable & Minimizable & Updatable & UpdatableComment & Reactable & RepositoryNode { + """The actor who authored the comment.""" + author: Actor - """The user who initiated the action""" - actor: AuditEntryActor + """Author's association with the subject of the comment.""" + authorAssociation: CommentAuthorAssociation! - """The IP address of the actor""" - actorIp: String + """The comment body of this review comment.""" + body: String! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The body rendered to HTML.""" + bodyHTML: HTML! - """The username of the user who initiated the action""" - actorLogin: String + """The comment body of this review comment rendered as plain text.""" + bodyText: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """Identifies the commit associated with the comment.""" + commit: Commit - """The HTTP URL for the actor.""" - actorUrl: URI + """Identifies when the comment was created.""" + createdAt: DateTime! - """The user being unblocked by the organization.""" - blockedUser: User + """Check if this comment was created via an email reply.""" + createdViaEmail: Boolean! - """The username of the blocked user.""" - blockedUserName: String + """Identifies the primary key from the database.""" + databaseId: Int - """The HTTP path for the blocked user.""" - blockedUserResourcePath: URI + """The diff hunk to which the comment applies.""" + diffHunk: String! - """The HTTP URL for the blocked user.""" - blockedUserUrl: URI + """Identifies when the comment was created in a draft state.""" + draftedAt: DateTime! - """The time the action was initiated""" - createdAt: PreciseDateTime! + """The actor who edited the comment.""" + editor: Actor id: ID! - """The corresponding operation type for the action""" - operationType: OperationType + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Returns whether or not a comment has been minimized.""" + isMinimized: Boolean! - """The name of the Organization.""" - organizationName: String + """The moment the editor made the last edit""" + lastEditedAt: DateTime - """The HTTP path for the organization""" - organizationResourcePath: URI + """The end line number on the file to which the comment applies""" + line: Int - """The HTTP URL for the organization""" - organizationUrl: URI + """ + 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 - """The user affected by the action""" - user: User + """Identifies the original commit associated with the comment.""" + originalCommit: Commit """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The end line number on the file to which the comment applied when it was first created """ - userLogin: String + originalLine: Int - """The HTTP path for the user.""" - userResourcePath: URI + """ + The start line number on the file to which the comment applied when it was first created + """ + originalStartLine: Int - """The HTTP URL for the user.""" - userUrl: URI -} + """Identifies when the comment body is outdated""" + outdated: Boolean! -"""Audit log entry for a org.update_default_repository_permission""" -type OrgUpdateDefaultRepositoryPermissionAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! + """The path to which the comment applies.""" + path: String! - """The user who initiated the action""" - actor: AuditEntryActor + """Identifies when the comment was published at.""" + publishedAt: DateTime - """The IP address of the actor""" - actorIp: String + """The pull request associated with this review comment.""" + pullRequest: PullRequest! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The pull request review associated with this review comment.""" + pullRequestReview: PullRequestReview - """The username of the user who initiated the action""" - actorLogin: String + """A list of reactions grouped by content left on the subject.""" + reactionGroups: [ReactionGroup!] - """The HTTP path for the actor.""" - actorResourcePath: URI + """A list of Reactions left on the Issue.""" + reactions( + """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 + """Allows filtering Reactions by emoji.""" + content: ReactionContent - """The name of the Organization.""" - organizationName: String + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The comment this is a reply to.""" + replyTo: PullRequestReviewComment - """The HTTP URL for the organization""" - organizationUrl: URI + """The repository associated with this node.""" + repository: Repository! - """The new default repository permission level for the organization.""" - permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + """The HTTP path permalink for this review comment.""" + resourcePath: URI! - """The former default repository permission level for the organization.""" - permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + """The start line number on the file to which the comment applies""" + startLine: Int - """The user affected by the action""" - user: User + """Identifies the state of the comment.""" + state: PullRequestReviewCommentState! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file """ - userLogin: String + subjectType: PullRequestReviewThreadSubjectType! - """The HTTP path for the user.""" - userResourcePath: URI + """Identifies when the comment was last updated.""" + updatedAt: DateTime! - """The HTTP URL for the user.""" - userUrl: URI -} + """The HTTP URL permalink for this review comment.""" + url: URI! -"""The default permission a repository can have in an Organization.""" -enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { - """Can read and clone repositories.""" - READ + """A list of edits to this content.""" + userContentEdits( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Can read, clone and push to repositories.""" - WRITE + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Can read, clone, push, and add collaborators to repositories.""" - ADMIN + """Returns the first _n_ elements from the list.""" + first: Int - """No default permission value.""" - NONE + """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! } -"""Audit log entry for a org.update_member event.""" -type OrgUpdateMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""The connection type for PullRequestReviewComment.""" +type PullRequestReviewCommentConnection { + """A list of edges.""" + edges: [PullRequestReviewCommentEdge] - """The user who initiated the action""" - actor: AuditEntryActor + """A list of nodes.""" + nodes: [PullRequestReviewComment] - """The IP address of the actor""" - actorIp: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The username of the user who initiated the action""" - actorLogin: String +"""An edge in a connection.""" +type PullRequestReviewCommentEdge { + """A cursor for use in pagination.""" + cursor: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The item at the end of the edge.""" + node: PullRequestReviewComment +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""The possible states of a pull request review comment.""" +enum PullRequestReviewCommentState { + """A comment that is part of a pending review""" + PENDING - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """A comment that is part of a submitted review""" + SUBMITTED +} - """The corresponding operation type for the action""" - operationType: OperationType +"""The connection type for PullRequestReview.""" +type PullRequestReviewConnection { + """A list of edges.""" + edges: [PullRequestReviewEdge] - """The Organization associated with the Audit Entry.""" - organization: Organization + """A list of nodes.""" + nodes: [PullRequestReview] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The name of the Organization.""" - organizationName: String +""" +This aggregates pull request reviews made by a user within one repository. +""" +type PullRequestReviewContributionsByRepository { + """The pull request review contributions.""" + contributions( + """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 new member permission level for the organization.""" - permission: OrgUpdateMemberAuditEntryPermission + """Returns the last _n_ elements from the list.""" + last: Int - """The former member permission level for the organization.""" - permissionWas: OrgUpdateMemberAuditEntryPermission + """Ordering options for contributions returned from the connection.""" + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestReviewContributionConnection! - """The user affected by the action""" - user: User + """The repository in which the pull request reviews were made.""" + repository: Repository! +} - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String +"""The review status of a pull request.""" +enum PullRequestReviewDecision { + """Changes have been requested on the pull request.""" + CHANGES_REQUESTED - """The HTTP path for the user.""" - userResourcePath: URI + """The pull request has received an approving review.""" + APPROVED - """The HTTP URL for the user.""" - userUrl: URI + """A review is required before the pull request can be merged.""" + REVIEW_REQUIRED } -"""The permissions available to members on an Organization.""" -enum OrgUpdateMemberAuditEntryPermission { - """Can read and clone repositories.""" - READ +"""An edge in a connection.""" +type PullRequestReviewEdge { + """A cursor for use in pagination.""" + cursor: String! - """Can read, clone, push, and add collaborators to repositories.""" - ADMIN + """The item at the end of the edge.""" + node: PullRequestReview } -""" -Audit log entry for a org.update_member_repository_creation_permission event. -""" -type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData { - """The action name""" - action: String! +"""The possible events to perform on a pull request review.""" +enum PullRequestReviewEvent { + """Submit general feedback without explicit approval.""" + COMMENT - """The user who initiated the action""" - actor: AuditEntryActor + """Submit feedback and approve merging these changes.""" + APPROVE - """The IP address of the actor""" - actorIp: String + """Submit feedback that must be addressed before merging.""" + REQUEST_CHANGES - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Dismiss review so it now longer effects merging.""" + DISMISS +} - """The username of the user who initiated the action""" - actorLogin: String +"""The possible states of a pull request review.""" +enum PullRequestReviewState { + """A review that has not yet been submitted.""" + PENDING - """The HTTP path for the actor.""" - actorResourcePath: URI + """An informational review.""" + COMMENTED - """The HTTP URL for the actor.""" - actorUrl: URI + """A review allowing the pull request to merge.""" + APPROVED - """Can members create repositories in the organization.""" - canCreateRepositories: Boolean + """A review blocking the pull request from merging.""" + CHANGES_REQUESTED - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """A review that has been dismissed.""" + DISMISSED +} - """The corresponding operation type for the action""" - operationType: OperationType +"""A threaded list of comments for a given pull request.""" +type PullRequestReviewThread implements Node { + """A list of pull request comments associated with the thread.""" + comments( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the Organization.""" - organizationName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the organization""" - organizationUrl: URI + """Skips the first _n_ elements in the list.""" + skip: Int + ): PullRequestReviewCommentConnection! - """The user affected by the action""" - user: User + """The side of the diff on which this thread was placed.""" + diffSide: DiffSide! + id: ID! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Whether or not the thread has been collapsed (resolved)""" + isCollapsed: Boolean! - """The HTTP path for the user.""" - userResourcePath: URI + """Indicates whether this thread was outdated by newer changes.""" + isOutdated: Boolean! - """The HTTP URL for the user.""" - userUrl: URI + """Whether this thread has been resolved""" + isResolved: Boolean! - """ - The permission for visibility level of repositories for this organization. - """ - visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility -} + """The line in the file to which this thread refers""" + line: Int -"""The permissions available for repository creation on an Organization.""" -enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { - """ - All organization members are restricted from creating any repositories. - """ - ALL + """The original line in the file to which this thread refers.""" + originalLine: Int """ - All organization members are restricted from creating public repositories. + The original start line in the file to which this thread refers (multi-line only). """ - PUBLIC + originalStartLine: Int - """All organization members are allowed to create any repositories.""" - NONE + """Identifies the file path of this thread.""" + path: String! - """ - All organization members are restricted from creating private repositories. - """ - PRIVATE + """Identifies the pull request associated with this thread.""" + pullRequest: PullRequest! - """ - All organization members are restricted from creating internal repositories. - """ - INTERNAL + """Identifies the repository associated with this thread.""" + repository: Repository! - """ - All organization members are restricted from creating public or internal repositories. - """ - PUBLIC_INTERNAL + """The user who resolved this thread""" + resolvedBy: User """ - All organization members are restricted from creating private or internal repositories. + The side of the diff that the first line of the thread starts on (multi-line only) """ - PRIVATE_INTERNAL + startDiffSide: DiffSide """ - All organization members are restricted from creating public or private repositories. + The start line in the file to which this thread refers (multi-line only) """ - PUBLIC_PRIVATE -} - -""" -Audit log entry for a org.update_member_repository_invitation_permission event. -""" -type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements Node & AuditEntry & 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 + startLine: Int """ - Can outside collaborators be invited to repositories in the organization. + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file """ - canInviteOutsideCollaboratorsToRepositories: Boolean + subjectType: PullRequestReviewThreadSubjectType! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Indicates whether the current viewer can reply to this thread.""" + viewerCanReply: Boolean! - """The corresponding operation type for the action""" - operationType: OperationType + """Whether or not the viewer can resolve this thread""" + viewerCanResolve: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Whether or not the viewer can unresolve this thread""" + viewerCanUnresolve: Boolean! +} - """The name of the Organization.""" - organizationName: String +"""Review comment threads for a pull request review.""" +type PullRequestReviewThreadConnection { + """A list of edges.""" + edges: [PullRequestReviewThreadEdge] + + """A list of nodes.""" + nodes: [PullRequestReviewThread] - """The HTTP path for the organization""" - organizationResourcePath: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The user affected by the action""" - user: User +"""An edge in a connection.""" +type PullRequestReviewThreadEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """The item at the end of the edge.""" + node: PullRequestReviewThread +} - """The HTTP path for the user.""" - userResourcePath: URI +"""The possible subject types of a pull request review comment.""" +enum PullRequestReviewThreadSubjectType { + """A comment that has been made against the line of a pull request""" + LINE - """The HTTP URL for the user.""" - userUrl: URI + """A comment that has been made against the file of a pull request""" + FILE } -"""Information for an uploaded package.""" -type Package implements Node { - id: ID! +""" +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.""" + createdAt: DateTime! - """Find the latest version for the package.""" - latestVersion: PackageVersion + """The last commit the viewer has seen.""" + lastSeenCommit: Commit! - """Identifies the name of the package.""" - name: String! + """The pull request to which the marker belongs.""" + pullRequest: PullRequest! +} - """Identifies the type of the package.""" - packageType: PackageType! +"""The possible states of a pull request.""" +enum PullRequestState { + """A pull request that is still open.""" + OPEN - """The repository this package belongs to.""" - repository: Repository + """A pull request that has been closed without being merged.""" + CLOSED - """Statistics about package activity.""" - statistics: PackageStatistics + """A pull request that has been closed by being merged.""" + MERGED +} - """Find package version by version string.""" - version( - """The package version.""" - version: String! - ): PackageVersion +"""A repository pull request template.""" +type PullRequestTemplate { + """The body of the template""" + body: String - """list of versions for this package""" - versions( - """Ordering of the returned packages.""" - orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} + """The filename of the template""" + filename: String + + """The repository the template belongs to""" + repository: Repository! +} +"""A threaded list of comments for a given pull request.""" +type PullRequestThread implements Node { + """A list of pull request comments associated with the thread.""" + comments( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -12505,69 +22706,61 @@ type Package implements Node { """Returns the last _n_ elements from the list.""" last: Int - ): PackageVersionConnection! -} - -"""The connection type for Package.""" -type PackageConnection { - """A list of edges.""" - edges: [PackageEdge] - """A list of nodes.""" - nodes: [Package] + """Skips the first _n_ elements in the list.""" + skip: Int + ): PullRequestReviewCommentConnection! - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The side of the diff on which this thread was placed.""" + diffSide: DiffSide! + id: ID! - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Whether or not the thread has been collapsed (resolved)""" + isCollapsed: Boolean! -"""An edge in a connection.""" -type PackageEdge { - """A cursor for use in pagination.""" - cursor: String! + """Indicates whether this thread was outdated by newer changes.""" + isOutdated: Boolean! - """The item at the end of the edge.""" - node: Package -} + """Whether this thread has been resolved""" + isResolved: Boolean! -"""A file in a package version.""" -type PackageFile implements Node { - id: ID! + """The line in the file to which this thread refers""" + line: Int - """MD5 hash of the file.""" - md5: String + """Identifies the pull request associated with this thread.""" + pullRequest: PullRequest! - """Name of the file.""" - name: String! + """Identifies the repository associated with this thread.""" + repository: Repository! - """The package version this file belongs to.""" - packageVersion: PackageVersion + """The user who resolved this thread""" + resolvedBy: User - """SHA1 hash of the file.""" - sha1: String + """ + The side of the diff that the first line of the thread starts on (multi-line only) + """ + startDiffSide: DiffSide - """SHA256 hash of the file.""" - sha256: String + """The line of the first file diff in the thread.""" + startLine: Int - """Size of the file in bytes.""" - size: Int + """Indicates whether the current viewer can reply to this thread.""" + viewerCanReply: Boolean! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """Whether or not the viewer can resolve this thread""" + viewerCanResolve: Boolean! - """URL to download the asset.""" - url: URI + """Whether or not the viewer can unresolve this thread""" + viewerCanUnresolve: Boolean! } -"""The connection type for PackageFile.""" -type PackageFileConnection { +"""The connection type for PullRequestTimelineItem.""" +type PullRequestTimelineConnection { """A list of edges.""" - edges: [PackageFileEdge] + edges: [PullRequestTimelineItemEdge] """A list of nodes.""" - nodes: [PackageFile] + nodes: [PullRequestTimelineItem] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -12576,489 +22769,529 @@ type PackageFileConnection { totalCount: 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 + """An edge in a connection.""" -type PackageFileEdge { +type PullRequestTimelineItemEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: PackageFile -} - -"""Ways in which lists of package files can be ordered upon return.""" -input PackageFileOrder { - """The field in which to order package files by.""" - field: PackageFileOrderField - - """The direction in which to order package files by the specified field.""" - direction: OrderDirection -} - -"""Properties by which package file connections can be ordered.""" -enum PackageFileOrderField { - """Order package files by creation time""" - CREATED_AT -} - -"""Ways in which lists of packages can be ordered upon return.""" -input PackageOrder { - """The field in which to order packages by.""" - field: PackageOrderField - - """The direction in which to order packages by the specified field.""" - direction: OrderDirection -} - -"""Properties by which package connections can be ordered.""" -enum PackageOrderField { - """Order packages by creation time""" - CREATED_AT + node: PullRequestTimelineItem } -"""Represents an owner of a package.""" -interface PackageOwner { - id: ID! - - """A list of packages under the owner.""" - packages( - """Returns the elements in the list that come after the specified cursor.""" - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""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 - """Returns the first _n_ elements from the list.""" - first: Int +"""The connection type for PullRequestTimelineItems.""" +type PullRequestTimelineItemsConnection { + """A list of edges.""" + edges: [PullRequestTimelineItemsEdge] - """Returns the last _n_ elements from the list.""" - last: Int + """ + Identifies the count of items after applying `before` and `after` filters. + """ + filteredCount: Int! - """Find packages by their names.""" - names: [String] + """A list of nodes.""" + nodes: [PullRequestTimelineItems] - """Find packages in a repository by ID.""" - repositoryId: ID + """ + Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + """ + pageCount: Int! - """Filter registry package by type.""" - packageType: PackageType + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Ordering of the returned packages.""" - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} - ): PackageConnection! -} + """Identifies the total count of items in the connection.""" + totalCount: Int! -""" -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! + """Identifies the date and time when the timeline was last updated.""" + updatedAt: DateTime! } -"""A version tag contains the mapping between a tag name and a version.""" -type PackageTag implements Node { - id: ID! - - """Identifies the tag name of the version.""" - name: String! +"""An edge in a connection.""" +type PullRequestTimelineItemsEdge { + """A cursor for use in pagination.""" + cursor: String! - """Version that the tag is associated with.""" - version: PackageVersion + """The item at the end of the edge.""" + node: PullRequestTimelineItems } -"""The possible types of a package.""" -enum PackageType { - """An npm package.""" - NPM +"""The possible item types found in a timeline.""" +enum PullRequestTimelineItemsItemType { + """Represents a Git commit part of a pull request.""" + PULL_REQUEST_COMMIT - """A rubygems package.""" - RUBYGEMS + """Represents a commit comment thread part of a pull request.""" + PULL_REQUEST_COMMIT_COMMENT_THREAD - """A maven package.""" - MAVEN + """A review object for a given pull request.""" + PULL_REQUEST_REVIEW - """A docker image.""" - DOCKER + """A threaded list of comments for a given pull request.""" + PULL_REQUEST_REVIEW_THREAD - """A debian package.""" - DEBIAN + """ + Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. + """ + PULL_REQUEST_REVISION_MARKER - """A nuget package.""" - NUGET + """ + Represents a 'automatic_base_change_failed' event on a given pull request. + """ + AUTOMATIC_BASE_CHANGE_FAILED_EVENT - """A python package.""" - PYPI -} + """ + Represents a 'automatic_base_change_succeeded' event on a given pull request. + """ + AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT -"""Information about a specific package version.""" -type PackageVersion implements Node { - """List of files associated with this package version""" - files( - """Ordering of the returned package files.""" - orderBy: PackageFileOrder = {field: CREATED_AT, direction: ASC} + """Represents a 'auto_merge_disabled' event on a given pull request.""" + AUTO_MERGE_DISABLED_EVENT - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Represents a 'auto_merge_enabled' event on a given pull request.""" + AUTO_MERGE_ENABLED_EVENT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Represents a 'auto_rebase_enabled' event on a given pull request.""" + AUTO_REBASE_ENABLED_EVENT - """Returns the first _n_ elements from the list.""" - first: Int + """Represents a 'auto_squash_enabled' event on a given pull request.""" + AUTO_SQUASH_ENABLED_EVENT - """Returns the last _n_ elements from the list.""" - last: Int - ): PackageFileConnection! - id: ID! + """ + Represents a 'base_ref_changed' event on a given issue or pull request. + """ + BASE_REF_CHANGED_EVENT - """The package associated with this version.""" - package: Package + """Represents a 'base_ref_force_pushed' event on a given pull request.""" + BASE_REF_FORCE_PUSHED_EVENT - """The platform this version was built for.""" - platform: String + """Represents a 'base_ref_deleted' event on a given pull request.""" + BASE_REF_DELETED_EVENT - """Whether or not this version is a pre-release.""" - preRelease: Boolean! + """Represents a 'deployed' event on a given pull request.""" + DEPLOYED_EVENT - """The README of this package version.""" - readme: String + """ + Represents a 'deployment_environment_changed' event on a given pull request. + """ + DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT - """The release associated with this package version.""" - release: Release + """Represents a 'head_ref_deleted' event on a given pull request.""" + HEAD_REF_DELETED_EVENT - """Statistics about package activity.""" - statistics: PackageVersionStatistics + """Represents a 'head_ref_force_pushed' event on a given pull request.""" + HEAD_REF_FORCE_PUSHED_EVENT - """The package version summary.""" - summary: String + """Represents a 'head_ref_restored' event on a given pull request.""" + HEAD_REF_RESTORED_EVENT - """The version string.""" - version: String! -} + """Represents a 'merged' event on a given pull request.""" + MERGED_EVENT -"""The connection type for PackageVersion.""" -type PackageVersionConnection { - """A list of edges.""" - edges: [PackageVersionEdge] + """ + Represents a 'review_dismissed' event on a given issue or pull request. + """ + REVIEW_DISMISSED_EVENT - """A list of nodes.""" - nodes: [PackageVersion] + """Represents an 'review_requested' event on a given pull request.""" + REVIEW_REQUESTED_EVENT - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Represents an 'review_request_removed' event on a given pull request.""" + REVIEW_REQUEST_REMOVED_EVENT - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Represents a 'ready_for_review' event on a given pull request.""" + READY_FOR_REVIEW_EVENT -"""An edge in a connection.""" -type PackageVersionEdge { - """A cursor for use in pagination.""" - cursor: String! + """Represents a 'convert_to_draft' event on a given pull request.""" + CONVERT_TO_DRAFT_EVENT - """The item at the end of the edge.""" - node: PackageVersion -} + """Represents an 'added_to_merge_queue' event on a given pull request.""" + ADDED_TO_MERGE_QUEUE_EVENT -"""Ways in which lists of package versions can be ordered upon return.""" -input PackageVersionOrder { - """The field in which to order package versions by.""" - field: PackageVersionOrderField + """Represents a 'removed_from_merge_queue' event on a given pull request.""" + REMOVED_FROM_MERGE_QUEUE_EVENT + + """Represents a comment on an Issue.""" + ISSUE_COMMENT + + """Represents a mention made by one issue or pull request to another.""" + CROSS_REFERENCED_EVENT """ - The direction in which to order package versions by the specified field. + Represents a 'added_to_project' event on a given issue or pull request. """ - direction: OrderDirection -} + ADDED_TO_PROJECT_EVENT -"""Properties by which package version connections can be ordered.""" -enum PackageVersionOrderField { - """Order package versions by creation time""" - CREATED_AT -} + """Represents an 'assigned' event on any assignable object.""" + ASSIGNED_EVENT -""" -Represents a object that contains package version activity statistics such as downloads. -""" -type PackageVersionStatistics { - """Number of times the package was downloaded since it was created.""" - downloadsTotalCount: Int! -} + """Represents a 'closed' event on any `Closable`.""" + CLOSED_EVENT -"""Information about pagination in a connection.""" -type PageInfo { - """When paginating forwards, the cursor to continue.""" - endCursor: String + """Represents a 'comment_deleted' event on a given issue or pull request.""" + COMMENT_DELETED_EVENT - """When paginating forwards, are there more items?""" - hasNextPage: Boolean! + """Represents a 'connected' event on a given issue or pull request.""" + CONNECTED_EVENT - """When paginating backwards, are there more items?""" - hasPreviousPage: Boolean! + """ + Represents a 'converted_note_to_issue' event on a given issue or pull request. + """ + CONVERTED_NOTE_TO_ISSUE_EVENT - """When paginating backwards, the cursor to continue.""" - startCursor: String -} + """Represents a 'converted_to_discussion' event on a given issue.""" + CONVERTED_TO_DISCUSSION_EVENT -"""Types that can grant permissions on a repository to a user""" -union PermissionGranter = Organization | Repository | Team + """Represents a 'demilestoned' event on a given issue or pull request.""" + DEMILESTONED_EVENT -"""A level of permission and source for a user's access to a repository.""" -type PermissionSource { - """The organization the repository belongs to.""" - organization: Organization! + """Represents a 'disconnected' event on a given issue or pull request.""" + DISCONNECTED_EVENT - """The level of access this source has granted to the user.""" - permission: DefaultRepositoryPermissionField! + """Represents a 'labeled' event on a given issue or pull request.""" + LABELED_EVENT - """The source of this permission.""" - source: PermissionGranter! -} + """Represents a 'locked' event on a given issue or pull request.""" + LOCKED_EVENT -"""Types that can be pinned to a profile page.""" -union PinnableItem = Gist | Repository + """ + Represents a 'marked_as_duplicate' event on a given issue or pull request. + """ + MARKED_AS_DUPLICATE_EVENT -"""The connection type for PinnableItem.""" -type PinnableItemConnection { - """A list of edges.""" - edges: [PinnableItemEdge] + """Represents a 'mentioned' event on a given issue or pull request.""" + MENTIONED_EVENT - """A list of nodes.""" - nodes: [PinnableItem] + """Represents a 'milestoned' event on a given issue or pull request.""" + MILESTONED_EVENT - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + Represents a 'moved_columns_in_project' event on a given issue or pull request. + """ + MOVED_COLUMNS_IN_PROJECT_EVENT - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Represents a 'pinned' event on a given issue or pull request.""" + PINNED_EVENT -"""An edge in a connection.""" -type PinnableItemEdge { - """A cursor for use in pagination.""" - cursor: String! + """Represents a 'referenced' event on a given `ReferencedSubject`.""" + REFERENCED_EVENT - """The item at the end of the edge.""" - node: PinnableItem -} + """ + Represents a 'removed_from_project' event on a given issue or pull request. + """ + REMOVED_FROM_PROJECT_EVENT -"""Represents items that can be pinned to a profile page or dashboard.""" -enum PinnableItemType { - """A repository.""" - REPOSITORY + """Represents a 'renamed' event on a given issue or pull request""" + RENAMED_TITLE_EVENT - """A gist.""" - GIST + """Represents a 'reopened' event on any `Closable`.""" + REOPENED_EVENT - """An issue.""" - ISSUE + """Represents a 'subscribed' event on a given `Subscribable`.""" + SUBSCRIBED_EVENT - """A project.""" - PROJECT + """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 - """A pull request.""" - PULL_REQUEST + """Represents a 'user_blocked' event on a given user.""" + USER_BLOCKED_EVENT - """A user.""" - USER + """ + Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + """ + UNMARKED_AS_DUPLICATE_EVENT - """An organization.""" - ORGANIZATION + """Represents an 'unpinned' event on a given issue or pull request.""" + UNPINNED_EVENT - """A team.""" - TEAM + """Represents an 'unsubscribed' event on a given `Subscribable`.""" + UNSUBSCRIBED_EVENT } -"""Represents a 'pinned' event on a given issue or pull request.""" -type PinnedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor - - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! +"""The possible target states when updating a pull request.""" +enum PullRequestUpdateState { + """A pull request that is still open.""" + OPEN - """Identifies the issue associated with the event.""" - issue: Issue! + """A pull request that has been closed without being merged.""" + CLOSED } -"""An ISO-8601 encoded UTC date string with millisecond precison.""" -scalar PreciseDateTime +"""A Git push.""" +type Push implements Node { + id: ID! -"""Audit log entry for a private_repository_forking.disable event.""" -type PrivateRepositoryForkingDisableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! + """The SHA after the push""" + nextSha: GitObjectID - """The user who initiated the action""" - actor: AuditEntryActor + """The permalink for this push.""" + permalink: URI! - """The IP address of the actor""" - actorIp: String + """The SHA before the push""" + previousSha: GitObjectID - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The actor who pushed""" + pusher: Actor! - """The username of the user who initiated the action""" - actorLogin: String + """The repository that was pushed to""" + repository: Repository! +} - """The HTTP path for the actor.""" - actorResourcePath: URI +""" +A team, user, or app who has the ability to push to a protected branch. +""" +type PushAllowance implements Node { + """The actor that can push.""" + actor: PushAllowanceActor - """The HTTP URL for the actor.""" - actorUrl: URI + """ + Identifies the branch protection rule associated with the allowed user, team, or app. + """ + branchProtectionRule: BranchProtectionRule + id: ID! +} - """The time the action was initiated""" - createdAt: PreciseDateTime! +"""Types that can be an actor.""" +union PushAllowanceActor = App | Team | User - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI +"""The connection type for PushAllowance.""" +type PushAllowanceConnection { + """A list of edges.""" + edges: [PushAllowanceEdge] - """The slug of the enterprise.""" - enterpriseSlug: String + """A list of nodes.""" + nodes: [PushAllowance] - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI - id: ID! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The corresponding operation type for the action""" - operationType: OperationType + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""An edge in a connection.""" +type PushAllowanceEdge { + """A cursor for use in pagination.""" + cursor: String! - """The name of the Organization.""" - organizationName: String + """The item at the end of the edge.""" + node: PushAllowance +} - """The HTTP path for the organization""" - organizationResourcePath: URI +"""The query root of GitHub's GraphQL interface.""" +type Query { + """Look up a code of conduct by its key""" + codeOfConduct( + """The code of conduct's key""" + key: String! + ): CodeOfConduct - """The HTTP URL for the organization""" - organizationUrl: URI + """Look up a code of conduct by its key""" + codesOfConduct: [CodeOfConduct] - """The repository associated with the action""" - repository: Repository + """Look up an enterprise by URL slug.""" + enterprise( + """The enterprise URL slug.""" + slug: String! - """The name of the repository""" - repositoryName: String + """The enterprise invitation token.""" + invitationToken: String + ): Enterprise - """The HTTP path for the repository""" - repositoryResourcePath: URI + """ + Look up a pending enterprise administrator invitation by invitee, enterprise and role. + """ + enterpriseAdministratorInvitation( + """The login of the user invited to join the business.""" + userLogin: String! - """The HTTP URL for the repository""" - repositoryUrl: URI + """The slug of the enterprise the user was invited to join.""" + enterpriseSlug: String! - """The user affected by the action""" - user: User + """The role for the business member invitation.""" + role: EnterpriseAdministratorRole! + ): EnterpriseAdministratorInvitation """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Look up a pending enterprise administrator invitation by invitation token. """ - userLogin: String + enterpriseAdministratorInvitationByToken( + """The invitation token sent with the invitation email.""" + invitationToken: String! + ): EnterpriseAdministratorInvitation - """The HTTP path for the user.""" - userResourcePath: URI + """Look up an open source license by its key""" + license( + """The license's downcased SPDX ID""" + key: String! + ): License - """The HTTP URL for the user.""" - userUrl: URI -} + """Return a list of known open source licenses""" + licenses: [License]! -"""Audit log entry for a private_repository_forking.enable event.""" -type PrivateRepositoryForkingEnableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! + """Get alphabetically sorted list of Marketplace categories""" + marketplaceCategories( + """Return only the specified categories.""" + includeCategories: [String!] - """The user who initiated the action""" - actor: AuditEntryActor + """Exclude categories with no listings.""" + excludeEmpty: Boolean - """The IP address of the actor""" - actorIp: String + """Returns top level categories only, excluding any subcategories.""" + excludeSubcategories: Boolean + ): [MarketplaceCategory!]! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Look up a Marketplace category by its slug.""" + marketplaceCategory( + """The URL slug of the category.""" + slug: String! - """The username of the user who initiated the action""" - actorLogin: String + """Also check topic aliases for the category slug""" + useTopicAliases: Boolean + ): MarketplaceCategory - """The HTTP path for the actor.""" - actorResourcePath: URI + """Look up a single Marketplace listing""" + marketplaceListing( + """ + Select the listing that matches this slug. It's the short name of the listing used in its URL. + """ + slug: String! + ): MarketplaceListing - """The HTTP URL for the actor.""" - actorUrl: URI + """Look up Marketplace listings""" + marketplaceListings( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The time the action was initiated""" - 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! + """Select only listings with the given category.""" + categorySlug: String - """The corresponding operation type for the action""" - operationType: OperationType + """Also check topic aliases for the category slug""" + useTopicAliases: Boolean - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Select listings to which user has admin access. If omitted, listings visible to the + viewer are returned. + + """ + viewerCanAdmin: Boolean + + """Select listings that can be administered by the specified user.""" + adminId: ID + + """Select listings for products owned by the specified organization.""" + organizationId: ID + + """ + Select listings visible to the viewer even if they are not approved. If omitted or + false, only approved listings will be returned. + + """ + allStates: Boolean - """The name of the Organization.""" - organizationName: String + """ + Select the listings with these slugs, if they are visible to the viewer. + """ + slugs: [String] - """The HTTP path for the organization""" - organizationResourcePath: URI + """ + Select only listings where the primary category matches the given category slug. + """ + primaryCategoryOnly: Boolean = false - """The HTTP URL for the organization""" - organizationUrl: URI + """Select only listings that offer a free trial.""" + withFreeTrialsOnly: Boolean = false + ): MarketplaceListingConnection! - """The repository associated with the action""" - repository: Repository + """Return information about the GitHub instance""" + meta: GitHubMetadata! - """The name of the repository""" - repositoryName: String + """Fetches an object given its ID.""" + node( + """ID of the object.""" + id: ID! + ): Node - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Lookup nodes by a list of IDs.""" + nodes( + """The list of node IDs.""" + ids: [ID!]! + ): [Node]! - """The HTTP URL for the repository""" - repositoryUrl: URI + """Lookup a organization by login.""" + organization( + """The organization's login.""" + login: String! + ): Organization - """The user affected by the action""" - user: User + """The client's rate limit information.""" + rateLimit( + """If true, calculate the cost for the query without evaluating it""" + dryRun: Boolean = false + ): RateLimit """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object """ - userLogin: String + relay: Query! - """The HTTP path for the user.""" - userResourcePath: URI + """Lookup a given repository by the owner and repository name.""" + repository( + """The login field of a user or organization""" + owner: String! - """The HTTP URL for the user.""" - userUrl: URI -} + """The name of the repository""" + name: String! -""" -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.""" - hasPinnedItems: Boolean! + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + ): Repository """ - 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. + Lookup a repository owner (ie. either a User or an Organization) by login. """ - items( + repositoryOwner( + """The username to lookup the owner by.""" + login: String! + ): RepositoryOwner + + """Lookup resource by a URL.""" + 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.""" after: String @@ -13072,44 +23305,30 @@ 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 search string to look for.""" + query: String! - """The public profile email.""" - email: String - id: ID! + """The types of search items to search within.""" + type: SearchType! + ): SearchResultItemConnection! - """ - 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! + """GitHub Security Advisories""" + securityAdvisories( + """Ordering options for the returned topics.""" + orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} - """The public profile location.""" - location: String + """Filter advisories by identifier, e.g. GHSA or CVE.""" + identifier: SecurityAdvisoryIdentifierFilter - """The username used to login.""" - login: String! + """Filter advisories to those published since a time in the past.""" + publishedSince: DateTime - """The public profile name.""" - name: String + """Filter advisories to those updated since a time in the past.""" + updatedSince: DateTime - """ - A list of repositories and gists this profile owner can pin to their profile. - """ - pinnableItems( - """Filter the types of pinnable items that are returned.""" - types: [PinnableItemType!] + """A list of classifications to filter advisories by.""" + classifications: [SecurityAdvisoryClassification!] """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13124,14 +23343,30 @@ interface ProfileOwner { """Returns the last _n_ elements from the list.""" last: Int - ): PinnableItemConnection! + ): SecurityAdvisoryConnection! - """ - A list of repositories and gists this profile owner has pinned to their profile - """ - pinnedItems( - """Filter the types of pinned items that are returned.""" - types: [PinnableItemType!] + """Fetch a Security Advisory by its GHSA ID""" + securityAdvisory( + """GitHub Security Advisory ID.""" + ghsaId: String! + ): SecurityAdvisory + + """Software Vulnerabilities documented by GitHub Security Advisories""" + securityVulnerabilities( + """Ordering options for the returned topics.""" + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + + """An ecosystem to filter vulnerabilities by.""" + ecosystem: SecurityAdvisoryEcosystem + + """A package name to filter vulnerabilities by.""" + package: String + + """A list of severities to filter vulnerabilities by.""" + severities: [SecurityAdvisorySeverity!] + + """A list of advisory classifications to filter vulnerabilities by.""" + classifications: [SecurityAdvisoryClassification!] """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13146,40 +23381,10 @@ interface ProfileOwner { """Returns the last _n_ elements from the list.""" last: Int - ): PinnableItemConnection! - - """ - Returns how many more items this profile owner can pin to their profile. - """ - pinnedItemsRemaining: Int! - - """Can the viewer pin repositories and gists to the profile?""" - viewerCanChangePinnedItems: Boolean! - - """The public profile website URL.""" - websiteUrl: URI -} - -""" -Projects manage issues, pull requests and notes within a project owner. -""" -type Project implements Node & Closable & Updatable { - """The project's description body.""" - body: String - - """The projects description body rendered to HTML.""" - bodyHTML: HTML! - - """ - `true` 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 + ): SecurityVulnerabilityConnection! - """List of columns in the project""" - columns( + """Users and organizations who can be sponsored via GitHub Sponsors.""" + sponsorables( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13193,31 +23398,100 @@ type Project implements Node & Closable & Updatable { """Returns the last _n_ elements from the list.""" last: Int - ): ProjectColumnConnection! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """ + Ordering options for users and organizations returned from the connection. + """ + orderBy: SponsorableOrder = {field: LOGIN, direction: ASC} + + """ + 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. + """ + onlyDependencies: Boolean = false + + """ + 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 + + """ + 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. + + """ + dependencyEcosystem: SecurityAdvisoryEcosystem + + """ + 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. + """ + ecosystem: DependencyGraphEcosystem + ): SponsorableItemConnection! + + """Look up a topic by name.""" + topic( + """The topic's name.""" + name: String! + ): Topic + + """Lookup a user by login.""" + user( + """The user's login.""" + login: String! + ): User + + """The currently authenticated user.""" + viewer: User! +} + +"""Represents the client's rate limit.""" +type RateLimit { + """The point cost for the current query counting against the rate limit.""" + cost: Int! + + """ + The maximum number of points the client is permitted to consume in a 60 minute window. + """ + limit: Int! + + """The maximum number of nodes this query may return""" + nodeCount: Int! + + """The number of points remaining in the current rate limit window.""" + remaining: Int! + + """ + The time at which the current rate limit window resets in UTC epoch seconds. + """ + resetAt: DateTime! - """The actor who originally created the project.""" - creator: Actor + """The number of points used in the current rate limit window.""" + used: Int! +} +"""Represents a subject that can be reacted on.""" +interface Reactable { """Identifies the primary key from the database.""" databaseId: Int id: ID! - """The project's name.""" - name: String! - - """The project's number.""" - number: Int! - - """ - The project's owner. Currently limited to repositories, organizations, and users. - """ - owner: ProjectOwner! + """A list of reactions grouped by content left on the subject.""" + reactionGroups: [ReactionGroup!] - """List of pending cards in this project""" - pendingCards( + """A list of Reactions left on the Issue.""" + reactions( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13232,127 +23506,129 @@ type Project implements Node & Closable & Updatable { """Returns the last _n_ elements from the list.""" last: Int - """A list of archived states to filter the cards by""" - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - ): ProjectCardConnection! + """Allows filtering Reactions by emoji.""" + content: ReactionContent - """Project progress details.""" - progress: ProjectProgress! + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! - """The HTTP path for this project""" - resourcePath: URI! + """Can user react to this subject""" + viewerCanReact: Boolean! +} - """Whether the project is open or closed.""" - state: ProjectState! +"""The connection type for User.""" +type ReactingUserConnection { + """A list of edges.""" + edges: [ReactingUserEdge] - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """A list of nodes.""" + nodes: [User] - """The HTTP URL for this project""" - url: URI! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""A card in a project.""" -type ProjectCard implements Node { - """ - 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. - - """ - column: ProjectColumn +"""Represents a user that's made a reaction.""" +type ReactingUserEdge { + """A cursor for use in pagination.""" + cursor: String! + node: User! - """The card content item""" - content: ProjectCardItem + """The moment when the user made the reaction.""" + reactedAt: DateTime! +} + +"""An emoji reaction to a particular piece of content.""" +type Reaction implements Node { + """Identifies the emoji reaction.""" + content: ReactionContent! """Identifies the date and time when the object was created.""" createdAt: DateTime! - """The actor who created this card""" - creator: Actor - """Identifies the primary key from the database.""" databaseId: Int id: ID! - """Whether the card is archived""" - isArchived: Boolean! + """The reactable piece of content""" + reactable: Reactable! - """The card note""" - note: String + """Identifies the user who created this reaction.""" + user: User +} - """The project that contains this card.""" - project: Project! +"""A list of reactions that have been left on the subject.""" +type ReactionConnection { + """A list of edges.""" + edges: [ReactionEdge] - """The HTTP path for this card""" - resourcePath: URI! + """A list of nodes.""" + nodes: [Reaction] - """The state of ProjectCard""" - state: ProjectCardState + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """Identifies the total count of items in the connection.""" + totalCount: Int! - """The HTTP URL for this card""" - url: URI! + """ + Whether or not the authenticated user has left a reaction on the subject. + """ + viewerHasReacted: Boolean! } -"""The possible archived states of a project card.""" -enum ProjectCardArchivedState { - """A project card that is archived""" - ARCHIVED +"""Emojis that can be attached to Issues, Pull Requests and Comments.""" +enum ReactionContent { + """Represents the `:+1:` emoji.""" + THUMBS_UP - """A project card that is not archived""" - NOT_ARCHIVED -} + """Represents the `:-1:` emoji.""" + THUMBS_DOWN -"""The connection type for ProjectCard.""" -type ProjectCardConnection { - """A list of edges.""" - edges: [ProjectCardEdge] + """Represents the `:laugh:` emoji.""" + LAUGH - """A list of nodes.""" - nodes: [ProjectCard] + """Represents the `:hooray:` emoji.""" + HOORAY - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Represents the `:confused:` emoji.""" + CONFUSED - """Identifies the total count of items in the connection.""" - totalCount: Int! + """Represents the `:heart:` emoji.""" + HEART + + """Represents the `:rocket:` emoji.""" + ROCKET + + """Represents the `:eyes:` emoji.""" + EYES } """An edge in a connection.""" -type ProjectCardEdge { +type ReactionEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: ProjectCard + node: Reaction } -"""Types that can be inside Project Cards.""" -union ProjectCardItem = Issue | PullRequest - -"""Various content states of a ProjectCard""" -enum ProjectCardState { - """The card has content only.""" - CONTENT_ONLY - - """The card has a note only.""" - NOTE_ONLY +"""A group of emoji reactions to a particular piece of content.""" +type ReactionGroup { + """Identifies the emoji reaction.""" + content: ReactionContent! - """The card is redacted.""" - REDACTED -} + """Identifies when the reaction was created.""" + createdAt: DateTime -"""A column inside a project.""" -type ProjectColumn implements Node { - """List of cards in the column""" - cards( + """ + Reactors to the reaction subject with the emotion represented by this reaction group. + """ + reactors( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13366,80 +23642,42 @@ type ProjectColumn implements Node { """Returns the last _n_ elements from the list.""" last: Int + ): ReactorConnection! - """A list of archived states to filter the cards by""" - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - ): ProjectCardConnection! - - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - - """Identifies the primary key from the database.""" - databaseId: Int - id: ID! - - """The project column's name.""" - name: String! - - """The project that contains this column.""" - project: Project! - - """The semantic purpose of the column""" - purpose: ProjectColumnPurpose - - """The HTTP path for this project column""" - resourcePath: URI! - - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! - - """The HTTP URL for this project column""" - url: URI! -} - -"""The connection type for ProjectColumn.""" -type ProjectColumnConnection { - """A list of edges.""" - edges: [ProjectColumnEdge] - - """A list of nodes.""" - nodes: [ProjectColumn] - - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The subject that was reacted to.""" + subject: Reactable! - """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.""" -type ProjectColumnEdge { - """A cursor for use in pagination.""" - cursor: String! +"""Ways in which lists of reactions can be ordered upon return.""" +input ReactionOrder { + """The field in which to order reactions by.""" + field: ReactionOrderField! - """The item at the end of the edge.""" - node: ProjectColumn + """The direction in which to order reactions by the specified field.""" + direction: OrderDirection! } -"""The semantic purpose of the column - todo, in progress, or done.""" -enum ProjectColumnPurpose { - """The column contains cards still to be worked on""" - TODO - - """The column contains cards which are currently being worked on""" - IN_PROGRESS - - """The column contains cards which are complete""" - DONE +"""A list of fields that reactions can be ordered by.""" +enum ReactionOrderField { + """Allows ordering a list of reactions by when they were created.""" + CREATED_AT } -"""A list of projects associated with the owner.""" -type ProjectConnection { +"""Types that can be assigned to reactions.""" +union Reactor = Bot | Mannequin | Organization | User + +"""The connection type for Reactor.""" +type ReactorConnection { """A list of edges.""" - edges: [ProjectEdge] + edges: [ReactorEdge] """A list of nodes.""" - nodes: [Project] + nodes: [Reactor] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -13448,56 +23686,55 @@ type ProjectConnection { totalCount: Int! } -"""An edge in a connection.""" -type ProjectEdge { +"""Represents an author of a reaction.""" +type ReactorEdge { """A cursor for use in pagination.""" cursor: String! - """The item at the end of the edge.""" - node: Project + """The author of the reaction.""" + node: Reactor! + + """The moment when the user made the reaction.""" + reactedAt: DateTime! } -"""Ways in which lists of projects can be ordered upon return.""" -input ProjectOrder { - """The field in which to order projects by.""" - field: ProjectOrderField! +"""Represents a 'ready_for_review' event on a given pull request.""" +type ReadyForReviewEvent implements Node & UniformResourceLocatable { + """Identifies the actor who performed the event.""" + actor: Actor - """The direction in which to order projects by the specified field.""" - direction: OrderDirection! -} + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + id: ID! -"""Properties by which project connections can be ordered.""" -enum ProjectOrderField { - """Order projects by creation time""" - CREATED_AT + """PullRequest referenced by event.""" + pullRequest: PullRequest! - """Order projects by update time""" - UPDATED_AT + """The HTTP path for this ready for review event.""" + resourcePath: URI! - """Order projects by name""" - NAME + """The HTTP URL for this ready for review event.""" + url: URI! } -"""Represents an owner of a Project.""" -interface ProjectOwner { - id: ID! +"""Represents a Git reference.""" +type Ref implements Node { + """A list of pull requests with this ref as the head ref.""" + associatedPullRequests( + """A list of states to filter the pull requests by.""" + states: [PullRequestState!] - """Find project by number.""" - project( - """The project number to find.""" - number: Int! - ): Project + """A list of label names to filter the pull requests by.""" + labels: [String!] - """A list of projects under the owner.""" - projects( - """Ordering options for projects returned from the connection""" - orderBy: ProjectOrder + """The head ref name to filter the pull requests by.""" + headRefName: String - """Query to search projects by, currently only searching by name.""" - search: String + """The base ref name to filter the pull requests by.""" + baseRefName: String - """A list of states to filter the projects by.""" - states: [ProjectState!] + """Ordering options for pull requests returned from the connection.""" + orderBy: IssueOrder """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13512,207 +23749,274 @@ interface ProjectOwner { """Returns the last _n_ elements from the list.""" last: Int - ): ProjectConnection! + ): PullRequestConnection! - """The HTTP path listing owners projects""" - projectsResourcePath: URI! + """Branch protection rules for this ref""" + branchProtectionRule: BranchProtectionRule - """The HTTP URL listing owners projects""" - projectsUrl: URI! + """ + Compares the current ref as a base ref to another head ref, if the comparison can be made. + """ + compare( + """The head ref to compare against.""" + headRef: String! + ): Comparison + id: ID! - """Can the current viewer create new projects on this owner.""" - viewerCanCreateProjects: Boolean! -} + """The ref name.""" + name: String! -"""Project progress stats.""" -type ProjectProgress { - """The number of done cards.""" - doneCount: Int! + """The ref's prefix, such as `refs/heads/` or `refs/tags/`.""" + prefix: String! - """The percentage of done cards.""" - donePercentage: Float! + """Branch protection rules that are viewable by non-admins""" + refUpdateRule: RefUpdateRule - """ - Whether progress tracking is enabled and cards with purpose exist for this project - """ - enabled: Boolean! + """The repository the ref belongs to.""" + repository: Repository! - """The number of in-progress cards.""" - inProgressCount: Int! + """The object the ref points to. Returns null when object does not exist.""" + target: GitObject +} - """The percentage of in-progress cards.""" - inProgressPercentage: Float! +"""The connection type for Ref.""" +type RefConnection { + """A list of edges.""" + edges: [RefEdge] - """The number of to do cards.""" - todoCount: Int! + """A list of nodes.""" + nodes: [Ref] - """The percentage of to do cards.""" - todoPercentage: Float! + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""State of the project; either 'open' or 'closed'""" -enum ProjectState { - """The project is open.""" - OPEN +"""An edge in a connection.""" +type RefEdge { + """A cursor for use in pagination.""" + cursor: String! - """The project is closed.""" - CLOSED + """The item at the end of the edge.""" + node: Ref } -"""GitHub-provided templates for Projects""" -enum ProjectTemplate { - """Create a board with columns for To do, In progress and Done.""" - BASIC_KANBAN +"""Represents a 'referenced' event on a given `ReferencedSubject`.""" +type ReferencedEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor + + """Identifies the commit associated with the 'referenced' event.""" + commit: Commit + + """Identifies the repository associated with the 'referenced' event.""" + commitRepository: Repository! + + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + id: ID! + + """Reference originated in a different repository.""" + isCrossRepository: Boolean! """ - Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. + Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. """ - AUTOMATED_KANBAN_V2 + isDirectReference: Boolean! + + """Object referenced by event.""" + subject: ReferencedSubject! +} + +"""Any referencable object""" +union ReferencedSubject = Issue | PullRequest +"""Parameters to be used for the ref_name condition""" +type RefNameConditionTarget { """ - Create a board with triggers to automatically move cards across columns with review automation. + Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. """ - AUTOMATED_REVIEWS_KANBAN + exclude: [String!]! """ - Create a board to triage and prioritize bugs with To do, priority, and Done columns. + 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. """ - BUG_TRIAGE + include: [String!]! } -"""A user's public key.""" -type PublicKey implements Node { +"""Parameters to be used for the ref_name condition""" +input RefNameConditionTargetInput { """ - The last time this authorization was used to perform an action. Values will be null for keys not owned by the user. + Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. """ - accessedAt: DateTime + exclude: [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. + 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. """ - createdAt: DateTime + include: [String!]! +} - """The fingerprint for this PublicKey.""" - fingerprint: String! - id: ID! +"""Ways in which lists of git refs can be ordered upon return.""" +input RefOrder { + """The field in which to order refs by.""" + field: RefOrderField! - """ - Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. - """ - isReadOnly: Boolean + """The direction in which to order refs by the specified field.""" + direction: OrderDirection! +} - """The public key string.""" - key: String! +"""Properties by which ref connections can be ordered.""" +enum RefOrderField { + """Order refs by underlying commit date if the ref prefix is refs/tags/""" + TAG_COMMIT_DATE + + """Order refs by their alphanumeric name""" + ALPHABETICAL +} + +"""A ref update rules for a viewer.""" +type RefUpdateRule { + """Can this branch be deleted.""" + allowsDeletions: Boolean! + + """Are force pushes allowed on this branch.""" + allowsForcePushes: Boolean! + + """Can matching branches be created.""" + blocksCreations: Boolean! + + """Identifies the protection rule pattern.""" + pattern: String! + + """Number of approving reviews required to update matching branches.""" + requiredApprovingReviewCount: Int """ - 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. + List of required status check contexts that must pass for commits to be accepted to matching branches. """ - updatedAt: DateTime -} + requiredStatusCheckContexts: [String] -"""The connection type for PublicKey.""" -type PublicKeyConnection { - """A list of edges.""" - edges: [PublicKeyEdge] + """Are reviews from code owners required to update matching branches.""" + requiresCodeOwnerReviews: Boolean! - """A list of nodes.""" - nodes: [PublicKey] + """Are conversations required to be resolved before merging.""" + requiresConversationResolution: Boolean! - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Are merge commits prohibited from being pushed to this branch.""" + requiresLinearHistory: Boolean! - """Identifies the total count of items in the connection.""" - totalCount: Int! + """Are commits required to be signed.""" + requiresSignatures: Boolean! + + """Is the viewer allowed to dismiss reviews.""" + viewerAllowedToDismissReviews: Boolean! + + """Can the viewer push to the branch""" + viewerCanPush: Boolean! } -"""An edge in a connection.""" -type PublicKeyEdge { - """A cursor for use in pagination.""" - cursor: String! +""" +Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes +""" +input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { + """The ID of the enterprise on which to set an identity provider.""" + enterpriseId: ID! - """The item at the end of the edge.""" - node: PublicKey + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""A repository pull request.""" -type PullRequest implements Node & Assignable & Closable & Comment & Updatable & UpdatableComment & Labelable & Lockable & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable { - """Reason that the conversation was locked.""" - activeLockReason: LockReason - - """The number of additions in this pull request.""" - additions: Int! +""" +Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes +""" +type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """A list of Users assigned to this object.""" - assignees( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The identity provider for the enterprise.""" + identityProvider: EnterpriseIdentityProvider +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""Autogenerated input type of RegenerateVerifiableDomainToken""" +input RegenerateVerifiableDomainTokenInput { + """ + The ID of the verifiable domain to regenerate the verification token of. + """ + id: ID! - """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 - ): UserConnection! +"""Autogenerated return type of RegenerateVerifiableDomainToken""" +type RegenerateVerifiableDomainTokenPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The actor who authored the comment.""" - author: Actor + """The verification token that was generated.""" + verificationToken: String +} - """Author's association with the subject of the comment.""" - authorAssociation: CommentAuthorAssociation! +"""Autogenerated input type of RejectDeployments""" +input RejectDeploymentsInput { + """The node ID of the workflow run containing the pending deployments.""" + workflowRunId: ID! - """Identifies the base Ref associated with the pull request.""" - baseRef: Ref + """The ids of environments to reject deployments""" + environmentIds: [ID!]! - """ - Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. - """ - baseRefName: String! + """Optional comment for rejecting deployments""" + comment: String = "" - """ - Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. - """ - baseRefOid: GitObjectID! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The repository associated with this pull request's base Ref.""" - baseRepository: Repository +"""Autogenerated return type of RejectDeployments""" +type RejectDeploymentsPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The body as Markdown.""" - body: String! + """The affected deployments.""" + deployments: [Deployment!] +} - """The body rendered to HTML.""" - bodyHTML: HTML! +"""A release contains the content for a release.""" +type Release implements Node & UniformResourceLocatable & Reactable { + """The author of the release""" + author: User - """The body rendered to text.""" - bodyText: String! + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The number of changed files in this pull request.""" - changedFiles: Int! + """Identifies the primary key from the database.""" + databaseId: Int - """The HTTP path for the checks of this pull request.""" - checksResourcePath: URI! + """The description of the release.""" + description: String - """The HTTP URL for the checks of this pull request.""" - checksUrl: URI! + """The description of this release rendered to HTML.""" + descriptionHTML: HTML + id: ID! - """`true` if the pull request is closed""" - closed: Boolean! + """Whether or not the release is a draft""" + isDraft: Boolean! - """Identifies the date and time when the object was closed.""" - closedAt: DateTime + """Whether or not the release is the latest releast""" + isLatest: Boolean! - """A list of comments associated with the pull request.""" - comments( - """Ordering options for issue comments returned from the connection.""" - orderBy: IssueCommentOrder + """Whether or not the release is a prerelease""" + isPrerelease: Boolean! + """A list of users mentioned in the release description""" + mentions( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13726,12 +24030,19 @@ type PullRequest implements Node & Assignable & Closable & Comment & Updatable & """Returns the last _n_ elements from the list.""" last: Int - ): IssueCommentConnection! + ): UserConnection - """ - A list of commits present in this pull request's head branch not present in the base branch. - """ - commits( + """The title of the release.""" + name: String + + """Identifies the date and time when the release was created.""" + 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 @@ -13745,25 +24056,16 @@ type PullRequest implements Node & Assignable & Closable & Comment & Updatable & """Returns the last _n_ elements from the list.""" last: Int - ): PullRequestCommitConnection! - - """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 number of deletions in this pull request.""" - deletions: Int! + """Allows filtering Reactions by emoji.""" + content: ReactionContent - """The actor who edited this pull request's body.""" - editor: Actor + """Allows specifying the order in which reactions are returned.""" + orderBy: ReactionOrder + ): ReactionConnection! - """Lists the files changed within this pull request.""" - files( + """List of releases assets which are dependent on this release.""" + releaseAssets( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -13777,2222 +24079,2033 @@ type PullRequest implements Node & Assignable & Closable & Comment & Updatable & """Returns the last _n_ elements from the list.""" last: Int - ): PullRequestChangedFileConnection - - """Identifies the head Ref associated with the pull request.""" - headRef: Ref - """ - Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. - """ - headRefName: String! - - """ - Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. - """ - headRefOid: GitObjectID! - - """The repository associated with this pull request's head Ref.""" - headRepository: Repository + """A list of names to filter the assets by.""" + name: String + ): ReleaseAssetConnection! - """ - The owner of the repository associated with this pull request's head Ref. - """ - headRepositoryOwner: RepositoryOwner + """The repository that the release belongs to.""" + repository: Repository! - """The hovercard information for this issue""" - hovercard( - """Whether or not to include notification contexts""" - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! + """The HTTP path for this issue""" + resourcePath: URI! """ - Check if this comment was edited and includes an edit with the creation data + A description of the release, rendered to HTML without any links in it. """ - includesCreatedEdit: Boolean! - - """The head and base repositories are different.""" - isCrossRepository: Boolean! + shortDescriptionHTML( + """How many characters to return.""" + limit: Int = 200 + ): HTML - """Identifies if the pull request is a draft.""" - isDraft: Boolean! + """The Git tag the release points to""" + tag: Ref - """Is this pull request read by the viewer""" - isReadByViewer: Boolean + """The tag commit for this release.""" + tagCommit: Commit - """A list of labels associated with the object.""" - labels( - """Ordering options for labels returned from the connection.""" - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + """The name of the release's Git tag""" + tagName: String! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP URL for this issue""" + url: URI! - """Returns the first _n_ elements from the list.""" - first: Int + """Can user react to this subject""" + viewerCanReact: Boolean! +} - """Returns the last _n_ elements from the list.""" - last: Int - ): LabelConnection +"""A release asset contains the content for a release asset.""" +type ReleaseAsset implements Node { + """The asset's content-type""" + contentType: String! - """The moment the editor made the last edit""" - lastEditedAt: DateTime + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """A list of latest reviews per user associated with the pull request.""" - latestOpinionatedReviews( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The number of times this asset was downloaded""" + downloadCount: Int! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the URL where you can download the release asset via the browser. + """ + downloadUrl: URI! + id: ID! - """Returns the first _n_ elements from the list.""" - first: Int + """Identifies the title of the release asset.""" + name: String! - """Returns the last _n_ elements from the list.""" - last: Int + """Release that the asset is associated with""" + release: Release - """Only return reviews from user who have write access to the repository""" - writersOnly: Boolean = false - ): PullRequestReviewConnection + """The size (in bytes) of the asset""" + size: Int! - """ - A list of latest reviews per user associated with the pull request that are not also pending review. - """ - latestReviews( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The user that performed the upload""" + uploadedBy: User! - """Returns the first _n_ elements from the list.""" - first: Int + """Identifies the URL of the release asset.""" + url: URI! +} - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestReviewConnection +"""The connection type for ReleaseAsset.""" +type ReleaseAssetConnection { + """A list of edges.""" + edges: [ReleaseAssetEdge] - """`true` if the pull request is locked""" - locked: Boolean! + """A list of nodes.""" + nodes: [ReleaseAsset] - """Indicates whether maintainers can modify the pull request.""" - maintainerCanModify: Boolean! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The commit that was created when this pull request was merged.""" - mergeCommit: Commit + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - Whether or not the pull request can be merged based on the existence of merge conflicts. - """ - mergeable: MergeableState! +"""An edge in a connection.""" +type ReleaseAssetEdge { + """A cursor for use in pagination.""" + cursor: String! - """Whether or not the pull request was merged.""" - merged: Boolean! + """The item at the end of the edge.""" + node: ReleaseAsset +} - """The date and time that the pull request was merged.""" - mergedAt: DateTime +"""The connection type for Release.""" +type ReleaseConnection { + """A list of edges.""" + edges: [ReleaseEdge] - """The actor who merged the pull request.""" - mergedBy: Actor + """A list of nodes.""" + nodes: [Release] - """Identifies the milestone associated with the pull request.""" - milestone: Milestone + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Identifies the pull request number.""" - number: Int! + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - A list of Users that are participating in the Pull Request conversation. - """ - participants( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""An edge in a connection.""" +type ReleaseEdge { + """A cursor for use in pagination.""" + cursor: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The item at the end of the edge.""" + node: Release +} - """Returns the first _n_ elements from the list.""" - first: Int +"""Ways in which lists of releases can be ordered upon return.""" +input ReleaseOrder { + """The field in which to order releases by.""" + field: ReleaseOrderField! - """Returns the last _n_ elements from the list.""" - last: Int - ): UserConnection! + """The direction in which to order releases by the specified field.""" + direction: OrderDirection! +} - """The permalink to the pull request.""" - permalink: URI! +"""Properties by which release connections can be ordered.""" +enum ReleaseOrderField { + """Order releases by creation time""" + CREATED_AT - """ - 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. - """ - potentialMergeCommit: Commit + """Order releases alphabetically by name""" + NAME +} - """List of project cards associated with this pull request.""" - projectCards( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Autogenerated input type of RemoveAssigneesFromAssignable""" +input RemoveAssigneesFromAssignableInput { + """The id of the assignable object to remove assignees from.""" + assignableId: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The id of users to remove as assignees.""" + assigneeIds: [ID!]! - """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 +"""Autogenerated return type of RemoveAssigneesFromAssignable""" +type RemoveAssigneesFromAssignablePayload { + """The item that was unassigned.""" + assignable: Assignable - """A list of archived states to filter the cards by""" - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - ): ProjectCardConnection! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Identifies when the comment was published at.""" - publishedAt: DateTime +"""Represents a 'removed_from_merge_queue' event on a given pull request.""" +type RemovedFromMergeQueueEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor - """A list of reactions grouped by content left on the subject.""" - reactionGroups: [ReactionGroup!] + """ + Identifies the before commit SHA for the 'removed_from_merge_queue' event. + """ + beforeCommit: Commit - """A list of Reactions left on the Issue.""" - reactions( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The user who removed this Pull Request from the merge queue""" + enqueuer: User + id: ID! - """Returns the first _n_ elements from the list.""" - first: Int + """The merge queue where this pull request was removed from.""" + mergeQueue: MergeQueue - """Returns the last _n_ elements from the list.""" - last: Int + """PullRequest referenced by event.""" + pullRequest: PullRequest - """Allows filtering Reactions by emoji.""" - content: ReactionContent + """The reason this pull request was removed from the queue.""" + reason: String +} - """Allows specifying the order in which reactions are returned.""" - orderBy: ReactionOrder - ): ReactionConnection! +""" +Represents a 'removed_from_project' event on a given issue or pull request. +""" +type RemovedFromProjectEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor - """The repository associated with this node.""" - repository: Repository! + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The HTTP path for this pull request.""" - resourcePath: URI! + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! +} - """The HTTP path for reverting this pull request.""" - revertResourcePath: URI! +"""Autogenerated input type of RemoveEnterpriseAdmin""" +input RemoveEnterpriseAdminInput { + """The Enterprise ID from which to remove the administrator.""" + enterpriseId: ID! - """The HTTP URL for reverting this pull request.""" - revertUrl: URI! + """The login of the user to remove as an administrator.""" + login: String! - """The current status of this pull request with respect to code review.""" - reviewDecision: PullRequestReviewDecision + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """A list of review requests associated with the pull request.""" - reviewRequests( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Autogenerated return type of RemoveEnterpriseAdmin""" +type RemoveEnterpriseAdminPayload { + """The user who was removed as an administrator.""" + admin: User - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Returns the first _n_ elements from the list.""" - first: Int + """The updated enterprise.""" + enterprise: Enterprise - """Returns the last _n_ elements from the list.""" - last: Int - ): ReviewRequestConnection + """A message confirming the result of removing an administrator.""" + message: String - """The list of all review threads for this pull request.""" - reviewThreads( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The viewer performing the mutation.""" + viewer: User +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""Autogenerated input type of RemoveEnterpriseIdentityProvider""" +input RemoveEnterpriseIdentityProviderInput { + """The ID of the enterprise from which to remove the identity provider.""" + enterpriseId: ID! - """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 - ): PullRequestReviewThreadConnection! +"""Autogenerated return type of RemoveEnterpriseIdentityProvider""" +type RemoveEnterpriseIdentityProviderPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The identity provider that was removed from the enterprise.""" + identityProvider: EnterpriseIdentityProvider +} - """A list of reviews associated with the pull request.""" - reviews( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Autogenerated input type of RemoveEnterpriseMember""" +input RemoveEnterpriseMemberInput { + """The ID of the enterprise from which the user should be removed.""" + enterpriseId: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The ID of the user to remove from the enterprise.""" + userId: ID! - """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 +"""Autogenerated return type of RemoveEnterpriseMember""" +type RemoveEnterpriseMemberPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """A list of states to filter the reviews.""" - states: [PullRequestReviewState!] + """The updated enterprise.""" + enterprise: Enterprise - """Filter by author of the review.""" - author: String - ): PullRequestReviewConnection + """The user that was removed from the enterprise.""" + user: User - """Identifies the state of the pull request.""" - state: PullRequestState! + """The viewer performing the mutation.""" + viewer: User +} +"""Autogenerated input type of RemoveEnterpriseOrganization""" +input RemoveEnterpriseOrganizationInput { """ - A list of reviewer suggestions based on commit history and past review comments. + The ID of the enterprise from which the organization should be removed. """ - suggestedReviewers: [SuggestedReviewer]! + enterpriseId: ID! - """ - A list of events, comments, commits, etc. associated with the pull request. - """ - timelineItems( - """Filter timeline items by a `since` timestamp.""" - since: DateTime + """The ID of the organization to remove from the enterprise.""" + organizationId: ID! - """Skips the first _n_ elements in the list.""" - skip: Int + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Filter timeline items by type.""" - itemTypes: [PullRequestTimelineItemsItemType!] +"""Autogenerated return type of RemoveEnterpriseOrganization""" +type RemoveEnterpriseOrganizationPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The updated enterprise.""" + enterprise: Enterprise - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The organization that was removed from the enterprise.""" + organization: Organization - """Returns the first _n_ elements from the list.""" - first: Int + """The viewer performing the mutation.""" + viewer: User +} - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestTimelineItemsConnection! +"""Autogenerated input type of RemoveEnterpriseSupportEntitlement""" +input RemoveEnterpriseSupportEntitlementInput { + """The ID of the Enterprise which the admin belongs to.""" + enterpriseId: ID! - """Identifies the pull request title.""" - title: String! + """The login of a member who will lose the support entitlement.""" + login: String! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The HTTP URL for this pull request.""" - url: URI! +"""Autogenerated return type of RemoveEnterpriseSupportEntitlement""" +type RemoveEnterpriseSupportEntitlementPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """A list of edits to this content.""" - userContentEdits( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """A message confirming the result of removing the support entitlement.""" + message: String +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""Autogenerated input type of RemoveLabelsFromLabelable""" +input RemoveLabelsFromLabelableInput { + """The id of the Labelable to remove labels from.""" + labelableId: ID! - """Returns the first _n_ elements from the list.""" - first: Int + """The ids of labels to remove.""" + labelIds: [ID!]! - """Returns the last _n_ elements from the list.""" - last: Int - ): UserContentEditConnection + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Whether or not the viewer can apply suggestion.""" - viewerCanApplySuggestion: Boolean! +"""Autogenerated return type of RemoveLabelsFromLabelable""" +type RemoveLabelsFromLabelablePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Check if the viewer can restore the deleted head ref.""" - viewerCanDeleteHeadRef: Boolean! + """The Labelable the labels were removed from.""" + labelable: Labelable +} - """Can user react to this subject""" - viewerCanReact: Boolean! +"""Autogenerated input type of RemoveOutsideCollaborator""" +input RemoveOutsideCollaboratorInput { + """The ID of the outside collaborator to remove.""" + userId: ID! - """ - Check if the viewer is able to change their subscription status for the repository. - """ - viewerCanSubscribe: Boolean! + """The ID of the organization to remove the outside collaborator from.""" + organizationId: ID! - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Reasons why the current viewer can not update this comment.""" - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! +"""Autogenerated return type of RemoveOutsideCollaborator""" +type RemoveOutsideCollaboratorPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Did the viewer author this comment.""" - viewerDidAuthor: Boolean! + """The user that was removed as an outside collaborator.""" + removedUser: User +} - """The merge body text for the viewer and method.""" - viewerMergeBodyText( - """The merge method for the message.""" - mergeType: PullRequestMergeMethod - ): String! +"""Autogenerated input type of RemoveReaction""" +input RemoveReactionInput { + """The Node ID of the subject to modify.""" + subjectId: ID! - """The merge headline text for the viewer and method.""" - viewerMergeHeadlineText( - """The merge method for the message.""" - mergeType: PullRequestMergeMethod - ): String! + """The name of the emoji reaction to remove.""" + content: ReactionContent! - """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. - """ - viewerSubscription: SubscriptionState + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""A file changed in a pull request.""" -type PullRequestChangedFile { - """The number of additions to the file.""" - additions: Int! +"""Autogenerated return type of RemoveReaction""" +type RemoveReactionPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The number of deletions to the file.""" - deletions: Int! + """The reaction object.""" + reaction: Reaction - """The path of the file.""" - path: String! + """The reaction groups for the subject.""" + reactionGroups: [ReactionGroup!] - """The state of the file for the viewer.""" - viewerViewedState: FileViewedState! + """The reactable subject.""" + subject: Reactable } -"""The connection type for PullRequestChangedFile.""" -type PullRequestChangedFileConnection { - """A list of edges.""" - edges: [PullRequestChangedFileEdge] +"""Autogenerated input type of RemoveStar""" +input RemoveStarInput { + """The Starrable ID to unstar.""" + starrableId: ID! - """A list of nodes.""" - nodes: [PullRequestChangedFile] + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Information to aid in pagination.""" - pageInfo: PageInfo! +"""Autogenerated return type of RemoveStar""" +type RemoveStarPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The starrable.""" + starrable: Starrable } -"""An edge in a connection.""" -type PullRequestChangedFileEdge { - """A cursor for use in pagination.""" - cursor: String! +"""Autogenerated input type of RemoveUpvote""" +input RemoveUpvoteInput { + """The Node ID of the discussion or comment to remove upvote.""" + subjectId: ID! - """The item at the end of the edge.""" - node: PullRequestChangedFile + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""Represents a Git commit part of a pull request.""" -type PullRequestCommit implements Node & UniformResourceLocatable { - """The Git commit object""" - commit: Commit! +"""Autogenerated return type of RemoveUpvote""" +type RemoveUpvotePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The votable subject.""" + subject: Votable +} + +"""Represents a 'renamed' event on a given issue or pull request""" +type RenamedTitleEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor + + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + + """Identifies the current title of the issue or pull request.""" + currentTitle: String! id: ID! - """The pull request this commit belongs to""" - pullRequest: PullRequest! + """Identifies the previous title of the issue or pull request.""" + previousTitle: String! - """The HTTP path for this pull request commit""" - resourcePath: URI! + """Subject that was renamed.""" + subject: RenamedTitleSubject! +} + +"""An object which has a renamable title""" +union RenamedTitleSubject = Issue | PullRequest - """The HTTP URL for this pull request commit""" - url: URI! +"""Autogenerated input type of ReopenDiscussion""" +input ReopenDiscussionInput { + """ID of the discussion to be reopened.""" + discussionId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""Represents a commit comment thread part of a pull request.""" -type PullRequestCommitCommentThread implements Node & RepositoryNode { - """The comments that exist in this thread.""" - comments( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Autogenerated return type of ReopenDiscussion""" +type ReopenDiscussionPayload { + """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 discussion that was reopened.""" + discussion: Discussion +} - """Returns the first _n_ elements from the list.""" - first: Int +"""Represents a 'reopened' event on any `Closable`.""" +type ReopenedEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor - """Returns the last _n_ elements from the list.""" - last: Int - ): CommitCommentConnection! + """Object that was reopened.""" + closable: Closable! - """The commit the comments were made on.""" - commit: Commit! + """Identifies the date and time when the object was created.""" + createdAt: DateTime! id: ID! - """The file the comments were made on.""" - path: String - - """The position in the diff for the commit that the comment was made on.""" - position: Int + """The reason the issue state was changed to open.""" + stateReason: IssueStateReason +} - """The pull request this commit comment thread belongs to""" - pullRequest: PullRequest! +"""Autogenerated input type of ReopenIssue""" +input ReopenIssueInput { + """ID of the issue to be opened.""" + issueId: ID! - """The repository associated with this node.""" - repository: Repository! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""The connection type for PullRequestCommit.""" -type PullRequestCommitConnection { - """A list of edges.""" - edges: [PullRequestCommitEdge] +"""Autogenerated return type of ReopenIssue""" +type ReopenIssuePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """A list of nodes.""" - nodes: [PullRequestCommit] + """The issue that was opened.""" + issue: Issue +} - """Information to aid in pagination.""" - pageInfo: PageInfo! +"""Autogenerated input type of ReopenPullRequest""" +input ReopenPullRequestInput { + """ID of the pull request to be reopened.""" + pullRequestId: ID! - """Identifies the total count of items in the connection.""" - totalCount: Int! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""An edge in a connection.""" -type PullRequestCommitEdge { - """A cursor for use in pagination.""" - cursor: String! +"""Autogenerated return type of ReopenPullRequest""" +type ReopenPullRequestPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The item at the end of the edge.""" - node: PullRequestCommit + """The pull request that was reopened.""" + pullRequest: PullRequest } -"""The connection type for PullRequest.""" -type PullRequestConnection { - """A list of edges.""" - edges: [PullRequestEdge] +"""Audit log entry for a repo.access event.""" +type RepoAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """A list of nodes.""" - nodes: [PullRequest] + """The user who initiated the action""" + actor: AuditEntryActor - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The IP address of the actor""" + actorIp: String - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """A readable representation of the actor's location""" + actorLocation: ActorLocation -"""This aggregates pull requests opened by a user within one repository.""" -type PullRequestContributionsByRepository { - """The pull request contributions.""" - contributions( - """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 - """Returns the last _n_ elements from the list.""" - last: Int + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Ordering options for contributions returned from the connection.""" - orderBy: ContributionOrder = {direction: DESC} - ): CreatedPullRequestContributionConnection! + """The corresponding operation type for the action""" + operationType: OperationType - """The repository in which the pull requests were opened.""" - repository: Repository! -} + """The Organization associated with the Audit Entry.""" + organization: Organization -"""An edge in a connection.""" -type PullRequestEdge { - """A cursor for use in pagination.""" - cursor: String! + """The name of the Organization.""" + organizationName: String - """The item at the end of the edge.""" - node: PullRequest -} + """The HTTP path for the organization""" + organizationResourcePath: URI -""" -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. - """ - MERGE + """The HTTP URL for the organization""" + organizationUrl: URI - """ - Combine all commits from the head branch into a single commit in the base branch. - """ - SQUASH + """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""" + user: User """ - Add all commits from the head branch onto the base branch individually. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - REBASE -} + userLogin: String -"""Ways in which lists of issues can be ordered upon return.""" -input PullRequestOrder { - """The field in which to order pull requests by.""" - field: PullRequestOrderField! + """The HTTP path for the user.""" + userResourcePath: URI - """The direction in which to order pull requests by the specified field.""" - direction: OrderDirection! + """The HTTP URL for the user.""" + userUrl: URI + + """The visibility of the repository""" + visibility: RepoAccessAuditEntryVisibility } -"""Properties by which pull_requests connections can be ordered.""" -enum PullRequestOrderField { - """Order pull_requests by creation time""" - CREATED_AT +"""The privacy of a repository""" +enum RepoAccessAuditEntryVisibility { + """The repository is visible only to users in the same business.""" + INTERNAL - """Order pull_requests by update time""" - UPDATED_AT + """The repository is visible only to those with explicit access.""" + PRIVATE + + """The repository is visible to everyone.""" + PUBLIC } -"""A review object for a given pull request.""" -type PullRequestReview implements Node & Comment & Deletable & Updatable & UpdatableComment & Reactable & RepositoryNode { - """The actor who authored the comment.""" - author: Actor +"""Audit log entry for a repo.add_member event.""" +type RepoAddMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """Author's association with the subject of the comment.""" - authorAssociation: CommentAuthorAssociation! + """The user who initiated the action""" + actor: AuditEntryActor - """ - Indicates whether the author of this review has push access to the repository. - """ - authorCanPushToRepository: Boolean! + """The IP address of the actor""" + actorIp: String - """Identifies the pull request review body.""" - body: String! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The body rendered to HTML.""" - bodyHTML: HTML! + """The username of the user who initiated the action""" + actorLogin: String - """The body of this review rendered as plain text.""" - bodyText: String! + """The HTTP path for the actor.""" + actorResourcePath: URI - """A list of review comments for the current pull request review.""" - comments( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """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 - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The name of the Organization.""" + organizationName: String - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP path for the organization""" + organizationResourcePath: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestReviewCommentConnection! + """The HTTP URL for the organization""" + organizationUrl: URI - """Identifies the commit associated with this pull request review.""" - commit: Commit + """The repository associated with the action""" + repository: Repository - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The name of the repository""" + repositoryName: String - """Check if this comment was created via an email reply.""" - createdViaEmail: Boolean! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Identifies the primary key from the database.""" - databaseId: Int + """The HTTP URL for the repository""" + repositoryUrl: URI - """The actor who edited the comment.""" - editor: Actor - id: ID! + """The user affected by the action""" + user: User """ - Check if this comment was edited and includes an edit with the creation data + For actions involving two users, the actor is the initiator and the user is the affected user. """ - includesCreatedEdit: Boolean! + userLogin: String - """The moment the editor made the last edit""" - lastEditedAt: DateTime + """The HTTP path for the user.""" + userResourcePath: URI - """A list of teams that this review was made on behalf of.""" - onBehalfOf( - """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 + """The visibility of the repository""" + visibility: RepoAddMemberAuditEntryVisibility +} - """Returns the first _n_ elements from the list.""" - first: Int +"""The privacy of a repository""" +enum RepoAddMemberAuditEntryVisibility { + """The repository is visible only to users in the same business.""" + INTERNAL - """Returns the last _n_ elements from the list.""" - last: Int - ): TeamConnection! + """The repository is visible only to those with explicit access.""" + PRIVATE - """Identifies when the comment was published at.""" - publishedAt: DateTime + """The repository is visible to everyone.""" + PUBLIC +} - """Identifies the pull request associated with this pull request review.""" - pullRequest: PullRequest! +"""Audit log entry for a repo.add_topic event.""" +type RepoAddTopicAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData & TopicAuditEntryData { + """The action name""" + action: String! - """A list of reactions grouped by content left on the subject.""" - reactionGroups: [ReactionGroup!] + """The user who initiated the action""" + actor: AuditEntryActor - """A list of Reactions left on the Issue.""" - reactions( - """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 + """The HTTP path for the actor.""" + actorResourcePath: URI - """Allows filtering Reactions by emoji.""" - content: ReactionContent + """The HTTP URL for the actor.""" + actorUrl: URI - """Allows specifying the order in which reactions are returned.""" - orderBy: ReactionOrder - ): ReactionConnection! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """The repository associated with this node.""" - repository: Repository! + """The corresponding operation type for the action""" + operationType: OperationType - """The HTTP path permalink for this PullRequestReview.""" - resourcePath: URI! + """The Organization associated with the Audit Entry.""" + organization: Organization - """Identifies the current state of the pull request review.""" - state: PullRequestReviewState! + """The name of the Organization.""" + organizationName: String - """Identifies when the Pull Request Review was submitted""" - submittedAt: DateTime + """The HTTP path for the organization""" + organizationResourcePath: URI - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The HTTP URL for the organization""" + organizationUrl: URI - """The HTTP URL permalink for this PullRequestReview.""" - url: URI! + """The repository associated with the action""" + repository: Repository - """A list of edits to this content.""" - userContentEdits( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The name of the repository""" + repositoryName: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for the repository""" + repositoryUrl: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): UserContentEditConnection + """The name of the topic added to the repository""" + topic: Topic - """Check if the current viewer can delete this object.""" - viewerCanDelete: Boolean! + """The name of the topic added to the repository""" + topicName: String - """Can user react to this subject""" - viewerCanReact: Boolean! + """The user affected by the action""" + user: User - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Reasons why the current viewer can not update this comment.""" - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + """The HTTP path for the user.""" + userResourcePath: URI - """Did the viewer author this comment.""" - viewerDidAuthor: Boolean! + """The HTTP URL for the user.""" + userUrl: URI } -"""A review comment associated with a given repository pull request.""" -type PullRequestReviewComment implements Node & Comment & Deletable & Minimizable & Updatable & UpdatableComment & Reactable & RepositoryNode { - """The actor who authored the comment.""" - author: Actor - - """Author's association with the subject of the comment.""" - authorAssociation: CommentAuthorAssociation! - - """The comment body of this review comment.""" - body: String! - - """The body rendered to HTML.""" - bodyHTML: HTML! - - """The comment body of this review comment rendered as plain text.""" - bodyText: String! +"""Audit log entry for a repo.archived event.""" +type RepoArchivedAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """Identifies the commit associated with the comment.""" - commit: Commit + """The user who initiated the action""" + actor: AuditEntryActor - """Identifies when the comment was created.""" - createdAt: DateTime! + """The IP address of the actor""" + actorIp: String - """Check if this comment was created via an email reply.""" - createdViaEmail: Boolean! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Identifies the primary key from the database.""" - databaseId: Int + """The username of the user who initiated the action""" + actorLogin: String - """The diff hunk to which the comment applies.""" - diffHunk: String! + """The HTTP path for the actor.""" + actorResourcePath: URI - """Identifies when the comment was created in a draft state.""" - draftedAt: DateTime! + """The HTTP URL for the actor.""" + actorUrl: URI - """The actor who edited the comment.""" - editor: Actor + """The time the action was initiated""" + createdAt: PreciseDateTime! 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.""" - minimizedReason: String + """The corresponding operation type for the action""" + operationType: OperationType - """Identifies the original commit associated with the comment.""" - originalCommit: Commit + """The Organization associated with the Audit Entry.""" + organization: Organization - """The original line index in the diff to which the comment applies.""" - originalPosition: Int! + """The name of the Organization.""" + organizationName: String - """Identifies when the comment body is outdated""" - outdated: Boolean! + """The HTTP path for the organization""" + organizationResourcePath: URI - """The path to which the comment applies.""" - path: String! + """The HTTP URL for the organization""" + organizationUrl: URI - """The line index in the diff to which the comment applies.""" - position: Int + """The repository associated with the action""" + repository: Repository - """Identifies when the comment was published at.""" - publishedAt: DateTime + """The name of the repository""" + repositoryName: String - """The pull request associated with this review comment.""" - pullRequest: PullRequest! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """The pull request review associated with this review comment.""" - pullRequestReview: PullRequestReview + """The HTTP URL for the repository""" + repositoryUrl: URI - """A list of reactions grouped by content left on the subject.""" - reactionGroups: [ReactionGroup!] + """The user affected by the action""" + user: User - """A list of Reactions left on the Issue.""" - reactions( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for the user.""" + userUrl: URI - """Returns the last _n_ elements from the list.""" - last: Int + """The visibility of the repository""" + visibility: RepoArchivedAuditEntryVisibility +} - """Allows filtering Reactions by emoji.""" - content: ReactionContent +"""The privacy of a repository""" +enum RepoArchivedAuditEntryVisibility { + """The repository is visible only to users in the same business.""" + INTERNAL - """Allows specifying the order in which reactions are returned.""" - orderBy: ReactionOrder - ): ReactionConnection! + """The repository is visible only to those with explicit access.""" + PRIVATE - """The comment this is a reply to.""" - replyTo: PullRequestReviewComment + """The repository is visible to everyone.""" + PUBLIC +} - """The repository associated with this node.""" - repository: Repository! +"""Audit log entry for a repo.change_merge_setting event.""" +type RepoChangeMergeSettingAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """The HTTP path permalink for this review comment.""" - resourcePath: URI! + """The user who initiated the action""" + actor: AuditEntryActor - """Identifies the state of the comment.""" - state: PullRequestReviewCommentState! + """The IP address of the actor""" + actorIp: String - """Identifies when the comment was last updated.""" - updatedAt: DateTime! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The HTTP URL permalink for this review comment.""" - url: URI! + """The username of the user who initiated the action""" + actorLogin: String - """A list of edits to this content.""" - userContentEdits( - """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 + """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 - """Check if the current viewer can delete this object.""" - viewerCanDelete: Boolean! + """The merge method affected by the change""" + mergeType: RepoChangeMergeSettingAuditEntryMergeType - """Check if the current viewer can minimize this object.""" - viewerCanMinimize: Boolean! + """The corresponding operation type for the action""" + operationType: OperationType - """Can user react to this subject""" - viewerCanReact: Boolean! + """The Organization associated with the Audit Entry.""" + organization: Organization - """Check if the current viewer can update this object.""" - viewerCanUpdate: Boolean! + """The name of the Organization.""" + organizationName: String - """Reasons why the current viewer can not update this comment.""" - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + """The HTTP path for the organization""" + organizationResourcePath: URI - """Did the viewer author this comment.""" - viewerDidAuthor: Boolean! -} + """The HTTP URL for the organization""" + organizationUrl: URI -"""The connection type for PullRequestReviewComment.""" -type PullRequestReviewCommentConnection { - """A list of edges.""" - edges: [PullRequestReviewCommentEdge] + """The repository associated with the action""" + repository: Repository - """A list of nodes.""" - nodes: [PullRequestReviewComment] + """The name of the repository""" + repositoryName: String - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The HTTP URL for the repository""" + repositoryUrl: URI -"""An edge in a connection.""" -type PullRequestReviewCommentEdge { - """A cursor for use in pagination.""" - cursor: String! + """The user affected by the action""" + user: User - """The item at the end of the edge.""" - node: PullRequestReviewComment -} + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String -"""The possible states of a pull request review comment.""" -enum PullRequestReviewCommentState { - """A comment that is part of a pending review""" - PENDING + """The HTTP path for the user.""" + userResourcePath: URI - """A comment that is part of a submitted review""" - SUBMITTED + """The HTTP URL for the user.""" + userUrl: URI } -"""The connection type for PullRequestReview.""" -type PullRequestReviewConnection { - """A list of edges.""" - edges: [PullRequestReviewEdge] - - """A list of nodes.""" - nodes: [PullRequestReview] +"""The merge options available for pull requests to this repository.""" +enum RepoChangeMergeSettingAuditEntryMergeType { + """The pull request is added to the base branch in a merge commit.""" + MERGE - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + Commits from the pull request are added onto the base branch individually without a merge commit. + """ + REBASE - """Identifies the total count of items in the connection.""" - totalCount: Int! + """ + The pull request's commits are squashed into a single commit before they are merged to the base branch. + """ + SQUASH } -""" -This aggregates pull request reviews made by a user within one repository. -""" -type PullRequestReviewContributionsByRepository { - """The pull request review contributions.""" - contributions( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Audit log entry for a repo.config.disable_anonymous_git_access event.""" +type RepoConfigDisableAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + 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 contributions returned from the connection.""" - orderBy: ContributionOrder = {direction: DESC} - ): CreatedPullRequestReviewContributionConnection! + """The username of the user who initiated the action""" + actorLogin: String - """The repository in which the pull request reviews were made.""" - repository: Repository! -} + """The HTTP path for the actor.""" + actorResourcePath: URI -"""The review status of a pull request.""" -enum PullRequestReviewDecision { - """Changes have been requested on the pull request.""" - CHANGES_REQUESTED + """The HTTP URL for the actor.""" + actorUrl: URI - """The pull request has received an approving review.""" - APPROVED + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """A review is required before the pull request can be merged.""" - REVIEW_REQUIRED -} + """The corresponding operation type for the action""" + operationType: OperationType -"""An edge in a connection.""" -type PullRequestReviewEdge { - """A cursor for use in pagination.""" - cursor: String! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The item at the end of the edge.""" - node: PullRequestReview -} + """The name of the Organization.""" + organizationName: String -"""The possible events to perform on a pull request review.""" -enum PullRequestReviewEvent { - """Submit general feedback without explicit approval.""" - COMMENT + """The HTTP path for the organization""" + organizationResourcePath: URI - """Submit feedback and approve merging these changes.""" - APPROVE + """The HTTP URL for the organization""" + organizationUrl: URI - """Submit feedback that must be addressed before merging.""" - REQUEST_CHANGES + """The repository associated with the action""" + repository: Repository - """Dismiss review so it now longer effects merging.""" - DISMISS -} + """The name of the repository""" + repositoryName: String -"""The possible states of a pull request review.""" -enum PullRequestReviewState { - """A review that has not yet been submitted.""" - PENDING + """The HTTP path for the repository""" + repositoryResourcePath: URI - """An informational review.""" - COMMENTED + """The HTTP URL for the repository""" + repositoryUrl: URI - """A review allowing the pull request to merge.""" - APPROVED + """The user affected by the action""" + user: User - """A review blocking the pull request from merging.""" - CHANGES_REQUESTED + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """A review that has been dismissed.""" - DISMISSED + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""A threaded list of comments for a given pull request.""" -type PullRequestReviewThread implements Node { - """A list of pull request comments associated with the thread.""" - comments( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Audit log entry for a repo.config.disable_collaborators_only event.""" +type RepoConfigDisableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + 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 - """Skips the first _n_ elements in the list.""" - skip: Int - ): PullRequestReviewCommentConnection! + """The username of the user who initiated the action""" + actorLogin: String - """The side of the diff on which this thread was placed.""" - diffSide: DiffSide! + """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! - """Whether or not the thread has been collapsed (outdated or resolved)""" - isCollapsed: Boolean! + """The corresponding operation type for the action""" + operationType: OperationType - """Indicates whether this thread was outdated by newer changes.""" - isOutdated: Boolean! + """The Organization associated with the Audit Entry.""" + organization: Organization - """Whether this thread has been resolved""" - isResolved: Boolean! + """The name of the Organization.""" + organizationName: String - """The line in the file to which this thread refers""" - line: Int + """The HTTP path for the organization""" + organizationResourcePath: URI - """The original line in the file to which this thread refers.""" - originalLine: Int + """The HTTP URL for the organization""" + organizationUrl: URI - """ - The original start line in the file to which this thread refers (multi-line only). - """ - originalStartLine: Int + """The repository associated with the action""" + repository: Repository - """Identifies the file path of this thread.""" - path: String! + """The name of the repository""" + repositoryName: String - """Identifies the pull request associated with this thread.""" - pullRequest: PullRequest! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Identifies the repository associated with this thread.""" - repository: Repository! + """The HTTP URL for the repository""" + repositoryUrl: URI - """The user who resolved this thread""" - resolvedBy: User + """The user affected by the action""" + user: User """ - The side of the diff that the first line of the thread starts on (multi-line only) + For actions involving two users, the actor is the initiator and the user is the affected user. """ - startDiffSide: DiffSide + userLogin: String - """ - The start line in the file to which this thread refers (multi-line only) - """ - startLine: Int + """The HTTP path for the user.""" + userResourcePath: URI - """Indicates whether the current viewer can reply to this thread.""" - viewerCanReply: Boolean! + """The HTTP URL for the user.""" + userUrl: URI +} - """Whether or not the viewer can resolve this thread""" - viewerCanResolve: Boolean! +"""Audit log entry for a repo.config.disable_contributors_only event.""" +type RepoConfigDisableContributorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """Whether or not the viewer can unresolve this thread""" - viewerCanUnresolve: Boolean! -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Review comment threads for a pull request review.""" -type PullRequestReviewThreadConnection { - """A list of edges.""" - edges: [PullRequestReviewThreadEdge] + """The IP address of the actor""" + actorIp: String - """A list of nodes.""" - nodes: [PullRequestReviewThread] + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The username of the user who initiated the action""" + actorLogin: String - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The HTTP path for the actor.""" + actorResourcePath: URI -"""An edge in a connection.""" -type PullRequestReviewThreadEdge { - """A cursor for use in pagination.""" - cursor: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """The item at the end of the edge.""" - node: PullRequestReviewThread -} + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! -""" -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.""" - createdAt: DateTime! + """The corresponding operation type for the action""" + operationType: OperationType - """The last commit the viewer has seen.""" - lastSeenCommit: Commit! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The pull request to which the marker belongs.""" - pullRequest: PullRequest! -} + """The name of the Organization.""" + organizationName: String -"""The possible states of a pull request.""" -enum PullRequestState { - """A pull request that is still open.""" - OPEN + """The HTTP path for the organization""" + organizationResourcePath: URI - """A pull request that has been closed without being merged.""" - CLOSED + """The HTTP URL for the organization""" + organizationUrl: URI - """A pull request that has been closed by being merged.""" - MERGED -} + """The repository associated with the action""" + repository: Repository -"""The connection type for PullRequestTimelineItem.""" -type PullRequestTimelineConnection { - """A list of edges.""" - edges: [PullRequestTimelineItemEdge] + """The name of the repository""" + repositoryName: String - """A list of nodes.""" - nodes: [PullRequestTimelineItem] + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The HTTP URL for the repository""" + repositoryUrl: URI - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The user affected by the action""" + user: User -"""An item in an 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 + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String -"""An edge in a connection.""" -type PullRequestTimelineItemEdge { - """A cursor for use in pagination.""" - cursor: String! + """The HTTP path for the user.""" + userResourcePath: URI - """The item at the end of the edge.""" - node: PullRequestTimelineItem + """The HTTP URL for the user.""" + userUrl: URI } -"""An item in a pull request timeline""" -union PullRequestTimelineItems = AddedToProjectEvent | AssignedEvent | AutomaticBaseChangeFailedEvent | AutomaticBaseChangeSucceededEvent | BaseRefChangedEvent | BaseRefDeletedEvent | 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 +"""Audit log entry for a repo.config.disable_sockpuppet_disallowed event.""" +type RepoConfigDisableSockpuppetDisallowedAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! + + """The user who initiated the action""" + actor: AuditEntryActor -"""The connection type for PullRequestTimelineItems.""" -type PullRequestTimelineItemsConnection { - """A list of edges.""" - edges: [PullRequestTimelineItemsEdge] + """The IP address of the actor""" + actorIp: String - """ - Identifies the count of items after applying `before` and `after` filters. - """ - filteredCount: Int! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """A list of nodes.""" - nodes: [PullRequestTimelineItems] + """The username of the user who initiated the action""" + actorLogin: String - """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. - """ - pageCount: Int! + """The HTTP path for the actor.""" + actorResourcePath: URI - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The HTTP URL for the actor.""" + actorUrl: URI - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Identifies the date and time when the timeline was last updated.""" - updatedAt: DateTime! -} + """The corresponding operation type for the action""" + operationType: OperationType -"""An edge in a connection.""" -type PullRequestTimelineItemsEdge { - """A cursor for use in pagination.""" - cursor: String! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The item at the end of the edge.""" - node: PullRequestTimelineItems -} + """The name of the Organization.""" + organizationName: String -"""The possible item types found in a timeline.""" -enum PullRequestTimelineItemsItemType { - """Represents a Git commit part of a pull request.""" - PULL_REQUEST_COMMIT + """The HTTP path for the organization""" + organizationResourcePath: URI - """Represents a commit comment thread part of a pull request.""" - PULL_REQUEST_COMMIT_COMMENT_THREAD + """The HTTP URL for the organization""" + organizationUrl: URI - """A review object for a given pull request.""" - PULL_REQUEST_REVIEW + """The repository associated with the action""" + repository: Repository - """A threaded list of comments for a given pull request.""" - PULL_REQUEST_REVIEW_THREAD + """The name of the repository""" + repositoryName: 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 + """The HTTP path for the repository""" + repositoryResourcePath: URI - """ - Represents a 'automatic_base_change_failed' event on a given pull request. - """ - AUTOMATIC_BASE_CHANGE_FAILED_EVENT + """The HTTP URL for the repository""" + repositoryUrl: URI - """ - Represents a 'automatic_base_change_succeeded' event on a given pull request. - """ - AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT + """The user affected by the action""" + user: User """ - Represents a 'base_ref_changed' 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. """ - BASE_REF_CHANGED_EVENT + userLogin: String - """Represents a 'base_ref_force_pushed' event on a given pull request.""" - BASE_REF_FORCE_PUSHED_EVENT + """The HTTP path for the user.""" + userResourcePath: URI - """Represents a 'base_ref_deleted' event on a given pull request.""" - BASE_REF_DELETED_EVENT + """The HTTP URL for the user.""" + userUrl: URI +} - """Represents a 'deployed' event on a given pull request.""" - DEPLOYED_EVENT +"""Audit log entry for a repo.config.enable_anonymous_git_access event.""" +type RepoConfigEnableAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """ - Represents a 'deployment_environment_changed' event on a given pull request. - """ - DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT + """The user who initiated the action""" + actor: AuditEntryActor - """Represents a 'head_ref_deleted' event on a given pull request.""" - HEAD_REF_DELETED_EVENT + """The IP address of the actor""" + actorIp: String - """Represents a 'head_ref_force_pushed' event on a given pull request.""" - HEAD_REF_FORCE_PUSHED_EVENT + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Represents a 'head_ref_restored' event on a given pull request.""" - HEAD_REF_RESTORED_EVENT + """The username of the user who initiated the action""" + actorLogin: String - """Represents a 'merged' event on a given pull request.""" - MERGED_EVENT + """The HTTP path for the actor.""" + actorResourcePath: URI - """ - Represents a 'review_dismissed' event on a given issue or pull request. - """ - REVIEW_DISMISSED_EVENT + """The HTTP URL for the actor.""" + actorUrl: URI - """Represents an 'review_requested' event on a given pull request.""" - REVIEW_REQUESTED_EVENT + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Represents an 'review_request_removed' event on a given pull request.""" - REVIEW_REQUEST_REMOVED_EVENT + """The corresponding operation type for the action""" + operationType: OperationType - """Represents a 'ready_for_review' event on a given pull request.""" - READY_FOR_REVIEW_EVENT + """The Organization associated with the Audit Entry.""" + organization: Organization - """Represents a 'convert_to_draft' event on a given pull request.""" - CONVERT_TO_DRAFT_EVENT + """The name of the Organization.""" + organizationName: String - """Represents a comment on an Issue.""" - ISSUE_COMMENT + """The HTTP path for the organization""" + organizationResourcePath: URI - """Represents a mention made by one issue or pull request to another.""" - CROSS_REFERENCED_EVENT + """The HTTP URL for the organization""" + organizationUrl: URI - """ - Represents a 'added_to_project' event on a given issue or pull request. - """ - ADDED_TO_PROJECT_EVENT + """The repository associated with the action""" + repository: Repository - """Represents an 'assigned' event on any assignable object.""" - ASSIGNED_EVENT + """The name of the repository""" + repositoryName: String - """Represents a 'closed' event on any `Closable`.""" - CLOSED_EVENT + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Represents a 'comment_deleted' event on a given issue or pull request.""" - COMMENT_DELETED_EVENT + """The HTTP URL for the repository""" + repositoryUrl: URI - """Represents a 'connected' event on a given issue or pull request.""" - CONNECTED_EVENT + """The user affected by the action""" + 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 'demilestoned' event on a given issue or pull request.""" - DEMILESTONED_EVENT + """The HTTP path for the user.""" + userResourcePath: URI - """Represents a 'disconnected' event on a given issue or pull request.""" - DISCONNECTED_EVENT + """The HTTP URL for the user.""" + userUrl: URI +} - """Represents a 'labeled' event on a given issue or pull request.""" - LABELED_EVENT +"""Audit log entry for a repo.config.enable_collaborators_only event.""" +type RepoConfigEnableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """Represents a 'locked' event on a given issue or pull request.""" - LOCKED_EVENT + """The user who initiated the action""" + actor: AuditEntryActor - """ - Represents a 'marked_as_duplicate' event on a given issue or pull request. - """ - MARKED_AS_DUPLICATE_EVENT + """The IP address of the actor""" + actorIp: String - """Represents a 'mentioned' event on a given issue or pull request.""" - MENTIONED_EVENT + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Represents a 'milestoned' event on a given issue or pull request.""" - MILESTONED_EVENT + """The username of the user who initiated the action""" + actorLogin: String - """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. - """ - MOVED_COLUMNS_IN_PROJECT_EVENT + """The HTTP path for the actor.""" + actorResourcePath: URI - """Represents a 'pinned' event on a given issue or pull request.""" - PINNED_EVENT + """The HTTP URL for the actor.""" + actorUrl: URI - """Represents a 'referenced' event on a given `ReferencedSubject`.""" - REFERENCED_EVENT + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """ - Represents a 'removed_from_project' event on a given issue or pull request. - """ - REMOVED_FROM_PROJECT_EVENT + """The corresponding operation type for the action""" + operationType: OperationType - """Represents a 'renamed' event on a given issue or pull request""" - RENAMED_TITLE_EVENT + """The Organization associated with the Audit Entry.""" + organization: Organization - """Represents a 'reopened' event on any `Closable`.""" - REOPENED_EVENT + """The name of the Organization.""" + organizationName: String - """Represents a 'subscribed' event on a given `Subscribable`.""" - SUBSCRIBED_EVENT + """The HTTP path for the organization""" + organizationResourcePath: URI - """Represents a 'transferred' event on a given issue or pull request.""" - TRANSFERRED_EVENT + """The HTTP URL for the organization""" + organizationUrl: URI + + """The repository associated with the action""" + repository: Repository - """Represents an 'unassigned' event on any assignable object.""" - UNASSIGNED_EVENT + """The name of the repository""" + repositoryName: String - """Represents an 'unlabeled' event on a given issue or pull request.""" - UNLABELED_EVENT + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Represents an 'unlocked' event on a given issue or pull request.""" - UNLOCKED_EVENT + """The HTTP URL for the repository""" + repositoryUrl: URI - """Represents a 'user_blocked' event on a given user.""" - USER_BLOCKED_EVENT + """The user affected by the action""" + user: User """ - Represents an 'unmarked_as_duplicate' 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. """ - UNMARKED_AS_DUPLICATE_EVENT + userLogin: String - """Represents an 'unpinned' event on a given issue or pull request.""" - UNPINNED_EVENT + """The HTTP path for the user.""" + userResourcePath: URI - """Represents an 'unsubscribed' event on a given `Subscribable`.""" - UNSUBSCRIBED_EVENT + """The HTTP URL for the user.""" + userUrl: URI } -"""The possible target states when updating a pull request.""" -enum PullRequestUpdateState { - """A pull request that is still open.""" - OPEN +"""Audit log entry for a repo.config.enable_contributors_only event.""" +type RepoConfigEnableContributorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """A pull request that has been closed without being merged.""" - CLOSED -} + """The user who initiated the action""" + actor: AuditEntryActor -"""A Git push.""" -type Push implements Node { + """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 SHA after the push""" - nextSha: GitObjectID + """The corresponding operation type for the action""" + operationType: OperationType - """The permalink for this push.""" - permalink: URI! + """The Organization associated with the Audit Entry.""" + organization: Organization - """The SHA before the push""" - previousSha: GitObjectID + """The name of the Organization.""" + organizationName: String - """The user who pushed""" - pusher: User! + """The HTTP path for the organization""" + organizationResourcePath: URI - """The repository that was pushed to""" - repository: Repository! -} + """The HTTP URL for the organization""" + organizationUrl: URI -"""A team, user or app who has the ability to push to a protected branch.""" -type PushAllowance implements Node { - """The actor that can push.""" - actor: PushAllowanceActor + """The repository associated with the action""" + repository: Repository - """ - Identifies the branch protection rule associated with the allowed user or team. - """ - branchProtectionRule: BranchProtectionRule - id: ID! -} + """The name of the repository""" + repositoryName: String -"""Types that can be an actor.""" -union PushAllowanceActor = App | Team | User + """The HTTP path for the repository""" + repositoryResourcePath: URI -"""The connection type for PushAllowance.""" -type PushAllowanceConnection { - """A list of edges.""" - edges: [PushAllowanceEdge] + """The HTTP URL for the repository""" + repositoryUrl: URI - """A list of nodes.""" - nodes: [PushAllowance] + """The user affected by the action""" + user: User - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The HTTP path for the user.""" + userResourcePath: URI + + """The HTTP URL for the user.""" + userUrl: URI } -"""An edge in a connection.""" -type PushAllowanceEdge { - """A cursor for use in pagination.""" - cursor: String! +"""Audit log entry for a repo.config.enable_sockpuppet_disallowed event.""" +type RepoConfigEnableSockpuppetDisallowedAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """The item at the end of the edge.""" - node: PushAllowance -} + """The user who initiated the action""" + actor: AuditEntryActor -"""The query root of GitHub's GraphQL interface.""" -type Query { - """Look up a code of conduct by its key""" - codeOfConduct( - """The code of conduct's key""" - key: String! - ): CodeOfConduct + """The IP address of the actor""" + actorIp: String - """Look up a code of conduct by its key""" - codesOfConduct: [CodeOfConduct] + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Look up an enterprise by URL slug.""" - enterprise( - """The enterprise URL slug.""" - slug: String! + """The username of the user who initiated the action""" + actorLogin: String - """The enterprise invitation token.""" - invitationToken: String - ): Enterprise + """The HTTP path for the actor.""" + actorResourcePath: URI - """ - Look up a pending enterprise administrator invitation by invitee, enterprise and role. - """ - enterpriseAdministratorInvitation( - """The login of the user invited to join the business.""" - userLogin: String! + """The HTTP URL for the actor.""" + actorUrl: URI - """The slug of the enterprise the user was invited to join.""" - enterpriseSlug: String! + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """The role for the business member invitation.""" - role: EnterpriseAdministratorRole! - ): EnterpriseAdministratorInvitation + """The corresponding operation type for the action""" + operationType: OperationType - """ - Look up a pending enterprise administrator invitation by invitation token. - """ - enterpriseAdministratorInvitationByToken( - """The invitation token sent with the invitation email.""" - invitationToken: String! - ): EnterpriseAdministratorInvitation + """The Organization associated with the Audit Entry.""" + organization: Organization - """Look up an open source license by its key""" - license( - """The license's downcased SPDX ID""" - key: String! - ): License + """The name of the Organization.""" + organizationName: String - """Return a list of known open source licenses""" - licenses: [License]! + """The HTTP path for the organization""" + organizationResourcePath: URI - """Get alphabetically sorted list of Marketplace categories""" - marketplaceCategories( - """Return only the specified categories.""" - includeCategories: [String!] + """The HTTP URL for the organization""" + organizationUrl: URI - """Exclude categories with no listings.""" - excludeEmpty: Boolean + """The repository associated with the action""" + repository: Repository - """Returns top level categories only, excluding any subcategories.""" - excludeSubcategories: Boolean - ): [MarketplaceCategory!]! + """The name of the repository""" + repositoryName: String - """Look up a Marketplace category by its slug.""" - marketplaceCategory( - """The URL slug of the category.""" - slug: String! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Also check topic aliases for the category slug""" - useTopicAliases: Boolean - ): MarketplaceCategory + """The HTTP URL for the repository""" + repositoryUrl: URI - """Look up a single Marketplace listing""" - marketplaceListing( - """ - Select the listing that matches this slug. It's the short name of the listing used in its URL. - """ - slug: String! - ): MarketplaceListing + """The user affected by the action""" + user: User - """Look up Marketplace listings""" - marketplaceListings( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for the user.""" + userUrl: URI +} - """Returns the last _n_ elements from the list.""" - last: Int +"""Audit log entry for a repo.config.lock_anonymous_git_access event.""" +type RepoConfigLockAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """Select only listings with the given category.""" - categorySlug: String + """The user who initiated the action""" + actor: AuditEntryActor - """Also check topic aliases for the category slug""" - useTopicAliases: Boolean + """The IP address of the actor""" + actorIp: String - """ - Select listings to which user has admin access. If omitted, listings visible to the - viewer are returned. - - """ - viewerCanAdmin: Boolean + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Select listings that can be administered by the specified user.""" - adminId: ID + """The username of the user who initiated the action""" + actorLogin: String - """Select listings for products owned by the specified organization.""" - organizationId: ID + """The HTTP path for the actor.""" + actorResourcePath: URI - """ - Select listings visible to the viewer even if they are not approved. If omitted or - false, only approved listings will be returned. - - """ - allStates: Boolean + """The HTTP URL for the actor.""" + actorUrl: URI - """ - Select the listings with these slugs, if they are visible to the viewer. - """ - slugs: [String] + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """ - Select only listings where the primary category matches the given category slug. - """ - primaryCategoryOnly: Boolean = false + """The corresponding operation type for the action""" + operationType: OperationType - """Select only listings that offer a free trial.""" - withFreeTrialsOnly: Boolean = false - ): MarketplaceListingConnection! + """The Organization associated with the Audit Entry.""" + organization: Organization - """Return information about the GitHub instance""" - meta: GitHubMetadata! + """The name of the Organization.""" + organizationName: String - """Fetches an object given its ID.""" - node( - """ID of the object.""" - id: ID! - ): Node + """The HTTP path for the organization""" + organizationResourcePath: URI - """Lookup nodes by a list of IDs.""" - nodes( - """The list of node IDs.""" - ids: [ID!]! - ): [Node]! + """The HTTP URL for the organization""" + organizationUrl: URI - """Lookup a organization by login.""" - organization( - """The organization's login.""" - login: String! - ): Organization + """The repository associated with the action""" + repository: Repository - """The client's rate limit information.""" - rateLimit( - """If true, calculate the cost for the query without evaluating it""" - dryRun: Boolean = false - ): RateLimit + """The name of the repository""" + repositoryName: String - """ - Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object - """ - relay: Query! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Lookup a given repository by the owner and repository name.""" - repository( - """The login field of a user or organization""" - owner: String! + """The HTTP URL for the repository""" + repositoryUrl: URI - """The name of the repository""" - name: String! - ): Repository + """The user affected by the action""" + user: User """ - Lookup a repository owner (ie. either a User or an Organization) by login. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - repositoryOwner( - """The username to lookup the owner by.""" - login: String! - ): RepositoryOwner - - """Lookup resource by a URL.""" - resource( - """The URL.""" - url: URI! - ): UniformResourceLocatable - - """Perform a search across resources.""" - search( - """Returns the elements in the list that come after the specified cursor.""" - after: String + userLogin: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for the user.""" + userUrl: URI +} - """Returns the last _n_ elements from the list.""" - last: Int +"""Audit log entry for a repo.config.unlock_anonymous_git_access event.""" +type RepoConfigUnlockAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! - """The search string to look for.""" - query: String! + """The user who initiated the action""" + actor: AuditEntryActor - """The types of search items to search within.""" - type: SearchType! - ): SearchResultItemConnection! + """The IP address of the actor""" + actorIp: String - """GitHub Security Advisories""" - securityAdvisories( - """Ordering options for the returned topics.""" - orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Filter advisories by identifier, e.g. GHSA or CVE.""" - identifier: SecurityAdvisoryIdentifierFilter + """The username of the user who initiated the action""" + actorLogin: String - """Filter advisories to those published since a time in the past.""" - publishedSince: DateTime + """The HTTP path for the actor.""" + actorResourcePath: URI - """Filter advisories to those updated since a time in the past.""" - updatedSince: DateTime + """The HTTP URL for the actor.""" + actorUrl: URI - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The corresponding operation type for the action""" + operationType: OperationType - """Returns the first _n_ elements from the list.""" - first: Int + """The Organization associated with the Audit Entry.""" + organization: Organization - """Returns the last _n_ elements from the list.""" - last: Int - ): SecurityAdvisoryConnection! + """The name of the Organization.""" + organizationName: String - """Fetch a Security Advisory by its GHSA ID""" - securityAdvisory( - """GitHub Security Advisory ID.""" - ghsaId: String! - ): SecurityAdvisory + """The HTTP path for the organization""" + organizationResourcePath: URI - """Software Vulnerabilities documented by GitHub Security Advisories""" - securityVulnerabilities( - """Ordering options for the returned topics.""" - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + """The HTTP URL for the organization""" + organizationUrl: URI - """An ecosystem to filter vulnerabilities by.""" - ecosystem: SecurityAdvisoryEcosystem + """The repository associated with the action""" + repository: Repository - """A package name to filter vulnerabilities by.""" - package: String + """The name of the repository""" + repositoryName: String - """A list of severities to filter vulnerabilities by.""" - severities: [SecurityAdvisorySeverity!] + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The HTTP URL for the repository""" + repositoryUrl: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The user affected by the action""" + user: User - """Returns the first _n_ elements from the list.""" - first: Int + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Returns the last _n_ elements from the list.""" - last: Int - ): SecurityVulnerabilityConnection! + """The HTTP path for the user.""" + userResourcePath: URI - """Look up a topic by name.""" - topic( - """The topic's name.""" - name: String! - ): Topic + """The HTTP URL for the user.""" + userUrl: URI +} - """Lookup a user by login.""" - user( - """The user's login.""" - login: String! - ): User +"""Audit log entry for a repo.create event.""" +type RepoCreateAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """The currently authenticated user.""" - viewer: User! -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Represents the client's rate limit.""" -type RateLimit { - """The point cost for the current query counting against the rate limit.""" - cost: Int! + """The IP address of the actor""" + actorIp: String - """ - The maximum number of points the client is permitted to consume in a 60 minute window. - """ - limit: Int! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The maximum number of nodes this query may return""" - nodeCount: Int! + """The username of the user who initiated the action""" + actorLogin: String - """The number of points remaining in the current rate limit window.""" - remaining: Int! + """The HTTP path for the actor.""" + actorResourcePath: URI - """ - The time at which the current rate limit window resets in UTC epoch seconds. - """ - resetAt: DateTime! + """The HTTP URL for the actor.""" + actorUrl: URI - """The number of points used in the current rate limit window.""" - used: Int! -} + """The time the action was initiated""" + createdAt: PreciseDateTime! -"""Represents a subject that can be reacted on.""" -interface Reactable { - """Identifies the primary key from the database.""" - databaseId: Int + """The name of the parent repository for this forked repository.""" + forkParentName: String + + """The name of the root repository for this network.""" + forkSourceName: String id: ID! - """A list of reactions grouped by content left on the subject.""" - reactionGroups: [ReactionGroup!] + """The corresponding operation type for the action""" + operationType: OperationType - """A list of Reactions left on the Issue.""" - reactions( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The Organization associated with the Audit Entry.""" + organization: Organization - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The name of the Organization.""" + organizationName: String - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP path for the organization""" + organizationResourcePath: URI - """Returns the last _n_ elements from the list.""" - last: Int + """The HTTP URL for the organization""" + organizationUrl: URI - """Allows filtering Reactions by emoji.""" - content: ReactionContent + """The repository associated with the action""" + repository: Repository - """Allows specifying the order in which reactions are returned.""" - orderBy: ReactionOrder - ): ReactionConnection! + """The name of the repository""" + repositoryName: String - """Can user react to this subject""" - viewerCanReact: Boolean! -} + """The HTTP path for the repository""" + repositoryResourcePath: URI -"""The connection type for User.""" -type ReactingUserConnection { - """A list of edges.""" - edges: [ReactingUserEdge] + """The HTTP URL for the repository""" + repositoryUrl: URI - """A list of nodes.""" - nodes: [User] + """The user affected by the action""" + user: User - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """The HTTP path for the user.""" + userResourcePath: URI -"""Represents a user that's made a reaction.""" -type ReactingUserEdge { - """A cursor for use in pagination.""" - cursor: String! - node: User! + """The HTTP URL for the user.""" + userUrl: URI - """The moment when the user made the reaction.""" - reactedAt: DateTime! + """The visibility of the repository""" + visibility: RepoCreateAuditEntryVisibility } -"""An emoji reaction to a particular piece of content.""" -type Reaction implements Node { - """Identifies the emoji reaction.""" - content: ReactionContent! - - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - - """Identifies the primary key from the database.""" - databaseId: Int - id: ID! +"""The privacy of a repository""" +enum RepoCreateAuditEntryVisibility { + """The repository is visible only to users in the same business.""" + INTERNAL - """The reactable piece of content""" - reactable: Reactable! + """The repository is visible only to those with explicit access.""" + PRIVATE - """Identifies the user who created this reaction.""" - user: User + """The repository is visible to everyone.""" + PUBLIC } -"""A list of reactions that have been left on the subject.""" -type ReactionConnection { - """A list of edges.""" - edges: [ReactionEdge] +"""Audit log entry for a repo.destroy event.""" +type RepoDestroyAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { + """The action name""" + action: String! - """A list of nodes.""" - nodes: [Reaction] + """The user who initiated the action""" + actor: AuditEntryActor - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The IP address of the actor""" + actorIp: String - """Identifies the total count of items in the connection.""" - totalCount: Int! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """ - Whether or not the authenticated user has left a reaction on the subject. - """ - viewerHasReacted: Boolean! -} + """The username of the user who initiated the action""" + actorLogin: String -"""Emojis that can be attached to Issues, Pull Requests and Comments.""" -enum ReactionContent { - """Represents the `:+1:` emoji.""" - THUMBS_UP + """The HTTP path for the actor.""" + actorResourcePath: URI - """Represents the `:-1:` emoji.""" - THUMBS_DOWN + """The HTTP URL for the actor.""" + actorUrl: URI - """Represents the `:laugh:` emoji.""" - LAUGH + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """Represents the `:hooray:` emoji.""" - HOORAY + """The corresponding operation type for the action""" + operationType: OperationType - """Represents the `:confused:` emoji.""" - CONFUSED + """The Organization associated with the Audit Entry.""" + organization: Organization - """Represents the `:heart:` emoji.""" - HEART + """The name of the Organization.""" + organizationName: String - """Represents the `:rocket:` emoji.""" - ROCKET + """The HTTP path for the organization""" + organizationResourcePath: URI - """Represents the `:eyes:` emoji.""" - EYES -} + """The HTTP URL for the organization""" + organizationUrl: URI -"""An edge in a connection.""" -type ReactionEdge { - """A cursor for use in pagination.""" - cursor: String! + """The repository associated with the action""" + repository: Repository - """The item at the end of the edge.""" - node: Reaction -} + """The name of the repository""" + repositoryName: String -"""A group of emoji reactions to a particular piece of content.""" -type ReactionGroup { - """Identifies the emoji reaction.""" - content: ReactionContent! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """Identifies when the reaction was created.""" - createdAt: DateTime + """The HTTP URL for the repository""" + repositoryUrl: URI - """The subject that was reacted to.""" - subject: Reactable! + """The user affected by the action""" + user: User """ - Users who have reacted to the reaction subject with the emotion represented by this reaction group + For actions involving two users, the actor is the initiator and the user is the affected user. """ - 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 + userLogin: String - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): ReactingUserConnection! + """The HTTP URL for the user.""" + userUrl: URI - """ - Whether or not the authenticated user has left a reaction on the subject. - """ - viewerHasReacted: Boolean! + """The visibility of the repository""" + visibility: RepoDestroyAuditEntryVisibility } -"""Ways in which lists of reactions can be ordered upon return.""" -input ReactionOrder { - """The field in which to order reactions by.""" - field: ReactionOrderField! +"""The privacy of a repository""" +enum RepoDestroyAuditEntryVisibility { + """The repository is visible only to users in the same business.""" + INTERNAL - """The direction in which to order reactions by the specified field.""" - direction: OrderDirection! -} + """The repository is visible only to those with explicit access.""" + PRIVATE -"""A list of fields that reactions can be ordered by.""" -enum ReactionOrderField { - """Allows ordering a list of reactions by when they were created.""" - CREATED_AT + """The repository is visible to everyone.""" + PUBLIC } -"""Represents a 'ready_for_review' event on a given pull request.""" -type ReadyForReviewEvent implements Node & UniformResourceLocatable { - """Identifies the actor who performed the event.""" - actor: Actor +"""Audit log entry for a repo.remove_member event.""" +type RepoRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { + """The action name""" + action: String! + + """The user who initiated the action""" + actor: AuditEntryActor - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! + """The IP address of the actor""" + actorIp: String - """PullRequest referenced by event.""" - pullRequest: PullRequest! + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """The HTTP path for this ready for review event.""" - resourcePath: URI! + """The username of the user who initiated the action""" + actorLogin: String - """The HTTP URL for this ready for review event.""" - url: URI! -} + """The HTTP path for the actor.""" + actorResourcePath: URI -"""Represents a Git reference.""" -type Ref implements Node { - """A list of pull requests with this ref as the head ref.""" - associatedPullRequests( - """A list of states to filter the pull requests by.""" - states: [PullRequestState!] + """The HTTP URL for the actor.""" + actorUrl: URI - """A list of label names to filter the pull requests by.""" - labels: [String!] + """The time the action was initiated""" + createdAt: PreciseDateTime! + id: ID! - """The head ref name to filter the pull requests by.""" - headRefName: String + """The corresponding operation type for the action""" + operationType: OperationType - """The base ref name to filter the pull requests by.""" - baseRefName: String + """The Organization associated with the Audit Entry.""" + organization: Organization - """Ordering options for pull requests returned from the connection.""" - orderBy: IssueOrder + """The name of the Organization.""" + organizationName: String - """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 repository associated with the action""" + repository: Repository - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestConnection! + """The name of the repository""" + repositoryName: String - """Branch protection rules for this ref""" - branchProtectionRule: BranchProtectionRule - id: ID! + """The HTTP path for the repository""" + repositoryResourcePath: URI - """The ref name.""" - name: String! + """The HTTP URL for the repository""" + repositoryUrl: URI - """The ref's prefix, such as `refs/heads/` or `refs/tags/`.""" - prefix: String! + """The user affected by the action""" + user: User - """Branch protection rules that are viewable by non-admins""" - refUpdateRule: RefUpdateRule + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """The repository the ref belongs to.""" - repository: Repository! + """The HTTP path for the user.""" + userResourcePath: URI - """The object the ref points to. Returns null when object does not exist.""" - target: GitObject -} + """The HTTP URL for the user.""" + userUrl: URI -"""The connection type for Ref.""" -type RefConnection { - """A list of edges.""" - edges: [RefEdge] + """The visibility of the repository""" + visibility: RepoRemoveMemberAuditEntryVisibility +} - """A list of nodes.""" - nodes: [Ref] +"""The privacy of a repository""" +enum RepoRemoveMemberAuditEntryVisibility { + """The repository is visible only to users in the same business.""" + INTERNAL - """Information to aid in pagination.""" - pageInfo: PageInfo! + """The repository is visible only to those with explicit access.""" + PRIVATE - """Identifies the total count of items in the connection.""" - totalCount: Int! + """The repository is visible to everyone.""" + PUBLIC } -"""An edge in a connection.""" -type RefEdge { - """A cursor for use in pagination.""" - cursor: String! +"""Audit log entry for a repo.remove_topic event.""" +type RepoRemoveTopicAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData & TopicAuditEntryData { + """The action name""" + action: String! - """The item at the end of the edge.""" - node: Ref -} + """The user who initiated the action""" + actor: AuditEntryActor -"""Represents a 'referenced' event on a given `ReferencedSubject`.""" -type ReferencedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """The IP address of the actor""" + actorIp: String - """Identifies the commit associated with the 'referenced' event.""" - commit: Commit + """A readable representation of the actor's location""" + actorLocation: ActorLocation - """Identifies the repository associated with the 'referenced' event.""" - commitRepository: Repository! + """The username of the user who initiated the action""" + actorLogin: String - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """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! - """Reference originated in a different repository.""" - isCrossRepository: Boolean! + """The corresponding operation type for the action""" + operationType: OperationType - """ - Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. - """ - isDirectReference: Boolean! + """The Organization associated with the Audit Entry.""" + organization: Organization - """Object referenced by event.""" - subject: ReferencedSubject! -} + """The name of the Organization.""" + organizationName: String -"""Any referencable object""" -union ReferencedSubject = Issue | PullRequest + """The HTTP path for the organization""" + organizationResourcePath: URI -"""Ways in which lists of git refs can be ordered upon return.""" -input RefOrder { - """The field in which to order refs by.""" - field: RefOrderField! + """The HTTP URL for the organization""" + organizationUrl: URI - """The direction in which to order refs by the specified field.""" - direction: OrderDirection! -} + """The repository associated with the action""" + repository: Repository -"""Properties by which ref connections can be ordered.""" -enum RefOrderField { - """Order refs by underlying commit date if the ref prefix is refs/tags/""" - TAG_COMMIT_DATE + """The name of the repository""" + repositoryName: String - """Order refs by their alphanumeric name""" - ALPHABETICAL -} + """The HTTP path for the repository""" + repositoryResourcePath: URI -"""A ref update rules for a viewer.""" -type RefUpdateRule { - """Can this branch be deleted.""" - allowsDeletions: Boolean! + """The HTTP URL for the repository""" + repositoryUrl: URI - """Are force pushes allowed on this branch.""" - allowsForcePushes: Boolean! + """The name of the topic added to the repository""" + topic: Topic - """Identifies the protection rule pattern.""" - pattern: String! + """The name of the topic added to the repository""" + topicName: String - """Number of approving reviews required to update matching branches.""" - requiredApprovingReviewCount: Int + """The user affected by the action""" + user: User """ - List of required status check contexts that must pass for commits to be accepted to matching branches. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - requiredStatusCheckContexts: [String] - - """Are merge commits prohibited from being pushed to this branch.""" - requiresLinearHistory: Boolean! + userLogin: String - """Are commits required to be signed.""" - requiresSignatures: Boolean! + """The HTTP path for the user.""" + userResourcePath: URI - """Can the viewer push to the branch""" - viewerCanPush: Boolean! + """The HTTP URL for the user.""" + userUrl: URI } -""" -Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { - """The ID of the enterprise on which to set an identity provider.""" - enterpriseId: ID! +"""The reasons a piece of content can be reported or minimized.""" +enum ReportedContentClassifiers { + """A spammy piece of content""" + SPAM - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """An abusive or harassing piece of content""" + ABUSE -""" -Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """An irrelevant piece of content""" + OFF_TOPIC + + """An outdated piece of content""" + OUTDATED + + """A duplicated piece of content""" + DUPLICATE - """The identity provider for the enterprise.""" - identityProvider: EnterpriseIdentityProvider + """The content has been resolved""" + RESOLVED } -"""A release contains the content for a release.""" -type Release implements Node & UniformResourceLocatable { - """The author of the release""" - author: User +"""A repository contains the content for a project.""" +type Repository implements Node & ProjectV2Recent & ProjectOwner & PackageOwner & Subscribable & Starrable & UniformResourceLocatable & RepositoryInfo { + """ + 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. + """ + allowUpdateBranch: Boolean! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """Identifies the date and time when the repository was archived.""" + archivedAt: DateTime - """The description of the release.""" - description: String + """A list of users that can be assigned to issues in this repository.""" + assignableUsers( + """Filters users with query on user name and login""" + query: String - """The description of this release rendered to HTML.""" - descriptionHTML: HTML - id: ID! + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Whether or not the release is a draft""" - isDraft: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Whether or not the release is a prerelease""" - isPrerelease: Boolean! + """Returns the first _n_ elements from the list.""" + first: Int - """The title of the release.""" - name: String + """Returns the last _n_ elements from the list.""" + last: Int + ): UserConnection! - """Identifies the date and time when the release was created.""" - publishedAt: DateTime + """ + Whether or not Auto-merge can be enabled on pull requests in this repository. + """ + autoMergeAllowed: Boolean! - """List of releases assets which are dependent on this release.""" - releaseAssets( + """A list of branch protection rules for this repository.""" + branchProtectionRules( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -16006,867 +26119,1043 @@ type Release implements Node & UniformResourceLocatable { """Returns the last _n_ elements from the list.""" last: Int + ): BranchProtectionRuleConnection! - """A list of names to filter the assets by.""" - name: String - ): ReleaseAssetConnection! + """Returns the code of conduct for this repository""" + codeOfConduct: CodeOfConduct - """The HTTP path for this issue""" - resourcePath: URI! + """Information extracted from the repository's `CODEOWNERS` file.""" + codeowners( + """The ref name used to return the associated `CODEOWNERS` file.""" + refName: String + ): RepositoryCodeowners - """ - A description of the release, rendered to HTML without any links in it. - """ - shortDescriptionHTML( - """How many characters to return.""" - limit: Int = 200 - ): HTML + """A list of collaborators associated with the repository.""" + collaborators( + """Collaborators affiliation level with a repository.""" + affiliation: CollaboratorAffiliation - """The Git tag the release points to""" - tag: Ref + """The login of one specific collaborator.""" + login: String - """The name of the release's Git tag""" - tagName: String! + """Filters users with query on user name and login""" + query: String - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for this issue""" - url: URI! -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -"""A release asset contains the content for a release asset.""" -type ReleaseAsset implements Node { - """The asset's content-type""" - contentType: String! + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): RepositoryCollaboratorConnection + + """A list of commit comments associated with the repository.""" + commitComments( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): CommitCommentConnection! + + """Returns a list of contact links associated to the repository""" + contactLinks: [RepositoryContactLink!] """Identifies the date and time when the object was created.""" createdAt: DateTime! - """The number of times this asset was downloaded""" - downloadCount: Int! + """Identifies the primary key from the database.""" + databaseId: Int + + """The Ref associated with the repository's default branch.""" + defaultBranchRef: Ref """ - Identifies the URL where you can download the release asset via the browser. + Whether or not branches are automatically deleted when merged in this repository. """ - downloadUrl: URI! - id: ID! + deleteBranchOnMerge: Boolean! - """Identifies the title of the release asset.""" - name: String! + """A list of deploy keys that are on this repository.""" + deployKeys( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Release that the asset is associated with""" - release: Release + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The size (in bytes) of the asset""" - 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! + """Returns the last _n_ elements from the list.""" + last: Int + ): DeployKeyConnection! - """The user that performed the upload""" - uploadedBy: User! + """Deployments associated with the repository""" + deployments( + """Environments to list deployments for""" + environments: [String!] - """Identifies the URL of the release asset.""" - url: URI! -} + """Ordering options for deployments returned from the connection.""" + orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} -"""The connection type for ReleaseAsset.""" -type ReleaseAssetConnection { - """A list of edges.""" - edges: [ReleaseAssetEdge] + """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 + ): DeploymentConnection! -"""An edge in a connection.""" -type ReleaseAssetEdge { - """A cursor for use in pagination.""" - cursor: String! + """The description of the repository.""" + description: String - """The item at the end of the edge.""" - node: ReleaseAsset -} + """The description of the repository rendered to HTML.""" + descriptionHTML: HTML! -"""The connection type for Release.""" -type ReleaseConnection { - """A list of edges.""" - edges: [ReleaseEdge] + """Returns a single discussion from the current repository by number.""" + discussion( + """The number for the discussion to be returned.""" + number: Int! + ): Discussion - """A list of nodes.""" - nodes: [Release] + """A list of discussion categories that are available in the repository.""" + discussionCategories( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Returns the first _n_ elements from the list.""" + first: Int -"""An edge in a connection.""" -type ReleaseEdge { - """A cursor for use in pagination.""" - cursor: String! + """Returns the last _n_ elements from the list.""" + last: Int - """The item at the end of the edge.""" - node: Release -} + """Filter by categories that are assignable by the viewer.""" + filterByAssignable: Boolean = false + ): DiscussionCategoryConnection! -"""Ways in which lists of releases can be ordered upon return.""" -input ReleaseOrder { - """The field in which to order releases by.""" - field: ReleaseOrderField! + """A discussion category by slug.""" + discussionCategory( + """The slug of the discussion category to be returned.""" + slug: String! + ): DiscussionCategory - """The direction in which to order releases by the specified field.""" - direction: OrderDirection! -} + """A list of discussions that have been opened in the repository.""" + discussions( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Properties by which release connections can be ordered.""" -enum ReleaseOrderField { - """Order releases by creation time""" - CREATED_AT + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Order releases alphabetically by name""" - NAME -} + """Returns the first _n_ elements from the list.""" + first: Int -"""Autogenerated input type of RemoveAssigneesFromAssignable""" -input RemoveAssigneesFromAssignableInput { - """The id of the assignable object to remove assignees from.""" - assignableId: ID! + """Returns the last _n_ elements from the list.""" + last: Int - """The id of users to remove as assignees.""" - assigneeIds: [ID!]! + """Only include discussions that belong to the category with this ID.""" + categoryId: ID = null + + """A list of states to filter the discussions by.""" + states: [DiscussionState!] = [] + + """Ordering options for discussions returned from the connection.""" + orderBy: DiscussionOrder = {field: UPDATED_AT, direction: DESC} + ): DiscussionConnection! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """The number of kilobytes this repository occupies on disk.""" + diskUsage: Int -"""Autogenerated return type of RemoveAssigneesFromAssignable""" -type RemoveAssigneesFromAssignablePayload { - """The item that was unassigned.""" - assignable: Assignable + """ + Returns a single active environment from the current repository by name. + """ + environment( + """The name of the environment to be returned.""" + name: String! + ): Environment - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """A list of environments that are in this repository.""" + environments( + """Returns the elements in the list that come after the specified cursor.""" + after: String -""" -Represents a 'removed_from_project' event on a given issue or pull request. -""" -type RemovedFromProjectEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """ + 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 - """Identifies the primary key from the database.""" - databaseId: Int - id: ID! -} + """Returns the last _n_ elements from the list.""" + last: Int + ): EnvironmentConnection! -"""Autogenerated input type of RemoveEnterpriseAdmin""" -input RemoveEnterpriseAdminInput { - """The Enterprise ID from which to remove the administrator.""" - enterpriseId: ID! + """ + Returns how many forks there are of this repository in the whole network. + """ + forkCount: Int! - """The login of the user to remove as an administrator.""" - login: String! + """Whether this repository allows forks.""" + forkingAllowed: Boolean! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """A list of direct forked repositories.""" + forks( + """If non-null, filters repositories according to privacy""" + privacy: RepositoryPrivacy -"""Autogenerated return type of RemoveEnterpriseAdmin""" -type RemoveEnterpriseAdminPayload { - """The user who was removed as an administrator.""" - admin: User + """Ordering options for repositories returned from the connection""" + orderBy: RepositoryOrder - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """ + 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 updated enterprise.""" - enterprise: Enterprise + """ + 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] - """A message confirming the result of removing an administrator.""" - message: String + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean - """The viewer performing the mutation.""" - viewer: User -} + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Autogenerated input type of RemoveEnterpriseIdentityProvider""" -input RemoveEnterpriseIdentityProviderInput { - """The ID of the enterprise from which to remove the identity provider.""" - enterpriseId: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """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 + ): RepositoryConnection! - """The identity provider that was removed from the enterprise.""" - identityProvider: EnterpriseIdentityProvider -} + """The funding links for this repository""" + fundingLinks: [FundingLink!]! -"""Autogenerated input type of RemoveEnterpriseOrganization""" -input RemoveEnterpriseOrganizationInput { - """ - The ID of the enterprise from which the organization should be removed. - """ - enterpriseId: ID! + """Indicates if the repository has the Discussions feature enabled.""" + hasDiscussionsEnabled: Boolean! - """The ID of the organization to remove from the enterprise.""" - organizationId: ID! + """Indicates if the repository has issues feature enabled.""" + hasIssuesEnabled: Boolean! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Indicates if the repository has the Projects feature enabled.""" + hasProjectsEnabled: Boolean! -"""Autogenerated return type of RemoveEnterpriseOrganization""" -type RemoveEnterpriseOrganizationPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Whether vulnerability alerts are enabled for the repository.""" + hasVulnerabilityAlertsEnabled: Boolean! - """The updated enterprise.""" - enterprise: Enterprise + """Indicates if the repository has wiki feature enabled.""" + hasWikiEnabled: Boolean! - """The organization that was removed from the enterprise.""" - organization: Organization + """The repository's URL.""" + homepageUrl: URI + id: ID! - """The viewer performing the mutation.""" - viewer: User -} + """The interaction ability settings for this repository.""" + interactionAbility: RepositoryInteractionAbility -"""Autogenerated input type of RemoveLabelsFromLabelable""" -input RemoveLabelsFromLabelableInput { - """The id of the Labelable to remove labels from.""" - labelableId: ID! + """Indicates if the repository is unmaintained.""" + isArchived: Boolean! - """The ids of labels to remove.""" - labelIds: [ID!]! + """Returns true if blank issue creation is allowed""" + isBlankIssuesEnabled: Boolean! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Returns whether or not this repository disabled.""" + isDisabled: Boolean! -"""Autogenerated return type of RemoveLabelsFromLabelable""" -type RemoveLabelsFromLabelablePayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Returns whether or not this repository is empty.""" + isEmpty: Boolean! - """The Labelable the labels were removed from.""" - labelable: Labelable -} + """Identifies if the repository is a fork.""" + isFork: Boolean! -"""Autogenerated input type of RemoveOutsideCollaborator""" -input RemoveOutsideCollaboratorInput { - """The ID of the outside collaborator to remove.""" - userId: ID! + """ + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. + """ + isInOrganization: Boolean! - """The ID of the organization to remove the outside collaborator from.""" - organizationId: ID! + """Indicates if the repository has been locked or not.""" + isLocked: Boolean! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Identifies if the repository is a mirror.""" + isMirror: Boolean! -"""Autogenerated return type of RemoveOutsideCollaborator""" -type RemoveOutsideCollaboratorPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Identifies if the repository is private or internal.""" + isPrivate: Boolean! - """The user that was removed as an outside collaborator.""" - removedUser: User -} + """Returns true if this repository has a security policy""" + isSecurityPolicyEnabled: Boolean -"""Autogenerated input type of RemoveReaction""" -input RemoveReactionInput { - """The Node ID of the subject to modify.""" - subjectId: ID! + """ + Identifies if the repository is a template that can be used to generate new repositories. + """ + isTemplate: Boolean! - """The name of the emoji reaction to remove.""" - content: ReactionContent! + """Is this repository a user configuration repository?""" + isUserConfigurationRepository: Boolean! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Returns a single issue from the current repository by number.""" + issue( + """The number for the issue to be returned.""" + number: Int! + ): Issue -"""Autogenerated return type of RemoveReaction""" -type RemoveReactionPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """ + Returns a single issue-like object from the current repository by number. + """ + issueOrPullRequest( + """The number for the issue to be returned.""" + number: Int! + ): IssueOrPullRequest - """The reaction object.""" - reaction: Reaction + """Returns a list of issue templates associated to the repository""" + issueTemplates: [IssueTemplate!] - """The reactable subject.""" - subject: Reactable -} + """A list of issues that have been opened in the repository.""" + issues( + """Ordering options for issues returned from the connection.""" + orderBy: IssueOrder -"""Autogenerated input type of RemoveStar""" -input RemoveStarInput { - """The Starrable ID to unstar.""" - starrableId: ID! + """A list of label names to filter the pull requests by.""" + labels: [String!] - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """A list of states to filter the issues by.""" + states: [IssueState!] -"""Autogenerated return type of RemoveStar""" -type RemoveStarPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Filtering options for issues returned from the connection.""" + filterBy: IssueFilters - """The starrable.""" - starrable: Starrable -} + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Represents a 'renamed' event on a given issue or pull request""" -type RenamedTitleEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """ + 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 - """Identifies the current title of the issue or pull request.""" - currentTitle: String! - id: ID! + """Returns the last _n_ elements from the list.""" + last: Int + ): IssueConnection! - """Identifies the previous title of the issue or pull request.""" - previousTitle: String! + """Returns a single label by name""" + label( + """Label name""" + name: String! + ): Label - """Subject that was renamed.""" - subject: RenamedTitleSubject! -} + """A list of labels associated with the repository.""" + labels( + """Ordering options for labels returned from the connection.""" + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} -"""An object which has a renamable title""" -union RenamedTitleSubject = Issue | PullRequest + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Represents a 'reopened' event on any `Closable`.""" -type ReopenedEvent implements Node { - """Identifies the actor who performed the event.""" - actor: Actor + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """Object that was reopened.""" - closable: Closable! + """Returns the first _n_ elements from the list.""" + first: Int - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - id: ID! -} + """Returns the last _n_ elements from the list.""" + last: Int -"""Autogenerated input type of ReopenIssue""" -input ReopenIssueInput { - """ID of the issue to be opened.""" - issueId: ID! + """If provided, searches labels by name and description.""" + query: String + ): LabelConnection - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """ + A list containing a breakdown of the language composition of the repository. + """ + languages( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Autogenerated return type of ReopenIssue""" -type ReopenIssuePayload { - """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 issue that was opened.""" - issue: Issue -} + """Returns the first _n_ elements from the list.""" + first: Int -"""Autogenerated input type of ReopenPullRequest""" -input ReopenPullRequestInput { - """ID of the pull request to be reopened.""" - pullRequestId: ID! + """Returns the last _n_ elements from the list.""" + last: Int - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Order for connection""" + orderBy: LanguageOrder + ): LanguageConnection -"""Autogenerated return type of ReopenPullRequest""" -type ReopenPullRequestPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Get the latest release for the repository if one exists.""" + latestRelease: Release - """The pull request that was reopened.""" - pullRequest: PullRequest -} + """The license associated with the repository""" + licenseInfo: License -"""Audit log entry for a repo.access event.""" -type RepoAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! + """The reason the repository has been locked.""" + lockReason: RepositoryLockReason - """The user who initiated the action""" - actor: AuditEntryActor + """ + A list of Users that can be mentioned in the context of the repository. + """ + mentionableUsers( + """Filters users with query on user name and login""" + query: String - """The IP address of the actor""" - actorIp: String + """Returns the elements in the list that come after the specified cursor.""" + after: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The username of the user who initiated the action""" - actorLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the actor.""" - actorResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): UserConnection! - """The HTTP URL for the actor.""" - actorUrl: URI + """Whether or not PRs are merged with a merge commit on this repository.""" + mergeCommitAllowed: Boolean! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """ + How the default commit message will be generated when merging a pull request. + """ + mergeCommitMessage: MergeCommitMessage! - """The corresponding operation type for the action""" - operationType: OperationType + """ + How the default commit title will be generated when merging a pull request. + """ + mergeCommitTitle: MergeCommitTitle! - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + The merge queue for a specified branch, otherwise the default branch if not provided. + """ + mergeQueue( + """The name of the branch to get the merge queue for. Case sensitive.""" + branch: String + ): MergeQueue - """The name of the Organization.""" - organizationName: String + """Returns a single milestone from the current repository by number.""" + milestone( + """The number for the milestone to be returned.""" + number: Int! + ): Milestone - """The HTTP path for the organization""" - organizationResourcePath: URI + """A list of milestones associated with the repository.""" + milestones( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The repository associated with the action""" - repository: Repository + """Returns the first _n_ elements from the list.""" + first: Int - """The name of the repository""" - repositoryName: String + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Filter by the state of the milestones.""" + states: [MilestoneState!] - """The HTTP URL for the repository""" - repositoryUrl: URI + """Ordering options for milestones.""" + orderBy: MilestoneOrder - """The user affected by the action""" - user: User + """Filters milestones with a query on the title""" + query: String + ): MilestoneConnection - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """The repository's original mirror URL.""" + mirrorUrl: URI - """The HTTP path for the user.""" - userResourcePath: URI + """The name of the repository.""" + name: String! - """The HTTP URL for the user.""" - userUrl: URI + """The repository's name with owner.""" + nameWithOwner: String! - """The visibility of the repository""" - visibility: RepoAccessAuditEntryVisibility -} + """A Git object in the repository""" + object( + """The Git object ID""" + oid: GitObjectID -"""The privacy of a repository""" -enum RepoAccessAuditEntryVisibility { - """The repository is visible only to users in the same business.""" - INTERNAL + """A Git revision expression suitable for rev-parse""" + expression: String + ): GitObject - """The repository is visible only to those with explicit access.""" - PRIVATE + """The image used to represent this repository in Open Graph data.""" + openGraphImageUrl: URI! - """The repository is visible to everyone.""" - PUBLIC -} + """The User owner of the repository.""" + owner: RepositoryOwner! -"""Audit log entry for a repo.add_member event.""" -type RepoAddMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! + """A list of packages under the owner.""" + packages( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user who initiated the action""" - actor: AuditEntryActor + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The IP address of the actor""" - actorIp: String + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Find packages by their names.""" + names: [String] - """The username of the user who initiated the action""" - actorLogin: String + """Find packages in a repository by ID.""" + repositoryId: ID - """The HTTP path for the actor.""" - actorResourcePath: URI + """Filter registry package by type.""" + packageType: PackageType - """The HTTP URL for the actor.""" - actorUrl: URI + """Ordering of the returned packages.""" + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + ): PackageConnection! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The repository parent, if this is a fork.""" + parent: Repository - """The corresponding operation type for the action""" - operationType: OperationType + """A list of discussions that have been pinned in this repository.""" + pinnedDiscussions( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the Organization.""" - organizationName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int + ): PinnedDiscussionConnection! - """The HTTP URL for the organization""" - organizationUrl: URI + """A list of pinned issues for this repository.""" + pinnedIssues( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The repository associated with the action""" - 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 + """Returns the last _n_ elements from the list.""" + last: Int + ): PinnedIssueConnection - """The HTTP URL for the repository""" - repositoryUrl: URI + """The primary language of the repository's code.""" + primaryLanguage: Language - """The user affected by the action""" - user: User + """Find project by number.""" + project( + """The project number to find.""" + number: Int! + ): Project """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Finds and returns the Project according to the provided Project number. """ - userLogin: String + projectV2( + """The Project number.""" + number: Int! + ): ProjectV2 - """The HTTP path for the user.""" - userResourcePath: URI + """A list of projects under the owner.""" + projects( + """Ordering options for projects returned from the connection""" + orderBy: ProjectOrder - """The HTTP URL for the user.""" - userUrl: URI + """Query to search projects by, currently only searching by name.""" + search: String - """The visibility of the repository""" - visibility: RepoAddMemberAuditEntryVisibility -} + """A list of states to filter the projects by.""" + states: [ProjectState!] -"""The privacy of a repository""" -enum RepoAddMemberAuditEntryVisibility { - """The repository is visible only to users in the same business.""" - INTERNAL + """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 + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The repository is visible to everyone.""" - PUBLIC -} + """Returns the first _n_ elements from the list.""" + first: Int -"""Audit log entry for a repo.add_topic event.""" -type RepoAddTopicAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData & TopicAuditEntryData { - """The action name""" - action: String! + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectConnection! - """The user who initiated the action""" - actor: AuditEntryActor + """The HTTP path listing the repository's projects""" + projectsResourcePath: URI! - """The IP address of the actor""" - actorIp: String + """The HTTP URL listing the repository's projects""" + projectsUrl: URI! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """List of projects linked to this repository.""" + projectsV2( + """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 + """Returns the last _n_ elements from the list.""" + last: Int - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """A project to search for linked to the repo.""" + query: String - """The corresponding operation type for the action""" - operationType: OperationType + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + ): ProjectV2Connection! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Returns a single pull request from the current repository by number.""" + pullRequest( + """The number for the pull request to be returned.""" + number: Int! + ): PullRequest - """The name of the Organization.""" - organizationName: String + """Returns a list of pull request templates associated to the repository""" + pullRequestTemplates: [PullRequestTemplate!] - """The HTTP path for the organization""" - organizationResourcePath: URI + """A list of pull requests that have been opened in the repository.""" + pullRequests( + """A list of states to filter the pull requests by.""" + states: [PullRequestState!] - """The HTTP URL for the organization""" - organizationUrl: URI + """A list of label names to filter the pull requests by.""" + labels: [String!] - """The repository associated with the action""" - repository: Repository + """The head ref name to filter the pull requests by.""" + headRefName: String - """The name of the repository""" - repositoryName: String + """The base ref name to filter the pull requests by.""" + baseRefName: String - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Ordering options for pull requests returned from the connection.""" + orderBy: IssueOrder - """The HTTP URL for the repository""" - repositoryUrl: URI + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The name of the topic added to the repository""" - topic: Topic + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """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 + ): PullRequestConnection! + + """Identifies the date and time when the repository was last pushed to.""" + pushedAt: DateTime + + """Whether or not rebase-merging is enabled on this repository.""" + rebaseMergeAllowed: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Recent projects that this user has modified in the context of the owner. """ - userLogin: String + recentProjects( + """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 repo.archived event.""" -type RepoArchivedAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! + """Returns the last _n_ elements from the list.""" + last: Int + ): ProjectV2Connection! - """The user who initiated the action""" - actor: AuditEntryActor + """Fetch a given ref from the repository""" + 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 IP address of the actor""" - actorIp: String + """Fetch a list of refs from the repository""" + refs( + """Filters refs with query on name""" + query: String - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """A ref name prefix like `refs/heads/`, `refs/tags/`, etc.""" + refPrefix: String! + + """DEPRECATED: use orderBy. The ordering direction.""" + direction: OrderDirection - """The username of the user who initiated the action""" - actorLogin: String + """Ordering options for refs returned from the connection.""" + orderBy: RefOrder + ): RefConnection - """The HTTP path for the actor.""" - actorResourcePath: URI + """Lookup a single release given various criteria.""" + release( + """The name of the Tag the Release was created from""" + tagName: String! + ): Release - """The HTTP URL for the actor.""" - actorUrl: URI + """List of releases which are dependent on this repository.""" + releases( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The corresponding operation type for the action""" - operationType: OperationType + """Returns the first _n_ elements from the list.""" + first: Int - """The Organization associated with the Audit Entry.""" - organization: Organization + """Returns the last _n_ elements from the list.""" + last: Int - """The name of the Organization.""" - organizationName: String + """Order for connection""" + orderBy: ReleaseOrder + ): ReleaseConnection! - """The HTTP path for the organization""" - organizationResourcePath: URI + """A list of applied repository-topic associations for this repository.""" + repositoryTopics( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The repository associated with the action""" - repository: Repository + """Returns the first _n_ elements from the list.""" + first: Int - """The name of the repository""" - repositoryName: String + """Returns the last _n_ elements from the list.""" + last: Int + ): RepositoryTopicConnection! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """The HTTP path for this repository""" + resourcePath: URI! - """The HTTP URL for the repository""" - repositoryUrl: URI + """A list of rulesets for this repository.""" + rulesets( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user affected by the action""" - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the user.""" - userUrl: URI + """ + Return rulesets configured at higher levels that apply to this repository + """ + includeParents: Boolean = false + ): RepositoryRulesetConnection - """The visibility of the repository""" - visibility: RepoArchivedAuditEntryVisibility -} + """The security policy URL.""" + securityPolicyUrl: URI -"""The privacy of a repository""" -enum RepoArchivedAuditEntryVisibility { - """The repository is visible only to users in the same business.""" - INTERNAL + """ + A description of the repository, rendered to HTML without any links in it. + """ + shortDescriptionHTML( + """How many characters to return.""" + limit: Int = 200 + ): HTML! - """The repository is visible only to those with explicit access.""" - PRIVATE + """Whether or not squash-merging is enabled on this repository.""" + squashMergeAllowed: Boolean! - """The repository is visible to everyone.""" - PUBLIC -} + """ + How the default commit message will be generated when squash merging a pull request. + """ + squashMergeCommitMessage: SquashMergeCommitMessage! -"""Audit log entry for a repo.change_merge_setting event.""" -type RepoChangeMergeSettingAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! + """ + How the default commit title will be generated when squash merging a pull request. + """ + squashMergeCommitTitle: SquashMergeCommitTitle! - """The user who initiated the action""" - actor: AuditEntryActor + """The SSH URL to clone this repository""" + sshUrl: GitSSHRemote! - """The IP address of the actor""" - actorIp: String + """ + Returns a count of how many stargazers there are on this object + + """ + stargazerCount: Int! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A list of users who have starred this starrable.""" + stargazers( + """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 + """Returns the last _n_ elements from the list.""" + last: Int - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Order for connection""" + orderBy: StarOrder + ): StargazerConnection! """ - Whether the change was to enable (true) or disable (false) the merge type + Returns a list of all submodules in this repository parsed from the + .gitmodules file as of the default branch's HEAD commit. """ - isEnabled: Boolean + submodules( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The merge method affected by the change""" - mergeType: RepoChangeMergeSettingAuditEntryMergeType + """ + 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 + ): SubmoduleConnection! - """The name of the Organization.""" - organizationName: String + """Temporary authentication token for cloning this repository.""" + tempCloneToken: String - """The HTTP path for the organization""" - organizationResourcePath: URI + """The repository from which this repository was generated, if any.""" + templateRepository: Repository - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """The repository associated with the action""" - repository: Repository + """The HTTP URL for this repository""" + url: URI! - """The name of the repository""" - repositoryName: String + """ + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + """ + usesCustomOpenGraphImage: Boolean! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Indicates whether the viewer has admin permissions on this repository.""" + viewerCanAdminister: Boolean! - """The HTTP URL for the repository""" - repositoryUrl: URI + """Can the current viewer create new projects on this owner.""" + viewerCanCreateProjects: Boolean! - """The user affected by the action""" - user: User + """ + Check if the viewer is able to change their subscription status for the repository. + """ + viewerCanSubscribe: Boolean! + + """Indicates whether the viewer can update the topics of this repository.""" + viewerCanUpdateTopics: Boolean! + + """The last commit email for the viewer.""" + viewerDefaultCommitEmail: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The last used merge method by the viewer or the default for the repository. """ - userLogin: String + viewerDefaultMergeMethod: PullRequestMergeMethod! - """The HTTP path for the user.""" - userResourcePath: URI + """ + Returns a boolean indicating whether the viewing user has starred this starrable. + """ + viewerHasStarred: Boolean! - """The HTTP URL for the user.""" - userUrl: URI -} + """ + The users permission level on the repository. Will return null if authenticated as an GitHub App. + """ + viewerPermission: RepositoryPermission -"""The merge options available for pull requests to this repository.""" -enum RepoChangeMergeSettingAuditEntryMergeType { - """The pull request is added to the base branch in a merge commit.""" - MERGE + """A list of emails this viewer can commit with.""" + viewerPossibleCommitEmails: [String!] """ - Commits from the pull request are added onto the base branch individually without a merge commit. + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - REBASE + viewerSubscription: SubscriptionState + + """Indicates the repository's visibility level.""" + visibility: RepositoryVisibility! """ - The pull request's commits are squashed into a single commit before they are merged to the base branch. + Returns a single vulnerability alert from the current repository by number. """ - SQUASH -} + vulnerabilityAlert( + """The number for the vulnerability alert to be returned.""" + number: Int! + ): RepositoryVulnerabilityAlert + + """A list of vulnerability alerts that are on this repository.""" + vulnerabilityAlerts( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Audit log entry for a repo.config.disable_anonymous_git_access event.""" -type RepoConfigDisableAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - 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 + """Filter by the state of the alert""" + states: [RepositoryVulnerabilityAlertState!] - """The username of the user who initiated the action""" - actorLogin: String + """Filter by the scope of the alert's dependency""" + dependencyScopes: [RepositoryVulnerabilityAlertDependencyScope!] + ): RepositoryVulnerabilityAlertConnection - """The HTTP path for the actor.""" - actorResourcePath: URI + """A list of users watching the repository.""" + watchers( + """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 + ): UserConnection! - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Whether contributors are required to sign off on web-based commits in this repository. + """ + webCommitSignoffRequired: Boolean! +} - """The name of the Organization.""" - organizationName: String +"""The affiliation of a user to a repository""" +enum RepositoryAffiliation { + """Repositories that are owned by the authenticated user.""" + OWNER - """The HTTP path for the organization""" - organizationResourcePath: URI + """Repositories that the user has been added to as a collaborator.""" + COLLABORATOR - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Repositories that the user has access to through being a member of an + organization. This includes every repository on every team that the user is on. + """ + ORGANIZATION_MEMBER +} +"""Metadata for an audit entry with action repo.*""" +interface RepositoryAuditEntryData { """The repository associated with the action""" repository: Repository @@ -16878,819 +27167,1007 @@ type RepoConfigDisableAnonymousGitAccessAuditEntry implements Node & AuditEntry """The HTTP URL for the repository""" repositoryUrl: URI +} - """The user affected by the action""" - user: User - +"""Information extracted from a repository's `CODEOWNERS` file.""" +type RepositoryCodeowners { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Any problems that were encountered while parsing the `CODEOWNERS` file. """ - userLogin: String - - """The HTTP path for the user.""" - userResourcePath: URI - - """The HTTP URL for the user.""" - userUrl: URI + errors: [RepositoryCodeownersError!]! } -"""Audit log entry for a repo.config.disable_collaborators_only event.""" -type RepoConfigDisableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! - - """The user who initiated the action""" - actor: AuditEntryActor - - """The IP address of the actor""" - actorIp: String +"""An error in a `CODEOWNERS` file.""" +type RepositoryCodeownersError { + """The column number where the error occurs.""" + column: Int! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """A short string describing the type of error.""" + kind: String! - """The username of the user who initiated the action""" - actorLogin: String + """The line number where the error occurs.""" + line: Int! - """The HTTP path for the actor.""" - actorResourcePath: URI + """ + A complete description of the error, combining information from other fields. + """ + message: String! - """The HTTP URL for the actor.""" - actorUrl: URI + """The path to the file when the error occurs.""" + path: String! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The content of the line where the error occurs.""" + source: String! - """The corresponding operation type for the action""" - operationType: OperationType + """A suggestion of how to fix the error.""" + suggestion: String +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""The connection type for User.""" +type RepositoryCollaboratorConnection { + """A list of edges.""" + edges: [RepositoryCollaboratorEdge] - """The name of the Organization.""" - organizationName: String + """A list of nodes.""" + nodes: [User] - """The HTTP path for the organization""" - organizationResourcePath: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The repository associated with the action""" - repository: Repository +"""Represents a user who is a collaborator of a repository.""" +type RepositoryCollaboratorEdge { + """A cursor for use in pagination.""" + cursor: String! + node: User! - """The name of the repository""" - repositoryName: String + """The permission the user has on the repository.""" + permission: RepositoryPermission! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """A list of sources for the user's access to the repository.""" + permissionSources: [PermissionSource!] +} - """The HTTP URL for the repository""" - repositoryUrl: URI +"""A list of repositories owned by the subject.""" +type RepositoryConnection { + """A list of edges.""" + edges: [RepositoryEdge] - """The user affected by the action""" - user: User + """A list of nodes.""" + nodes: [Repository] - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP path for the user.""" - userResourcePath: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! - """The HTTP URL for the user.""" - userUrl: URI + """The total size in kilobytes of all repositories in the connection.""" + totalDiskUsage: Int! } -"""Audit log entry for a repo.config.disable_contributors_only event.""" -type RepoConfigDisableContributorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! +"""A repository contact link.""" +type RepositoryContactLink { + """The contact link purpose.""" + about: String! - """The user who initiated the action""" - actor: AuditEntryActor + """The contact link name.""" + name: String! - """The IP address of the actor""" - actorIp: String + """The contact link URL.""" + url: URI! +} - """A readable representation of the actor's location""" - actorLocation: ActorLocation +"""The reason a repository is listed as 'contributed'.""" +enum RepositoryContributionType { + """Created a commit""" + COMMIT - """The username of the user who initiated the action""" - actorLogin: String + """Created an issue""" + ISSUE - """The HTTP path for the actor.""" - actorResourcePath: URI + """Created a pull request""" + PULL_REQUEST - """The HTTP URL for the actor.""" - actorUrl: URI + """Created the repository""" + REPOSITORY - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Reviewed a pull request""" + PULL_REQUEST_REVIEW +} - """The corresponding operation type for the action""" - operationType: OperationType +"""Represents an author of discussions in repositories.""" +interface RepositoryDiscussionAuthor { + """Discussions this user has started.""" + repositoryDiscussions( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the Organization.""" - organizationName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the organization""" - organizationUrl: URI + """Ordering options for discussions returned from the connection.""" + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} - """The repository associated with the action""" - repository: Repository + """Filter discussions to only those in a specific repository.""" + repositoryId: ID - """The name of the repository""" - repositoryName: String + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null - """The HTTP path for the repository""" - repositoryResourcePath: URI + """A list of states to filter the discussions by.""" + states: [DiscussionState!] = [] + ): DiscussionConnection! +} - """The HTTP URL for the repository""" - repositoryUrl: URI +"""Represents an author of discussion comments in repositories.""" +interface RepositoryDiscussionCommentAuthor { + """Discussion comments this user has authored.""" + repositoryDiscussionComments( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user affected by the action""" - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Filter discussion comments to only those in a specific repository.""" + repositoryId: ID - """The HTTP URL for the user.""" - userUrl: URI + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + ): DiscussionCommentConnection! } -"""Audit log entry for a repo.config.disable_sockpuppet_disallowed event.""" -type RepoConfigDisableSockpuppetDisallowedAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! +"""An edge in a connection.""" +type RepositoryEdge { + """A cursor for use in pagination.""" + cursor: String! - """The user who initiated the action""" - actor: AuditEntryActor + """The item at the end of the edge.""" + node: Repository +} - """The IP address of the actor""" - actorIp: String +"""A subset of repository info.""" +interface RepositoryInfo { + """Identifies the date and time when the repository was archived.""" + archivedAt: DateTime - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The username of the user who initiated the action""" - actorLogin: String + """The description of the repository.""" + description: String - """The HTTP path for the actor.""" - actorResourcePath: URI + """The description of the repository rendered to HTML.""" + descriptionHTML: HTML! - """The HTTP URL for the actor.""" - actorUrl: URI + """ + Returns how many forks there are of this repository in the whole network. + """ + forkCount: Int! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Indicates if the repository has the Discussions feature enabled.""" + hasDiscussionsEnabled: Boolean! - """The corresponding operation type for the action""" - operationType: OperationType + """Indicates if the repository has issues feature enabled.""" + hasIssuesEnabled: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Indicates if the repository has the Projects feature enabled.""" + hasProjectsEnabled: Boolean! - """The name of the Organization.""" - organizationName: String + """Indicates if the repository has wiki feature enabled.""" + hasWikiEnabled: Boolean! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The repository's URL.""" + homepageUrl: URI - """The HTTP URL for the organization""" - organizationUrl: URI + """Indicates if the repository is unmaintained.""" + isArchived: Boolean! - """The repository associated with the action""" - repository: Repository + """Identifies if the repository is a fork.""" + isFork: Boolean! - """The name of the repository""" - repositoryName: String + """ + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. + """ + isInOrganization: Boolean! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Indicates if the repository has been locked or not.""" + isLocked: Boolean! - """The HTTP URL for the repository""" - repositoryUrl: URI + """Identifies if the repository is a mirror.""" + isMirror: Boolean! - """The user affected by the action""" - user: User + """Identifies if the repository is private or internal.""" + isPrivate: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies if the repository is a template that can be used to generate new repositories. """ - userLogin: String - - """The HTTP path for the user.""" - userResourcePath: URI - - """The HTTP URL for the user.""" - userUrl: URI -} + isTemplate: Boolean! -"""Audit log entry for a repo.config.enable_anonymous_git_access event.""" -type RepoConfigEnableAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! + """The license associated with the repository""" + licenseInfo: License - """The user who initiated the action""" - actor: AuditEntryActor + """The reason the repository has been locked.""" + lockReason: RepositoryLockReason - """The IP address of the actor""" - actorIp: String + """The repository's original mirror URL.""" + mirrorUrl: URI - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The name of the repository.""" + name: String! - """The username of the user who initiated the action""" - actorLogin: String + """The repository's name with owner.""" + nameWithOwner: String! - """The HTTP path for the actor.""" - actorResourcePath: URI + """The image used to represent this repository in Open Graph data.""" + openGraphImageUrl: URI! - """The HTTP URL for the actor.""" - actorUrl: URI + """The User owner of the repository.""" + owner: RepositoryOwner! - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Identifies the date and time when the repository was last pushed to.""" + pushedAt: DateTime - """The corresponding operation type for the action""" - operationType: OperationType + """The HTTP path for this repository""" + resourcePath: URI! - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + A description of the repository, rendered to HTML without any links in it. + """ + shortDescriptionHTML( + """How many characters to return.""" + limit: Int = 200 + ): HTML! - """The name of the Organization.""" - organizationName: String + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! - """The HTTP path for the organization""" - organizationResourcePath: URI + """The HTTP URL for this repository""" + url: URI! - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + """ + usesCustomOpenGraphImage: Boolean! - """The repository associated with the action""" - repository: Repository + """Indicates the repository's visibility level.""" + visibility: RepositoryVisibility! +} - """The name of the repository""" - repositoryName: String +"""Repository interaction limit that applies to this object.""" +type RepositoryInteractionAbility { + """The time the currently active limit expires.""" + expiresAt: DateTime - """The HTTP path for the repository""" - repositoryResourcePath: URI + """The current limit that is enabled on this object.""" + limit: RepositoryInteractionLimit! - """The HTTP URL for the repository""" - repositoryUrl: URI + """The origin of the currently active interaction limit.""" + origin: RepositoryInteractionLimitOrigin! +} - """The user affected by the action""" - user: User +"""A repository interaction limit.""" +enum RepositoryInteractionLimit { + """ + Users that have recently created their account will be unable to interact with the repository. + """ + EXISTING_USERS """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Users that have not previously committed to a repository’s default branch will be unable to interact with the repository. """ - userLogin: String + CONTRIBUTORS_ONLY - """The HTTP path for the user.""" - userResourcePath: URI + """ + Users that are not collaborators will not be able to interact with the repository. + """ + COLLABORATORS_ONLY - """The HTTP URL for the user.""" - userUrl: URI + """No interaction limits are enabled.""" + NO_LIMIT } -"""Audit log entry for a repo.config.enable_collaborators_only event.""" -type RepoConfigEnableCollaboratorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! - - """The user who initiated the action""" - actor: AuditEntryActor +"""The length for a repository interaction limit to be enabled for.""" +enum RepositoryInteractionLimitExpiry { + """The interaction limit will expire after 1 day.""" + ONE_DAY - """The IP address of the actor""" - actorIp: String + """The interaction limit will expire after 3 days.""" + THREE_DAYS - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The interaction limit will expire after 1 week.""" + ONE_WEEK - """The username of the user who initiated the action""" - actorLogin: String + """The interaction limit will expire after 1 month.""" + ONE_MONTH - """The HTTP path for the actor.""" - actorResourcePath: URI + """The interaction limit will expire after 6 months.""" + SIX_MONTHS +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""Indicates where an interaction limit is configured.""" +enum RepositoryInteractionLimitOrigin { + """A limit that is configured at the repository level.""" + REPOSITORY - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """A limit that is configured at the organization level.""" + ORGANIZATION - """The corresponding operation type for the action""" - operationType: OperationType + """A limit that is configured at the user-wide level.""" + USER +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""An invitation for a user to be added to a repository.""" +type RepositoryInvitation implements Node { + """The email address that received the invitation.""" + email: String + id: ID! - """The name of the Organization.""" - organizationName: String + """The user who received the invitation.""" + invitee: User - """The HTTP path for the organization""" - organizationResourcePath: URI + """The user who created the invitation.""" + inviter: User! - """The HTTP URL for the organization""" - organizationUrl: URI + """The permalink for this repository invitation.""" + permalink: URI! - """The repository associated with the action""" - repository: Repository + """The permission granted on this repository by this invitation.""" + permission: RepositoryPermission! - """The name of the repository""" - repositoryName: String + """The Repository the user is invited to.""" + repository: RepositoryInfo +} - """The HTTP path for the repository""" - repositoryResourcePath: URI +"""A list of repository invitations.""" +type RepositoryInvitationConnection { + """A list of edges.""" + edges: [RepositoryInvitationEdge] - """The HTTP URL for the repository""" - repositoryUrl: URI + """A list of nodes.""" + nodes: [RepositoryInvitation] - """The user affected by the action""" - user: User + """Information to aid in pagination.""" + pageInfo: PageInfo! - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The HTTP path for the user.""" - userResourcePath: URI +"""An edge in a connection.""" +type RepositoryInvitationEdge { + """A cursor for use in pagination.""" + cursor: String! - """The HTTP URL for the user.""" - userUrl: URI + """The item at the end of the edge.""" + node: RepositoryInvitation } -"""Audit log entry for a repo.config.enable_contributors_only event.""" -type RepoConfigEnableContributorsOnlyAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! +"""Ordering options for repository invitation connections.""" +input RepositoryInvitationOrder { + """The field to order repository invitations by.""" + field: RepositoryInvitationOrderField! - """The user who initiated the action""" - actor: AuditEntryActor + """The ordering direction.""" + direction: OrderDirection! +} - """The IP address of the actor""" - actorIp: String +"""Properties by which repository invitation connections can be ordered.""" +enum RepositoryInvitationOrderField { + """Order repository invitations by creation time""" + CREATED_AT +} - """A readable representation of the actor's location""" - actorLocation: ActorLocation +"""The possible reasons a given repository could be in a locked state.""" +enum RepositoryLockReason { + """The repository is locked due to a move.""" + MOVING - """The username of the user who initiated the action""" - actorLogin: String + """The repository is locked due to a billing related reason.""" + BILLING - """The HTTP path for the actor.""" - actorResourcePath: URI + """The repository is locked due to a rename.""" + RENAME - """The HTTP URL for the actor.""" - actorUrl: URI + """The repository is locked due to a migration.""" + MIGRATING - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """The repository is locked due to a trade controls related reason.""" + TRADE_RESTRICTION +} - """The corresponding operation type for the action""" - operationType: OperationType +"""A GitHub Enterprise Importer (GEI) repository migration.""" +type RepositoryMigration implements Node & Migration { + """The migration flag to continue on error.""" + continueOnError: Boolean! - """The Organization associated with the Audit Entry.""" - organization: Organization + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The name of the Organization.""" - organizationName: String + """Identifies the primary key from the database.""" + databaseId: String - """The HTTP path for the organization""" - organizationResourcePath: URI + """The reason the migration failed.""" + failureReason: String + id: ID! - """The HTTP URL for the organization""" - organizationUrl: URI + """ + The URL for the migration log (expires 1 day after migration completes). + """ + migrationLogUrl: URI - """The repository associated with the action""" - repository: Repository + """The migration source.""" + migrationSource: MigrationSource! - """The name of the repository""" - repositoryName: String + """The target repository name.""" + repositoryName: String! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + sourceUrl: URI! - """The HTTP URL for the repository""" - repositoryUrl: URI + """The migration state.""" + state: MigrationState! +} - """The user affected by the action""" - user: User +"""The connection type for RepositoryMigration.""" +type RepositoryMigrationConnection { + """A list of edges.""" + edges: [RepositoryMigrationEdge] - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """A list of nodes.""" + nodes: [RepositoryMigration] - """The HTTP path for the user.""" - userResourcePath: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL for the user.""" - userUrl: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""Audit log entry for a repo.config.enable_sockpuppet_disallowed event.""" -type RepoConfigEnableSockpuppetDisallowedAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! +"""Represents a repository migration.""" +type RepositoryMigrationEdge { + """A cursor for use in pagination.""" + cursor: String! - """The user who initiated the action""" - actor: AuditEntryActor + """The item at the end of the edge.""" + node: RepositoryMigration +} - """The IP address of the actor""" - actorIp: String +"""Ordering options for repository migrations.""" +input RepositoryMigrationOrder { + """The field to order repository migrations by.""" + field: RepositoryMigrationOrderField! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """The ordering direction.""" + direction: RepositoryMigrationOrderDirection! +} - """The username of the user who initiated the action""" - actorLogin: String +""" +Possible directions in which to order a list of repository migrations when provided an `orderBy` argument. +""" +enum RepositoryMigrationOrderDirection { + """Specifies an ascending order for a given `orderBy` argument.""" + ASC - """The HTTP path for the actor.""" - actorResourcePath: URI + """Specifies a descending order for a given `orderBy` argument.""" + DESC +} - """The HTTP URL for the actor.""" - actorUrl: URI +"""Properties by which repository migrations can be ordered.""" +enum RepositoryMigrationOrderField { + """Order mannequins why when they were created.""" + CREATED_AT +} - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! +"""Parameters to be used for the repository_name condition""" +type RepositoryNameConditionTarget { + """ + Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match. + """ + exclude: [String!]! - """The corresponding operation type for the action""" - operationType: OperationType + """ + 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. + """ + include: [String!]! - """The Organization associated with the Audit Entry.""" - organization: Organization + """ + Target changes that match these patterns will be prevented except by those with bypass permissions. + """ + protected: Boolean! +} - """The name of the Organization.""" - organizationName: String +"""Parameters to be used for the repository_name condition""" +input RepositoryNameConditionTargetInput { + """ + Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match. + """ + exclude: [String!]! - """The HTTP path for the organization""" - organizationResourcePath: URI + """ + 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. + """ + include: [String!]! - """The HTTP URL for the organization""" - organizationUrl: URI + """ + Target changes that match these patterns will be prevented except by those with bypass permissions. + """ + protected: Boolean +} - """The repository associated with the action""" - repository: Repository +"""Represents a object that belongs to a repository.""" +interface RepositoryNode { + """The repository associated with this node.""" + repository: Repository! +} - """The name of the repository""" - repositoryName: String +"""Ordering options for repository connections""" +input RepositoryOrder { + """The field to order repositories by.""" + field: RepositoryOrderField! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """The ordering direction.""" + direction: OrderDirection! +} - """The HTTP URL for the repository""" - repositoryUrl: URI +"""Properties by which repository connections can be ordered.""" +enum RepositoryOrderField { + """Order repositories by creation time""" + CREATED_AT - """The user affected by the action""" - user: User + """Order repositories by update time""" + UPDATED_AT - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Order repositories by push time""" + PUSHED_AT - """The HTTP path for the user.""" - userResourcePath: URI + """Order repositories by name""" + NAME - """The HTTP URL for the user.""" - userUrl: URI + """Order repositories by number of stargazers""" + STARGAZERS } -"""Audit log entry for a repo.config.lock_anonymous_git_access event.""" -type RepoConfigLockAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! +"""Represents an owner of a Repository.""" +interface RepositoryOwner { + """A URL pointing to the owner's public avatar.""" + avatarUrl( + """The size of the resulting square image.""" + size: Int + ): URI! + id: ID! - """The user who initiated the action""" - actor: AuditEntryActor + """The username used to login.""" + login: String! - """The IP address of the actor""" - actorIp: String + """A list of repositories that the user owns.""" + repositories( + """If non-null, filters repositories according to privacy""" + privacy: RepositoryPrivacy - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Ordering options for repositories returned from the connection""" + orderBy: RepositoryOrder - """The username of the user who initiated the action""" - actorLogin: String + """ + 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 HTTP path for the actor.""" - actorResourcePath: 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] - """The HTTP URL for the actor.""" - actorUrl: URI + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The corresponding operation type for the action""" - operationType: OperationType + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """Returns the first _n_ elements from the list.""" + first: Int - """The name of the Organization.""" - organizationName: String + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean + ): RepositoryConnection! - """The HTTP URL for the organization""" - organizationUrl: URI + """Find Repository.""" + repository( + """Name of Repository to find.""" + name: String! - """The repository associated with the action""" - repository: Repository + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + ): Repository - """The name of the repository""" - repositoryName: String + """The HTTP URL for the owner.""" + resourcePath: URI! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """The HTTP URL for the owner.""" + url: URI! +} - """The HTTP URL for the repository""" - repositoryUrl: URI +"""The access level to a repository""" +enum RepositoryPermission { + """ + Can read, clone, and push to this repository. Can also manage issues, pull + requests, and repository settings, including adding collaborators + """ + ADMIN - """The user affected by the action""" - user: User + """ + Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings + """ + MAINTAIN """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Can read, clone, and push to this repository. Can also manage issues and pull requests """ - userLogin: String + WRITE - """The HTTP path for the user.""" - userResourcePath: URI + """ + Can read and clone this repository. Can also manage issues and pull requests + """ + TRIAGE - """The HTTP URL for the user.""" - userUrl: URI + """ + Can read and clone this repository. Can also open and comment on issues and pull requests + """ + READ } -"""Audit log entry for a repo.config.unlock_anonymous_git_access event.""" -type RepoConfigUnlockAnonymousGitAccessAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { - """The action name""" - action: String! +"""The privacy of a repository""" +enum RepositoryPrivacy { + """Public""" + PUBLIC - """The user who initiated the action""" - actor: AuditEntryActor + """Private""" + PRIVATE +} - """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""" - actorLocation: ActorLocation + """The parameters for this rule.""" + parameters: RuleParameters - """The username of the user who initiated the action""" - actorLogin: String + """The type of rule.""" + type: RepositoryRuleType! +} - """The HTTP path for the actor.""" - actorResourcePath: URI +"""Set of conditions that determine if a ruleset will evaluate""" +type RepositoryRuleConditions { + """Configuration for the ref_name condition""" + refName: RefNameConditionTarget - """The HTTP URL for the actor.""" - actorUrl: URI + """Configuration for the repository_name condition""" + repositoryName: RepositoryNameConditionTarget +} - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! +"""Specifies the conditions required for a ruleset to evaluate""" +input RepositoryRuleConditionsInput { + """Configuration for the ref_name condition""" + refName: RefNameConditionTargetInput - """The corresponding operation type for the action""" - operationType: OperationType + """Configuration for the repository_name condition""" + repositoryName: RepositoryNameConditionTargetInput +} - """The Organization associated with the Audit Entry.""" - organization: Organization +"""The connection type for RepositoryRule.""" +type RepositoryRuleConnection { + """A list of edges.""" + edges: [RepositoryRuleEdge] - """The name of the Organization.""" - organizationName: String + """A list of nodes.""" + nodes: [RepositoryRule] - """The HTTP path for the organization""" - organizationResourcePath: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The repository associated with the action""" - repository: Repository +"""An edge in a connection.""" +type RepositoryRuleEdge { + """A cursor for use in pagination.""" + cursor: String! - """The name of the repository""" - repositoryName: String + """The item at the end of the edge.""" + node: RepositoryRule +} - """The HTTP path for the repository""" - repositoryResourcePath: URI +"""Specifies the attributes for a new or updated rule.""" +input RepositoryRuleInput { + """Optional ID of this rule when updating""" + id: ID - """The HTTP URL for the repository""" - repositoryUrl: URI + """The type of rule to create.""" + type: RepositoryRuleType! - """The user affected by the action""" - user: User + """The parameters for the rule.""" + parameters: RuleParametersInput +} - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String +"""A repository ruleset.""" +type RepositoryRuleset implements Node { + """The actors that can bypass this ruleset""" + bypassActors( + """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 repo.create event.""" -type RepoCreateAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! + """Returns the last _n_ elements from the list.""" + last: Int + ): RepositoryRulesetBypassActorConnection - """The user who initiated the action""" - actor: AuditEntryActor + """The bypass mode of this ruleset""" + bypassMode: RuleBypassMode! - """The IP address of the actor""" - actorIp: String + """ + The set of conditions that must evaluate to true for this ruleset to apply + """ + conditions: RepositoryRuleConditions! - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Identifies the primary key from the database.""" + databaseId: Int - """The username of the user who initiated the action""" - actorLogin: String + """The enforcement level of this ruleset""" + enforcement: RuleEnforcement! + id: ID! - """The HTTP path for the actor.""" - actorResourcePath: URI + """Name of the ruleset.""" + name: String! - """The HTTP URL for the actor.""" - actorUrl: URI + """List of rules.""" + rules( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The time the action was initiated""" - createdAt: PreciseDateTime! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The name of the parent repository for this forked repository.""" - forkParentName: String + """Returns the first _n_ elements from the list.""" + first: Int - """The name of the root repository for this netork.""" - forkSourceName: String - id: ID! + """Returns the last _n_ elements from the list.""" + last: Int - """The corresponding operation type for the action""" - operationType: OperationType + """The type of rule.""" + type: RepositoryRuleType + ): RepositoryRuleConnection - """The Organization associated with the Audit Entry.""" - organization: Organization + """Source of ruleset.""" + source: RuleSource! - """The name of the Organization.""" - organizationName: String + """Target of the ruleset.""" + target: RepositoryRulesetTarget +} - """The HTTP path for the organization""" - organizationResourcePath: URI +""" +A team or app that has the ability to bypass a rules defined on a ruleset +""" +type RepositoryRulesetBypassActor implements Node { + """The actor that can bypass rules.""" + actor: BypassActor + id: ID! - """The HTTP URL for the organization""" - organizationUrl: URI + """Identifies the ruleset associated with the allowed actor""" + repositoryRuleset: RepositoryRuleset +} - """The repository associated with the action""" - repository: Repository +"""The connection type for RepositoryRulesetBypassActor.""" +type RepositoryRulesetBypassActorConnection { + """A list of edges.""" + edges: [RepositoryRulesetBypassActorEdge] - """The name of the repository""" - repositoryName: String + """A list of nodes.""" + nodes: [RepositoryRulesetBypassActor] - """The HTTP path for the repository""" - repositoryResourcePath: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The HTTP URL for the repository""" - repositoryUrl: URI +"""An edge in a connection.""" +type RepositoryRulesetBypassActorEdge { + """A cursor for use in pagination.""" + cursor: String! - """The user affected by the action""" - user: User + """The item at the end of the edge.""" + node: RepositoryRulesetBypassActor +} - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String +"""The connection type for RepositoryRuleset.""" +type RepositoryRulesetConnection { + """A list of edges.""" + edges: [RepositoryRulesetEdge] - """The HTTP path for the user.""" - userResourcePath: URI + """A list of nodes.""" + nodes: [RepositoryRuleset] - """The HTTP URL for the user.""" - userUrl: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The visibility of the repository""" - visibility: RepoCreateAuditEntryVisibility + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""The privacy of a repository""" -enum RepoCreateAuditEntryVisibility { - """The repository is visible only to users in the same business.""" - INTERNAL +"""An edge in a connection.""" +type RepositoryRulesetEdge { + """A cursor for use in pagination.""" + cursor: String! - """The repository is visible only to those with explicit access.""" - PRIVATE + """The item at the end of the edge.""" + node: RepositoryRuleset +} - """The repository is visible to everyone.""" - PUBLIC +"""The targets supported for rulesets""" +enum RepositoryRulesetTarget { + """Branch""" + BRANCH + + """Tag""" + TAG } -"""Audit log entry for a repo.destroy event.""" -type RepoDestroyAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData { - """The action name""" - action: String! +"""The rule types supported in rulesets""" +enum RepositoryRuleType { + """Creation""" + CREATION - """The user who initiated the action""" - actor: AuditEntryActor + """Update""" + UPDATE - """The IP address of the actor""" - actorIp: String + """Deletion""" + DELETION - """A readable representation of the actor's location""" - actorLocation: ActorLocation + """Required linear history""" + REQUIRED_LINEAR_HISTORY - """The username of the user who initiated the action""" - actorLogin: String + """Required deployments""" + REQUIRED_DEPLOYMENTS - """The HTTP path for the actor.""" - actorResourcePath: URI + """Required signatures""" + REQUIRED_SIGNATURES - """The HTTP URL for the actor.""" - actorUrl: URI + """Pull request""" + PULL_REQUEST - """The time the action was initiated""" - createdAt: PreciseDateTime! - id: ID! + """Required status checks""" + REQUIRED_STATUS_CHECKS - """The corresponding operation type for the action""" - operationType: OperationType + """Non fast forward""" + NON_FAST_FORWARD - """The Organization associated with the Audit Entry.""" - organization: Organization + """Commit message pattern""" + COMMIT_MESSAGE_PATTERN - """The name of the Organization.""" - organizationName: String + """Commit author email pattern""" + COMMIT_AUTHOR_EMAIL_PATTERN - """The HTTP path for the organization""" - organizationResourcePath: URI + """Committer email pattern""" + COMMITTER_EMAIL_PATTERN - """The HTTP URL for the organization""" - organizationUrl: URI + """Branch name pattern""" + BRANCH_NAME_PATTERN - """The repository associated with the action""" - repository: Repository + """Tag name pattern""" + TAG_NAME_PATTERN +} - """The name of the repository""" - repositoryName: String +"""A repository-topic connects a repository to a topic.""" +type RepositoryTopic implements Node & UniformResourceLocatable { + id: ID! - """The HTTP path for the repository""" - repositoryResourcePath: URI + """The HTTP path for this repository-topic.""" + resourcePath: URI! - """The HTTP URL for the repository""" - repositoryUrl: URI + """The topic.""" + topic: Topic! - """The user affected by the action""" - user: User + """The HTTP URL for this repository-topic.""" + url: URI! +} - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String +"""The connection type for RepositoryTopic.""" +type RepositoryTopicConnection { + """A list of edges.""" + edges: [RepositoryTopicEdge] - """The HTTP path for the user.""" - userResourcePath: URI + """A list of nodes.""" + nodes: [RepositoryTopic] - """The HTTP URL for the user.""" - userUrl: URI + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The visibility of the repository""" - visibility: RepoDestroyAuditEntryVisibility + """Identifies the total count of items in the connection.""" + totalCount: Int! } -"""The privacy of a repository""" -enum RepoDestroyAuditEntryVisibility { - """The repository is visible only to users in the same business.""" - INTERNAL +"""An edge in a connection.""" +type RepositoryTopicEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: RepositoryTopic +} +"""The repository's visibility level.""" +enum RepositoryVisibility { """The repository is visible only to those with explicit access.""" PRIVATE """The repository is visible to everyone.""" PUBLIC + + """The repository is visible only to users in the same business.""" + INTERNAL } -"""Audit log entry for a repo.remove_member event.""" -type RepoRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAuditEntryData & RepositoryAuditEntryData { +"""Audit log entry for a repository_visibility_change.disable event.""" +type RepositoryVisibilityChangeDisableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { """The action name""" action: String! @@ -17714,6 +28191,15 @@ type RepoRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAudit """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""" @@ -17731,18 +28217,6 @@ type RepoRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAudit """The HTTP URL for the organization""" 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""" user: User @@ -17756,25 +28230,10 @@ type RepoRemoveMemberAuditEntry implements Node & AuditEntry & OrganizationAudit """The HTTP URL for the user.""" userUrl: URI - - """The visibility of the repository""" - visibility: RepoRemoveMemberAuditEntryVisibility -} - -"""The privacy of a repository""" -enum RepoRemoveMemberAuditEntryVisibility { - """The repository is visible only to users in the same business.""" - INTERNAL - - """The repository is visible only to those with explicit access.""" - PRIVATE - - """The repository is visible to everyone.""" - PUBLIC } -"""Audit log entry for a repo.remove_topic event.""" -type RepoRemoveTopicAuditEntry implements Node & AuditEntry & RepositoryAuditEntryData & OrganizationAuditEntryData & TopicAuditEntryData { +"""Audit log entry for a repository_visibility_change.enable event.""" +type RepositoryVisibilityChangeEnableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & OrganizationAuditEntryData { """The action name""" action: String! @@ -17798,6 +28257,15 @@ type RepoRemoveTopicAuditEntry implements Node & AuditEntry & RepositoryAuditEnt """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""" @@ -17806,670 +28274,605 @@ type RepoRemoveTopicAuditEntry implements Node & AuditEntry & RepositoryAuditEnt """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 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 name of the topic added to the repository""" - topic: Topic - - """The name of the topic added to the repository""" - topicName: String - - """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 reasons a piece of content can be reported or minimized.""" -enum ReportedContentClassifiers { - """A spammy piece of content""" - SPAM - - """An abusive or harassing piece of content""" - ABUSE - - """An irrelevant piece of content""" - OFF_TOPIC - - """An outdated piece of content""" - OUTDATED - - """A duplicated piece of content""" - DUPLICATE - - """The content has been resolved""" - RESOLVED -} - -"""A repository contains the content for a project.""" -type Repository implements Node & ProjectOwner & PackageOwner & Subscribable & Starrable & UniformResourceLocatable & RepositoryInfo { - """A list of users that can be assigned to issues in this repository.""" - assignableUsers( - """Filters users with query on user name and login""" - query: String - - """Returns the elements in the list that come after the specified cursor.""" - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """The name of the Organization.""" + organizationName: String - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP path for the organization""" + organizationResourcePath: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): UserConnection! + """The HTTP URL for the organization""" + organizationUrl: URI - """A list of branch protection rules for this repository.""" - branchProtectionRules( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The user affected by the action""" + user: User - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP path for the user.""" + userResourcePath: URI - """Returns the last _n_ elements from the list.""" - last: Int - ): BranchProtectionRuleConnection! + """The HTTP URL for the user.""" + userUrl: URI +} - """Returns the code of conduct for this repository""" - codeOfConduct: CodeOfConduct +""" +A Dependabot alert for a repository with a dependency affected by a security vulnerability. +""" +type RepositoryVulnerabilityAlert implements Node & RepositoryNode { + """When was the alert auto-dismissed?""" + autoDismissedAt: DateTime - """A list of collaborators associated with the repository.""" - collaborators( - """Collaborators affiliation level with a repository.""" - affiliation: CollaboratorAffiliation + """When was the alert created?""" + createdAt: DateTime! - """Filters users with query on user name and login""" - query: String + """The associated Dependabot update""" + dependabotUpdate: DependabotUpdate - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The scope of an alert's dependency""" + dependencyScope: RepositoryVulnerabilityAlertDependencyScope - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Comment explaining the reason the alert was dismissed""" + dismissComment: String - """Returns the first _n_ elements from the list.""" - first: Int + """The reason the alert was dismissed""" + dismissReason: String - """Returns the last _n_ elements from the list.""" - last: Int - ): RepositoryCollaboratorConnection + """When was the alert dismissed?""" + dismissedAt: DateTime - """A list of commit comments associated with the repository.""" - commitComments( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The user who dismissed the alert""" + dismisser: User - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """When was the alert fixed?""" + fixedAt: DateTime + id: ID! - """Returns the first _n_ elements from the list.""" - first: Int + """Identifies the alert number.""" + number: Int! - """Returns the last _n_ elements from the list.""" - last: Int - ): CommitCommentConnection! + """The associated repository""" + repository: Repository! - """Returns a list of contact links associated to the repository""" - contactLinks: [RepositoryContactLink!] + """The associated security advisory""" + securityAdvisory: SecurityAdvisory - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The associated security vulnerability""" + securityVulnerability: SecurityVulnerability - """Identifies the primary key from the database.""" - databaseId: Int + """Identifies the state of the alert.""" + state: RepositoryVulnerabilityAlertState! - """The Ref associated with the repository's default branch.""" - defaultBranchRef: Ref + """The vulnerable manifest filename""" + vulnerableManifestFilename: String! - """ - Whether or not branches are automatically deleted when merged in this repository. - """ - deleteBranchOnMerge: Boolean! + """The vulnerable manifest path""" + vulnerableManifestPath: String! - """A list of deploy keys that are on this repository.""" - deployKeys( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The vulnerable requirements""" + vulnerableRequirements: String +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""The connection type for RepositoryVulnerabilityAlert.""" +type RepositoryVulnerabilityAlertConnection { + """A list of edges.""" + edges: [RepositoryVulnerabilityAlertEdge] - """Returns the first _n_ elements from the list.""" - first: Int + """A list of nodes.""" + nodes: [RepositoryVulnerabilityAlert] - """Returns the last _n_ elements from the list.""" - last: Int - ): DeployKeyConnection! + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Deployments associated with the repository""" - deployments( - """Environments to list deployments for""" - environments: [String!] + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """Ordering options for deployments returned from the connection.""" - orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} +"""The possible scopes of an alert's dependency.""" +enum RepositoryVulnerabilityAlertDependencyScope { + """A dependency that is leveraged during application runtime""" + RUNTIME - """Returns the elements in the list that come after the specified cursor.""" - after: String + """A dependency that is only used in development""" + DEVELOPMENT +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +"""An edge in a connection.""" +type RepositoryVulnerabilityAlertEdge { + """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: RepositoryVulnerabilityAlert +} - """Returns the last _n_ elements from the list.""" - last: Int - ): DeploymentConnection! +"""The possible states of an alert""" +enum RepositoryVulnerabilityAlertState { + """An alert that is still open.""" + OPEN - """The description of the repository.""" - description: String + """An alert that has been resolved by a code change.""" + FIXED - """The description of the repository rendered to HTML.""" - descriptionHTML: HTML! + """An alert that has been manually closed by a user.""" + DISMISSED - """The number of kilobytes this repository occupies on disk.""" - diskUsage: Int + """An alert that has been automatically closed by Dependabot.""" + AUTO_DISMISSED +} - """ - Returns how many forks there are of this repository in the whole network. - """ - forkCount: Int! +"""The possible states that can be requested when creating a check run.""" +enum RequestableCheckStatusState { + """The check suite or run has been queued.""" + QUEUED - """A list of direct forked repositories.""" - forks( - """If non-null, filters repositories according to privacy""" - privacy: RepositoryPrivacy + """The check suite or run is in progress.""" + IN_PROGRESS - """Ordering options for repositories returned from the connection""" - orderBy: RepositoryOrder + """The check suite or run has been completed.""" + COMPLETED - """ - 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 check suite or run is in waiting state.""" + WAITING - """ - 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 check suite or run is in pending state.""" + PENDING +} - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean +"""Types that can be requested reviewers.""" +union RequestedReviewer = Mannequin | Team | User - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""The connection type for RequestedReviewer.""" +type RequestedReviewerConnection { + """A list of edges.""" + edges: [RequestedReviewerEdge] - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """A list of nodes.""" + nodes: [RequestedReviewer] - """Returns the first _n_ elements from the list.""" - first: Int + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Returns the last _n_ elements from the list.""" - last: Int - ): RepositoryConnection! + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """The funding links for this repository""" - fundingLinks: [FundingLink!]! +"""An edge in a connection.""" +type RequestedReviewerEdge { + """A cursor for use in pagination.""" + cursor: String! - """Indicates if the repository has issues feature enabled.""" - hasIssuesEnabled: Boolean! + """The item at the end of the edge.""" + node: RequestedReviewer +} - """Indicates if the repository has the Projects feature enabled.""" - hasProjectsEnabled: Boolean! +"""Autogenerated input type of RequestReviews""" +input RequestReviewsInput { + """The Node ID of the pull request to modify.""" + pullRequestId: ID! - """Indicates if the repository has wiki feature enabled.""" - hasWikiEnabled: Boolean! + """The Node IDs of the user to request.""" + userIds: [ID!] - """The repository's URL.""" - homepageUrl: URI - id: ID! + """The Node IDs of the team to request.""" + teamIds: [ID!] - """The interaction ability settings for this repository.""" - interactionAbility: RepositoryInteractionAbility + """Add users to the set rather than replace.""" + union: Boolean = false - """Indicates if the repository is unmaintained.""" - isArchived: Boolean! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Returns true if blank issue creation is allowed""" - isBlankIssuesEnabled: Boolean! +"""Autogenerated return type of RequestReviews""" +type RequestReviewsPayload { + """Identifies the actor who performed the event.""" + actor: Actor - """Returns whether or not this repository disabled.""" - isDisabled: Boolean! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Returns whether or not this repository is empty.""" - isEmpty: Boolean! + """The pull request that is getting requests.""" + pullRequest: PullRequest - """Identifies if the repository is a fork.""" - isFork: Boolean! + """The edge from the pull request to the requested reviewers.""" + requestedReviewersEdge: UserEdge +} +"""Represents a type that can be required by a pull request for merging.""" +interface RequirableByPullRequest { """ - Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. + Whether this is required to pass before merging for a specific pull request. """ - isInOrganization: Boolean! - - """Indicates if the repository has been locked or not.""" - isLocked: Boolean! - - """Identifies if the repository is a mirror.""" - isMirror: Boolean! + isRequired( + """The id of the pull request this is required for""" + pullRequestId: ID - """Identifies if the repository is private.""" - isPrivate: Boolean! + """The number of the pull request this is required for""" + pullRequestNumber: Int + ): Boolean! +} - """Returns true if this repository has a security policy""" - isSecurityPolicyEnabled: Boolean +"""Parameters to be used for the required_deployments rule""" +type RequiredDeploymentsParameters { + """ + The environments that must be successfully deployed to before branches can be merged. + """ + requiredDeploymentEnvironments: [String!]! +} +"""Parameters to be used for the required_deployments rule""" +input RequiredDeploymentsParametersInput { """ - Identifies if the repository is a template that can be used to generate new repositories. + The environments that must be successfully deployed to before branches can be merged. """ - isTemplate: Boolean! + requiredDeploymentEnvironments: [String!]! +} - """Is this repository a user configuration repository?""" - isUserConfigurationRepository: Boolean! +""" +Represents a required status check for a protected branch, but not any specific run of that check. +""" +type RequiredStatusCheckDescription { + """The App that must provide this status in order for it to be accepted.""" + app: App - """Returns a single issue from the current repository by number.""" - issue( - """The number for the issue to be returned.""" - number: Int! - ): Issue + """The name of this status.""" + context: String! +} +"""Specifies the attributes for a new or updated required status check.""" +input RequiredStatusCheckInput { """ - Returns a single issue-like object from the current repository by number. + Status check context that must pass for commits to be accepted to the matching branch. """ - issueOrPullRequest( - """The number for the issue to be returned.""" - number: Int! - ): IssueOrPullRequest - - """Returns a list of issue templates associated to the repository""" - issueTemplates: [IssueTemplate!] - - """A list of issues that have been opened in the repository.""" - issues( - """Ordering options for issues returned from the connection.""" - orderBy: IssueOrder + context: String! - """A list of label names to filter the pull requests by.""" - labels: [String!] + """ + 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. + """ + appId: ID +} - """A list of states to filter the issues by.""" - states: [IssueState!] +"""Parameters to be used for the required_status_checks rule""" +type RequiredStatusChecksParameters { + """Status checks that are required.""" + requiredStatusChecks: [StatusCheckConfiguration!]! - """Filtering options for issues returned from the connection.""" - filterBy: IssueFilters + """ + 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. + """ + strictRequiredStatusChecksPolicy: Boolean! +} - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Parameters to be used for the required_status_checks rule""" +input RequiredStatusChecksParametersInput { + """Status checks that are required.""" + requiredStatusChecks: [StatusCheckConfigurationInput!]! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + 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. + """ + strictRequiredStatusChecksPolicy: Boolean! +} - """Returns the first _n_ elements from the list.""" - first: Int +"""Autogenerated input type of RerequestCheckSuite""" +input RerequestCheckSuiteInput { + """The Node ID of the repository.""" + repositoryId: ID! - """Returns the last _n_ elements from the list.""" - last: Int - ): IssueConnection! + """The Node ID of the check suite.""" + checkSuiteId: ID! - """Returns a single label by name""" - label( - """Label name""" - name: String! - ): Label + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """A list of labels associated with the repository.""" - labels( - """Ordering options for labels returned from the connection.""" - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} +"""Autogenerated return type of RerequestCheckSuite""" +type RerequestCheckSuitePayload { + """The requested check suite.""" + checkSuite: CheckSuite - """Returns the elements in the list that come after the specified cursor.""" - after: String + """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 +"""Autogenerated input type of ResolveReviewThread""" +input ResolveReviewThreadInput { + """The ID of the thread to resolve""" + threadId: ID! - """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 +"""Autogenerated return type of ResolveReviewThread""" +type ResolveReviewThreadPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """If provided, searches labels by name and description.""" - query: String - ): LabelConnection + """The thread to resolve.""" + thread: PullRequestReviewThread +} +"""Represents a private contribution a user made on GitHub.""" +type RestrictedContribution implements Contribution { """ - A list containing a breakdown of the language composition of the repository. + Whether this contribution is associated with a record you do not have access to. For + example, your own 'first issue' contribution may have been made on a repository you can no + longer access. + """ - 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 + isRestricted: Boolean! - """Order for connection""" - orderBy: LanguageOrder - ): LanguageConnection + """When this contribution was made.""" + occurredAt: DateTime! - """The license associated with the repository""" - licenseInfo: License + """The HTTP path for this contribution.""" + resourcePath: URI! - """The reason the repository has been locked.""" - lockReason: RepositoryLockReason + """The HTTP URL for this contribution.""" + url: URI! """ - A list of Users that can be mentioned in the context of the repository. + The user who made this contribution. + """ - mentionableUsers( - """Filters users with query on user name and login""" - query: String - - """Returns the elements in the list that come after the specified cursor.""" - after: String - - """ - Returns the elements in the list that come before the 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 PRs are merged with a merge commit on this repository.""" - mergeCommitAllowed: Boolean! + user: User! +} - """Returns a single milestone from the current repository by number.""" - milestone( - """The number for the milestone to be returned.""" - number: Int! - ): Milestone +"""Autogenerated input type of RetireSponsorsTier""" +input RetireSponsorsTierInput { + """The ID of the published tier to retire.""" + tierId: ID! - """A list of milestones associated with the repository.""" - milestones( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """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 +"""Autogenerated return type of RetireSponsorsTier""" +type RetireSponsorsTierPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Returns the first _n_ elements from the list.""" - first: Int + """The tier that was retired.""" + sponsorsTier: SponsorsTier +} - """Returns the last _n_ elements from the list.""" - last: Int +"""Autogenerated input type of RevertPullRequest""" +input RevertPullRequestInput { + """The ID of the pull request to revert.""" + pullRequestId: ID! - """Filter by the state of the milestones.""" - states: [MilestoneState!] + """The title of the revert pull request.""" + title: String - """Ordering options for milestones.""" - orderBy: MilestoneOrder + """The description of the revert pull request.""" + body: String - """Filters milestones with a query on the title""" - query: String - ): MilestoneConnection + """Indicates whether the revert pull request should be a draft.""" + draft: Boolean = false - """The repository's original mirror URL.""" - mirrorUrl: URI + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The name of the repository.""" - name: String! +"""Autogenerated return type of RevertPullRequest""" +type RevertPullRequestPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The repository's name with owner.""" - nameWithOwner: String! + """The pull request that was reverted.""" + pullRequest: PullRequest - """A Git object in the repository""" - object( - """The Git object ID""" - oid: GitObjectID + """The new pull request that reverts the input pull request.""" + revertPullRequest: PullRequest +} - """A Git revision expression suitable for rev-parse""" - expression: String - ): GitObject +""" +A user, team, or app who has the ability to dismiss a review on a protected branch. +""" +type ReviewDismissalAllowance implements Node { + """The actor that can dismiss.""" + actor: ReviewDismissalAllowanceActor - """The image used to represent this repository in Open Graph data.""" - openGraphImageUrl: URI! + """ + Identifies the branch protection rule associated with the allowed user, team, or app. + """ + branchProtectionRule: BranchProtectionRule + id: ID! +} - """The User owner of the repository.""" - owner: RepositoryOwner! +"""Types that can be an actor.""" +union ReviewDismissalAllowanceActor = App | Team | User - """A list of packages under the owner.""" - packages( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""The connection type for ReviewDismissalAllowance.""" +type ReviewDismissalAllowanceConnection { + """A list of edges.""" + edges: [ReviewDismissalAllowanceEdge] - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """A list of nodes.""" + nodes: [ReviewDismissalAllowance] - """Returns the first _n_ elements from the list.""" - first: Int + """Information to aid in pagination.""" + pageInfo: PageInfo! - """Returns the last _n_ elements from the list.""" - last: Int + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """Find packages by their names.""" - names: [String] +"""An edge in a connection.""" +type ReviewDismissalAllowanceEdge { + """A cursor for use in pagination.""" + cursor: String! - """Find packages in a repository by ID.""" - repositoryId: ID + """The item at the end of the edge.""" + node: ReviewDismissalAllowance +} - """Filter registry package by type.""" - packageType: PackageType +""" +Represents a 'review_dismissed' event on a given issue or pull request. +""" +type ReviewDismissedEvent implements Node & UniformResourceLocatable { + """Identifies the actor who performed the event.""" + actor: Actor - """Ordering of the returned packages.""" - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} - ): PackageConnection! + """Identifies the date and time when the object was created.""" + createdAt: DateTime! - """The repository parent, if this is a fork.""" - parent: Repository + """Identifies the primary key from the database.""" + databaseId: Int - """The primary language of the repository's code.""" - primaryLanguage: Language + """ + Identifies the optional message associated with the 'review_dismissed' event. + """ + dismissalMessage: String - """Find project by number.""" - project( - """The project number to find.""" - number: Int! - ): Project + """ + Identifies the optional message associated with the event, rendered to HTML. + """ + dismissalMessageHTML: String + id: ID! - """A list of projects under the owner.""" - projects( - """Ordering options for projects returned from the connection""" - orderBy: ProjectOrder + """ + Identifies the previous state of the review with the 'review_dismissed' event. + """ + previousReviewState: PullRequestReviewState! - """Query to search projects by, currently only searching by name.""" - search: String + """PullRequest referenced by event.""" + pullRequest: PullRequest! - """A list of states to filter the projects by.""" - states: [ProjectState!] + """Identifies the commit which caused the review to become stale.""" + pullRequestCommit: PullRequestCommit - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The HTTP path for this review dismissed event.""" + resourcePath: URI! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Identifies the review associated with the 'review_dismissed' event.""" + review: PullRequestReview - """Returns the first _n_ elements from the list.""" - first: Int + """The HTTP URL for this review dismissed event.""" + url: URI! +} - """Returns the last _n_ elements from the list.""" - last: Int - ): ProjectConnection! +"""A request for a user to review a pull request.""" +type ReviewRequest implements Node { + """Whether this request was created for a code owner""" + asCodeOwner: Boolean! - """The HTTP path listing the repository's projects""" - projectsResourcePath: URI! + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! - """The HTTP URL listing the repository's projects""" - projectsUrl: URI! + """Identifies the pull request associated with this review request.""" + pullRequest: PullRequest! - """Returns a single pull request from the current repository by number.""" - pullRequest( - """The number for the pull request to be returned.""" - number: Int! - ): PullRequest + """The reviewer that is requested.""" + requestedReviewer: RequestedReviewer +} - """A list of pull requests that have been opened in the repository.""" - pullRequests( - """A list of states to filter the pull requests by.""" - states: [PullRequestState!] +"""The connection type for ReviewRequest.""" +type ReviewRequestConnection { + """A list of edges.""" + edges: [ReviewRequestEdge] - """A list of label names to filter the pull requests by.""" - labels: [String!] + """A list of nodes.""" + nodes: [ReviewRequest] - """The head ref name to filter the pull requests by.""" - headRefName: String + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The base ref name to filter the pull requests by.""" - baseRefName: String + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """Ordering options for pull requests returned from the connection.""" - orderBy: IssueOrder +"""Represents an 'review_requested' event on a given pull request.""" +type ReviewRequestedEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """PullRequest referenced by event.""" + pullRequest: PullRequest! - """Returns the first _n_ elements from the list.""" - first: Int + """Identifies the reviewer whose review was requested.""" + requestedReviewer: RequestedReviewer +} - """Returns the last _n_ elements from the list.""" - last: Int - ): PullRequestConnection! +"""An edge in a connection.""" +type ReviewRequestEdge { + """A cursor for use in pagination.""" + cursor: String! - """Identifies when the repository was last pushed to.""" - pushedAt: DateTime + """The item at the end of the edge.""" + node: ReviewRequest +} - """Whether or not rebase-merging is enabled on this repository.""" - rebaseMergeAllowed: Boolean! +"""Represents an 'review_request_removed' event on a given pull request.""" +type ReviewRequestRemovedEvent implements Node { + """Identifies the actor who performed the event.""" + actor: Actor - """Fetch a given ref from the repository""" - 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 + """Identifies the date and time when the object was created.""" + createdAt: DateTime! + id: ID! - """Fetch a list of refs from the repository""" - refs( - """Filters refs with query on name""" - query: String + """PullRequest referenced by event.""" + pullRequest: PullRequest! - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Identifies the reviewer whose review request was removed.""" + requestedReviewer: RequestedReviewer +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +A hovercard context with a message describing the current code review state of the pull +request. - """Returns the first _n_ elements from the list.""" - first: Int +""" +type ReviewStatusHovercardContext implements HovercardContext { + """A string describing this context""" + message: String! - """Returns the last _n_ elements from the list.""" - last: Int + """An octicon to accompany this context""" + octicon: String! - """A ref name prefix like `refs/heads/`, `refs/tags/`, etc.""" - refPrefix: String! + """The current status of the pull request with respect to code review.""" + reviewDecision: PullRequestReviewDecision +} - """DEPRECATED: use orderBy. The ordering direction.""" - direction: OrderDirection +"""Autogenerated input type of RevokeEnterpriseOrganizationsMigratorRole""" +input RevokeEnterpriseOrganizationsMigratorRoleInput { + """ + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. + """ + enterpriseId: ID! - """Ordering options for refs returned from the connection.""" - orderBy: RefOrder - ): RefConnection + """The login of the user to revoke the migrator role""" + login: String! - """Lookup a single release given various criteria.""" - release( - """The name of the Tag the Release was created from""" - tagName: String! - ): Release + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of RevokeEnterpriseOrganizationsMigratorRole""" +type RevokeEnterpriseOrganizationsMigratorRolePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """List of releases which are dependent on this repository.""" - releases( + """ + The organizations that had the migrator role revoked for the given user. + """ + organizations( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -18483,153 +28886,298 @@ type Repository implements Node & ProjectOwner & PackageOwner & Subscribable & S """Returns the last _n_ elements from the list.""" last: Int + ): OrganizationConnection +} - """Order for connection""" - orderBy: ReleaseOrder - ): ReleaseConnection! +"""Autogenerated input type of RevokeMigratorRole""" +input RevokeMigratorRoleInput { + """The ID of the organization that the user/team belongs to.""" + organizationId: ID! - """A list of applied repository-topic associations for this repository.""" - repositoryTopics( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """The user login or Team slug to revoke the migrator role from.""" + actor: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Specifies the type of the actor, can be either USER or TEAM.""" + actorType: ActorType! - """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 - ): RepositoryTopicConnection! +"""Autogenerated return type of RevokeMigratorRole""" +type RevokeMigratorRolePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The HTTP path for this repository""" - resourcePath: URI! + """Did the operation succeed?""" + success: Boolean +} - """The security policy URL.""" - securityPolicyUrl: URI +"""Possible roles a user may have in relation to an organization.""" +enum RoleInOrganization { + """A user with full administrative access to the organization.""" + OWNER - """ - A description of the repository, rendered to HTML without any links in it. - """ - shortDescriptionHTML( - """How many characters to return.""" - limit: Int = 200 - ): HTML! + """A user who is a direct member of the organization.""" + DIRECT_MEMBER - """Whether or not squash-merging is enabled on this repository.""" - squashMergeAllowed: Boolean! + """A user who is unaffiliated with the organization.""" + UNAFFILIATED +} - """The SSH URL to clone this repository""" - sshUrl: GitSSHRemote! +"""The bypass mode for a rule or ruleset.""" +enum RuleBypassMode { + """Bypassing is disabled""" + NONE + + """Those with bypass permission at the repository level can bypass""" + REPOSITORY + + """Those with bypass permission at the organization level can bypass""" + ORGANIZATION +} + +"""The level of enforcement for a rule or ruleset.""" +enum RuleEnforcement { + """Do not evaluate or enforce rules""" + DISABLED + + """Rules will be enforced""" + ACTIVE """ - Returns a count of how many stargazers there are on this object - + Allow admins to test rules before enforcing them. Admins can view insights on + the Rule Insights page (`evaluate` is only available with GitHub Enterprise). """ - stargazerCount: Int! + EVALUATE +} - """A list of users who have starred this starrable.""" - stargazers( - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Types which can be parameters for `RepositoryRule` objects.""" +union RuleParameters = BranchNamePatternParameters | CommitAuthorEmailPatternParameters | CommitMessagePatternParameters | CommitterEmailPatternParameters | PullRequestParameters | RequiredDeploymentsParameters | RequiredStatusChecksParameters | TagNamePatternParameters | UpdateParameters - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Specifies the parameters for a `RepositoryRule` object. Only one of the fields should be specified. +""" +input RuleParametersInput { + """Parameters used for the `update` rule type""" + update: UpdateParametersInput - """Returns the first _n_ elements from the list.""" - first: Int + """Parameters used for the `required_deployments` rule type""" + requiredDeployments: RequiredDeploymentsParametersInput - """Returns the last _n_ elements from the list.""" - last: Int + """Parameters used for the `pull_request` rule type""" + pullRequest: PullRequestParametersInput - """Order for connection""" - orderBy: StarOrder - ): StargazerConnection! + """Parameters used for the `required_status_checks` rule type""" + requiredStatusChecks: RequiredStatusChecksParametersInput - """ - Returns a list of all submodules in this repository parsed from the - .gitmodules file as of the default branch's HEAD commit. - """ - submodules( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Parameters used for the `commit_message_pattern` rule type""" + commitMessagePattern: CommitMessagePatternParametersInput - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Parameters used for the `commit_author_email_pattern` rule type""" + commitAuthorEmailPattern: CommitAuthorEmailPatternParametersInput - """Returns the first _n_ elements from the list.""" - first: Int + """Parameters used for the `committer_email_pattern` rule type""" + committerEmailPattern: CommitterEmailPatternParametersInput - """Returns the last _n_ elements from the list.""" - last: Int - ): SubmoduleConnection! + """Parameters used for the `branch_name_pattern` rule type""" + branchNamePattern: BranchNamePatternParametersInput - """Temporary authentication token for cloning this repository.""" - tempCloneToken: String + """Parameters used for the `tag_name_pattern` rule type""" + tagNamePattern: TagNamePatternParametersInput +} - """The repository from which this repository was generated, if any.""" - templateRepository: Repository +"""Types which can have `RepositoryRule` objects.""" +union RuleSource = Organization | Repository - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! +""" +The possible digest algorithms used to sign SAML requests for an identity provider. +""" +enum SamlDigestAlgorithm { + """SHA1""" + SHA1 - """The HTTP URL for this repository""" - url: URI! + """SHA256""" + SHA256 + + """SHA384""" + SHA384 + + """SHA512""" + SHA512 +} + +""" +The possible signature algorithms used to sign SAML requests for a Identity Provider. +""" +enum SamlSignatureAlgorithm { + """RSA-SHA1""" + RSA_SHA1 + + """RSA-SHA256""" + RSA_SHA256 + + """RSA-SHA384""" + RSA_SHA384 + + """RSA-SHA512""" + RSA_SHA512 +} + +"""A Saved Reply is text a user can use to reply quickly.""" +type SavedReply implements Node { + """The body of the saved reply.""" + body: String! + + """The saved reply body rendered to HTML.""" + bodyHTML: HTML! + + """Identifies the primary key from the database.""" + databaseId: Int + id: ID! + + """The title of the saved reply.""" + title: String! + + """The user that saved this reply.""" + user: Actor +} + +"""The connection type for SavedReply.""" +type SavedReplyConnection { + """A list of edges.""" + edges: [SavedReplyEdge] + + """A list of nodes.""" + nodes: [SavedReply] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type SavedReplyEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: SavedReply +} + +"""Ordering options for saved reply connections.""" +input SavedReplyOrder { + """The field to order saved replies by.""" + field: SavedReplyOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""Properties by which saved reply connections can be ordered.""" +enum SavedReplyOrderField { + """Order saved reply by when they were updated.""" + UPDATED_AT +} + +"""The results of a search.""" +union SearchResultItem = App | Discussion | Issue | MarketplaceListing | Organization | PullRequest | Repository | User +""" +A list of results that matched against a search query. Regardless of the number +of matches, a maximum of 1,000 results will be available across all types, +potentially split across many pages. +""" +type SearchResultItemConnection { """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + 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. """ - usesCustomOpenGraphImage: Boolean! + codeCount: Int! - """Indicates whether the viewer has admin permissions on this repository.""" - viewerCanAdminister: Boolean! + """ + 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! - """Can the current viewer create new projects on this owner.""" - viewerCanCreateProjects: Boolean! + """A list of edges.""" + edges: [SearchResultItemEdge] """ - Check if the viewer is able to change their subscription status for 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. """ - viewerCanSubscribe: Boolean! + issueCount: Int! - """Indicates whether the viewer can update the topics of this repository.""" - viewerCanUpdateTopics: Boolean! + """A list of nodes.""" + nodes: [SearchResultItem] - """The last commit email for the viewer.""" - viewerDefaultCommitEmail: String + """Information to aid in pagination.""" + pageInfo: PageInfo! """ - The last used merge method by the viewer or the default for the repository. + 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. """ - viewerDefaultMergeMethod: PullRequestMergeMethod! + repositoryCount: Int! """ - Returns a boolean indicating whether the viewing user has starred this starrable. + 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. """ - viewerHasStarred: Boolean! + userCount: Int! """ - The users permission level on the repository. Will return null if authenticated as an GitHub App. + 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. """ - viewerPermission: RepositoryPermission + wikiCount: Int! +} + +"""An edge in a connection.""" +type SearchResultItemEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: SearchResultItem + + """Text matches on the result found.""" + textMatches: [TextMatch] +} + +"""Represents the individual results of a search.""" +enum SearchType { + """Returns results matching issues in repositories.""" + ISSUE + + """Returns results matching repositories.""" + REPOSITORY + + """Returns results matching users and organizations on GitHub.""" + USER + + """Returns matching discussions in repositories.""" + DISCUSSION +} - """A list of emails this viewer can commit with.""" - viewerPossibleCommitEmails: [String!] +"""A GitHub Security Advisory""" +type SecurityAdvisory implements Node { + """The classification of the advisory""" + classification: SecurityAdvisoryClassification! - """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. - """ - viewerSubscription: SubscriptionState + """The CVSS associated with this advisory""" + cvss: CVSS! - """A list of vulnerability alerts that are on this repository.""" - vulnerabilityAlerts( + """CWEs associated with this Advisory""" + cwes( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -18643,10 +29191,62 @@ type Repository implements Node & ProjectOwner & PackageOwner & Subscribable & S """Returns the last _n_ elements from the list.""" last: Int - ): RepositoryVulnerabilityAlertConnection + ): CWEConnection! + + """Identifies the primary key from the database.""" + databaseId: Int + + """This is a long plaintext description of the advisory""" + description: String! + + """The GitHub Security Advisory ID""" + ghsaId: String! + id: ID! + + """A list of identifiers for this advisory""" + identifiers: [SecurityAdvisoryIdentifier!]! + + """The permalink for the advisory's dependabot alerts page""" + notificationsPermalink: URI + + """The organization that originated the advisory""" + origin: String! + + """The permalink for the advisory""" + permalink: URI + + """When the advisory was published""" + publishedAt: DateTime! + + """A list of references for this advisory""" + references: [SecurityAdvisoryReference!]! + + """The severity of the advisory""" + severity: SecurityAdvisorySeverity! + + """A short plaintext summary of the advisory""" + summary: String! + + """When the advisory was last updated""" + updatedAt: DateTime! + + """Vulnerabilities associated with this Advisory""" + vulnerabilities( + """Ordering options for the returned topics.""" + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + + """An ecosystem to filter vulnerabilities by.""" + ecosystem: SecurityAdvisoryEcosystem + + """A package name to filter vulnerabilities by.""" + package: String + + """A list of severities to filter vulnerabilities by.""" + severities: [SecurityAdvisorySeverity!] + + """A list of advisory classifications to filter vulnerabilities by.""" + classifications: [SecurityAdvisoryClassification!] - """A list of users watching the repository.""" - watchers( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -18660,46 +29260,28 @@ type Repository implements Node & ProjectOwner & PackageOwner & Subscribable & S """Returns the last _n_ elements from the list.""" last: Int - ): UserConnection! -} - -"""The affiliation of a user to a repository""" -enum RepositoryAffiliation { - """Repositories that are owned by the authenticated user.""" - OWNER - - """Repositories that the user has been added to as a collaborator.""" - COLLABORATOR + ): SecurityVulnerabilityConnection! - """ - Repositories that the user has access to through being a member of an - organization. This includes every repository on every team that the user is on. - """ - ORGANIZATION_MEMBER + """When the advisory was withdrawn, if it has been withdrawn""" + withdrawnAt: DateTime } -"""Metadata for an audit entry with action repo.*""" -interface RepositoryAuditEntryData { - """The repository associated with the action""" - repository: Repository - - """The name of the repository""" - repositoryName: String - - """The HTTP path for the repository""" - repositoryResourcePath: URI +"""Classification of the advisory.""" +enum SecurityAdvisoryClassification { + """Classification of general advisories.""" + GENERAL - """The HTTP URL for the repository""" - repositoryUrl: URI + """Classification of malware advisories.""" + MALWARE } -"""The connection type for User.""" -type RepositoryCollaboratorConnection { +"""The connection type for SecurityAdvisory.""" +type SecurityAdvisoryConnection { """A list of edges.""" - edges: [RepositoryCollaboratorEdge] + edges: [SecurityAdvisoryEdge] """A list of nodes.""" - nodes: [User] + nodes: [SecurityAdvisory] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -18708,268 +29290,169 @@ type RepositoryCollaboratorConnection { totalCount: Int! } -"""Represents a user who is a collaborator of a repository.""" -type RepositoryCollaboratorEdge { - """A cursor for use in pagination.""" - cursor: String! - node: User! - - """The permission the user has on the repository.""" - permission: RepositoryPermission! - - """A list of sources for the user's access to the repository.""" - permissionSources: [PermissionSource!] -} - -"""A list of repositories owned by the subject.""" -type RepositoryConnection { - """A list of edges.""" - edges: [RepositoryEdge] - - """A list of nodes.""" - nodes: [Repository] - - """Information to aid in pagination.""" - pageInfo: PageInfo! +"""The possible ecosystems of a security vulnerability's package.""" +enum SecurityAdvisoryEcosystem { + """PHP packages hosted at packagist.org""" + COMPOSER - """Identifies the total count of items in the connection.""" - totalCount: Int! + """Erlang/Elixir packages hosted at hex.pm""" + ERLANG - """The total size in kilobytes of all repositories in the connection.""" - totalDiskUsage: Int! -} + """GitHub Actions""" + ACTIONS -"""A repository contact link.""" -type RepositoryContactLink { - """The contact link purpose.""" - about: String! + """Go modules""" + GO - """The contact link name.""" - name: String! + """Java artifacts hosted at the Maven central repository""" + MAVEN - """The contact link URL.""" - url: URI! -} + """JavaScript packages hosted at npmjs.com""" + NPM -"""The reason a repository is listed as 'contributed'.""" -enum RepositoryContributionType { - """Created a commit""" - COMMIT + """.NET packages hosted at the NuGet Gallery""" + NUGET - """Created an issue""" - ISSUE + """Python packages hosted at PyPI.org""" + PIP - """Created a pull request""" - PULL_REQUEST + """Dart packages hosted at pub.dev""" + PUB - """Created the repository""" - REPOSITORY + """Ruby gems hosted at RubyGems.org""" + RUBYGEMS - """Reviewed a pull request""" - PULL_REQUEST_REVIEW + """Rust crates""" + RUST } """An edge in a connection.""" -type RepositoryEdge { +type SecurityAdvisoryEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: Repository + node: SecurityAdvisory } -"""A subset of repository info.""" -interface RepositoryInfo { - """Identifies the date and time when the object was created.""" - createdAt: DateTime! - - """The description of the repository.""" - description: String - - """The description of the repository rendered to HTML.""" - descriptionHTML: HTML! - - """ - Returns how many forks there are of this repository in the whole network. - """ - forkCount: Int! - - """Indicates if the repository has issues feature enabled.""" - hasIssuesEnabled: Boolean! - - """Indicates if the repository has the Projects feature enabled.""" - hasProjectsEnabled: Boolean! - - """Indicates if the repository has wiki feature enabled.""" - hasWikiEnabled: Boolean! - - """The repository's URL.""" - homepageUrl: URI - - """Indicates if the repository is unmaintained.""" - isArchived: Boolean! - - """Identifies if the repository is a fork.""" - isFork: Boolean! - - """ - Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. - """ - isInOrganization: Boolean! - - """Indicates if the repository has been locked or not.""" - isLocked: Boolean! - - """Identifies if the repository is a mirror.""" - isMirror: Boolean! - - """Identifies if the repository is private.""" - isPrivate: Boolean! - - """ - Identifies if the repository is a template that can be used to generate new repositories. - """ - isTemplate: Boolean! - - """The license associated with the repository""" - licenseInfo: License - - """The reason the repository has been locked.""" - lockReason: RepositoryLockReason - - """The repository's original mirror URL.""" - mirrorUrl: URI - - """The name of the repository.""" - name: String! - - """The repository's name with owner.""" - nameWithOwner: String! - - """The image used to represent this repository in Open Graph data.""" - openGraphImageUrl: URI! - - """The User owner of the repository.""" - owner: RepositoryOwner! - - """Identifies when the repository was last pushed to.""" - pushedAt: DateTime - - """The HTTP path for this repository""" - resourcePath: URI! - - """ - A description of the repository, rendered to HTML without any links in it. - """ - shortDescriptionHTML( - """How many characters to return.""" - limit: Int = 200 - ): HTML! +"""A GitHub Security Advisory Identifier""" +type SecurityAdvisoryIdentifier { + """The identifier type, e.g. GHSA, CVE""" + type: String! - """Identifies the date and time when the object was last updated.""" - updatedAt: DateTime! + """The identifier""" + value: String! +} - """The HTTP URL for this repository""" - url: URI! +"""An advisory identifier to filter results on.""" +input SecurityAdvisoryIdentifierFilter { + """The identifier type.""" + type: SecurityAdvisoryIdentifierType! - """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. - """ - usesCustomOpenGraphImage: Boolean! + """The identifier string. Supports exact or partial matching.""" + value: String! } -"""Repository interaction limit that applies to this object.""" -type RepositoryInteractionAbility { - """The time the currently active limit expires.""" - expiresAt: DateTime - - """The current limit that is enabled on this object.""" - limit: RepositoryInteractionLimit! +"""Identifier formats available for advisories.""" +enum SecurityAdvisoryIdentifierType { + """Common Vulnerabilities and Exposures Identifier.""" + CVE - """The origin of the currently active interaction limit.""" - origin: RepositoryInteractionLimitOrigin! + """GitHub Security Advisory ID.""" + GHSA } -"""A repository interaction limit.""" -enum RepositoryInteractionLimit { - """ - Users that have recently created their account will be unable to interact with the repository. - """ - EXISTING_USERS +"""Ordering options for security advisory connections""" +input SecurityAdvisoryOrder { + """The field to order security advisories by.""" + field: SecurityAdvisoryOrderField! - """ - Users that have not previously committed to a repository’s default branch will be unable to interact with the repository. - """ - CONTRIBUTORS_ONLY + """The ordering direction.""" + direction: OrderDirection! +} - """ - Users that are not collaborators will not be able to interact with the repository. - """ - COLLABORATORS_ONLY +"""Properties by which security advisory connections can be ordered.""" +enum SecurityAdvisoryOrderField { + """Order advisories by publication time""" + PUBLISHED_AT - """No interaction limits are enabled.""" - NO_LIMIT + """Order advisories by update time""" + UPDATED_AT } -"""The length for a repository interaction limit to be enabled for.""" -enum RepositoryInteractionLimitExpiry { - """The interaction limit will expire after 1 day.""" - ONE_DAY - - """The interaction limit will expire after 3 days.""" - THREE_DAYS +"""An individual package""" +type SecurityAdvisoryPackage { + """The ecosystem the package belongs to, e.g. RUBYGEMS, NPM""" + ecosystem: SecurityAdvisoryEcosystem! - """The interaction limit will expire after 1 week.""" - ONE_WEEK + """The package name""" + name: String! +} - """The interaction limit will expire after 1 month.""" - ONE_MONTH +"""An individual package version""" +type SecurityAdvisoryPackageVersion { + """The package name or version""" + identifier: String! +} - """The interaction limit will expire after 6 months.""" - SIX_MONTHS +"""A GitHub Security Advisory Reference""" +type SecurityAdvisoryReference { + """A publicly accessible reference""" + url: URI! } -"""Indicates where an interaction limit is configured.""" -enum RepositoryInteractionLimitOrigin { - """A limit that is configured at the repository level.""" - REPOSITORY +"""Severity of the vulnerability.""" +enum SecurityAdvisorySeverity { + """Low.""" + LOW - """A limit that is configured at the organization level.""" - ORGANIZATION + """Moderate.""" + MODERATE - """A limit that is configured at the user-wide level.""" - USER + """High.""" + HIGH + + """Critical.""" + CRITICAL } -"""An invitation for a user to be added to a repository.""" -type RepositoryInvitation implements Node { - """The email address that received the invitation.""" - email: String - id: ID! +"""An individual vulnerability within an Advisory""" +type SecurityVulnerability { + """The Advisory associated with this Vulnerability""" + advisory: SecurityAdvisory! - """The user who received the invitation.""" - invitee: User + """The first version containing a fix for the vulnerability""" + firstPatchedVersion: SecurityAdvisoryPackageVersion - """The user who created the invitation.""" - inviter: User! + """A description of the vulnerable package""" + package: SecurityAdvisoryPackage! - """The permalink for this repository invitation.""" - permalink: URI! + """The severity of the vulnerability within this package""" + severity: SecurityAdvisorySeverity! - """The permission granted on this repository by this invitation.""" - permission: RepositoryPermission! + """When the vulnerability was last updated""" + updatedAt: DateTime! - """The Repository the user is invited to.""" - repository: RepositoryInfo + """ + 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 RepositoryInvitation.""" -type RepositoryInvitationConnection { +"""The connection type for SecurityVulnerability.""" +type SecurityVulnerabilityConnection { """A list of edges.""" - edges: [RepositoryInvitationEdge] + edges: [SecurityVulnerabilityEdge] """A list of nodes.""" - nodes: [RepositoryInvitation] + nodes: [SecurityVulnerability] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -18979,208 +29462,188 @@ type RepositoryInvitationConnection { } """An edge in a connection.""" -type RepositoryInvitationEdge { +type SecurityVulnerabilityEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: RepositoryInvitation + node: SecurityVulnerability } -"""Ordering options for repository invitation connections.""" -input RepositoryInvitationOrder { - """The field to order repository invitations by.""" - field: RepositoryInvitationOrderField! +"""Ordering options for security vulnerability connections""" +input SecurityVulnerabilityOrder { + """The field to order security vulnerabilities by.""" + field: SecurityVulnerabilityOrderField! """The ordering direction.""" direction: OrderDirection! } -"""Properties by which repository invitation connections can be ordered.""" -enum RepositoryInvitationOrderField { - """Order repository invitations by creation time""" - CREATED_AT +"""Properties by which security vulnerability connections can be ordered.""" +enum SecurityVulnerabilityOrderField { + """Order vulnerability by update time""" + UPDATED_AT } -"""The possible reasons a given repository could be in a locked state.""" -enum RepositoryLockReason { - """The repository is locked due to a move.""" - MOVING +"""Autogenerated input type of SetEnterpriseIdentityProvider""" +input SetEnterpriseIdentityProviderInput { + """The ID of the enterprise on which to set an identity provider.""" + enterpriseId: ID! - """The repository is locked due to a billing related reason.""" - BILLING + """The URL endpoint for the identity provider's SAML SSO.""" + ssoUrl: URI! - """The repository is locked due to a rename.""" - RENAME + """The Issuer Entity ID for the SAML identity provider""" + issuer: String - """The repository is locked due to a migration.""" - MIGRATING -} + """ + The x509 certificate used by the identity provider to sign assertions and responses. + """ + idpCertificate: String! -"""Represents a object that belongs to a repository.""" -interface RepositoryNode { - """The repository associated with this node.""" - repository: Repository! -} + """ + The signature algorithm used to sign SAML requests for the identity provider. + """ + signatureMethod: SamlSignatureAlgorithm! -"""Ordering options for repository connections""" -input RepositoryOrder { - """The field to order repositories by.""" - field: RepositoryOrderField! + """ + The digest algorithm used to sign SAML requests for the identity provider. + """ + digestMethod: SamlDigestAlgorithm! - """The ordering direction.""" - direction: OrderDirection! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String } -"""Properties by which repository connections can be ordered.""" -enum RepositoryOrderField { - """Order repositories by creation time""" - CREATED_AT +"""Autogenerated return type of SetEnterpriseIdentityProvider""" +type SetEnterpriseIdentityProviderPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """Order repositories by update time""" - UPDATED_AT + """The identity provider for the enterprise.""" + identityProvider: EnterpriseIdentityProvider +} - """Order repositories by push time""" - PUSHED_AT +"""Autogenerated input type of SetOrganizationInteractionLimit""" +input SetOrganizationInteractionLimitInput { + """The ID of the organization to set a limit for.""" + organizationId: ID! - """Order repositories by name""" - NAME + """The limit to set.""" + limit: RepositoryInteractionLimit! - """Order repositories by number of stargazers""" - STARGAZERS -} + """When this limit should expire.""" + expiry: RepositoryInteractionLimitExpiry -"""Represents an owner of a Repository.""" -interface RepositoryOwner { - """A URL pointing to the owner's public avatar.""" - avatarUrl( - """The size of the resulting square image.""" - size: Int - ): URI! - id: ID! + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The username used to login.""" - login: String! +"""Autogenerated return type of SetOrganizationInteractionLimit""" +type SetOrganizationInteractionLimitPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """A list of repositories that the user owns.""" - repositories( - """If non-null, filters repositories according to privacy""" - privacy: RepositoryPrivacy + """The organization that the interaction limit was set for.""" + organization: Organization +} - """Ordering options for repositories returned from the connection""" - orderBy: RepositoryOrder +"""Autogenerated input type of SetRepositoryInteractionLimit""" +input SetRepositoryInteractionLimitInput { + """The ID of the repository to set a limit for.""" + repositoryId: ID! - """ - 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 limit to set.""" + limit: RepositoryInteractionLimit! - """ - 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] + """When this limit should expire.""" + expiry: RepositoryInteractionLimitExpiry - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """Returns the elements in the list that come after the specified cursor.""" - after: String +"""Autogenerated return type of SetRepositoryInteractionLimit""" +type SetRepositoryInteractionLimitPayload { + """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 repository that the interaction limit was set for.""" + repository: Repository +} - """Returns the first _n_ elements from the list.""" - first: Int +"""Autogenerated input type of SetUserInteractionLimit""" +input SetUserInteractionLimitInput { + """The ID of the user to set a limit for.""" + userId: ID! - """Returns the last _n_ elements from the list.""" - last: Int + """The limit to set.""" + limit: RepositoryInteractionLimit! - """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean - ): RepositoryConnection! + """When this limit should expire.""" + expiry: RepositoryInteractionLimitExpiry - """Find Repository.""" - repository( - """Name of Repository to find.""" - name: String! - ): Repository + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} - """The HTTP URL for the owner.""" - resourcePath: URI! +"""Autogenerated return type of SetUserInteractionLimit""" +type SetUserInteractionLimitPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String - """The HTTP URL for the owner.""" - url: URI! + """The user that the interaction limit was set for.""" + user: User } -"""The access level to a repository""" -enum RepositoryPermission { - """ - Can read, clone, and push to this repository. Can also manage issues, pull - requests, and repository settings, including adding collaborators - """ - ADMIN +"""Represents an S/MIME signature on a Commit or Tag.""" +type SmimeSignature implements GitSignature { + """Email used to sign this object.""" + email: String! - """ - Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings - """ - MAINTAIN + """True if the signature is valid and verified by GitHub.""" + isValid: Boolean! """ - Can read, clone, and push to this repository. Can also manage issues and pull requests + Payload for GPG signing object. Raw ODB object without the signature header. """ - WRITE + payload: String! - """ - Can read and clone this repository. Can also manage issues and pull requests - """ - TRIAGE + """ASCII-armored signature header from object.""" + signature: String! + + """GitHub user corresponding to the email signing this commit.""" + signer: User """ - Can read and clone this repository. Can also open and comment on issues and pull requests + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. """ - READ -} - -"""The privacy of a repository""" -enum RepositoryPrivacy { - """Public""" - PUBLIC + state: GitSignatureState! - """Private""" - PRIVATE + """True if the signature was made with GitHub's signing key.""" + wasSignedByGitHub: Boolean! } -"""A repository-topic connects a repository to a topic.""" -type RepositoryTopic implements Node & UniformResourceLocatable { - id: ID! - - """The HTTP path for this repository-topic.""" - resourcePath: URI! +"""Social media profile associated with a user.""" +type SocialAccount { + """Name of the social media account as it appears on the profile.""" + displayName: String! - """The topic.""" - topic: Topic! + """Software or company that hosts the social media account.""" + provider: SocialAccountProvider! - """The HTTP URL for this repository-topic.""" + """URL of the social media account.""" url: URI! } -"""The connection type for RepositoryTopic.""" -type RepositoryTopicConnection { +"""The connection type for SocialAccount.""" +type SocialAccountConnection { """A list of edges.""" - edges: [RepositoryTopicEdge] + edges: [SocialAccountEdge] """A list of nodes.""" - nodes: [RepositoryTopic] + nodes: [SocialAccount] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -19190,353 +29653,357 @@ type RepositoryTopicConnection { } """An edge in a connection.""" -type RepositoryTopicEdge { +type SocialAccountEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: RepositoryTopic -} - -"""The repository's visibility level.""" -enum RepositoryVisibility { - """The repository is visible only to those with explicit access.""" - PRIVATE - - """The repository is visible to everyone.""" - PUBLIC - - """The repository is visible only to users in the same business.""" - INTERNAL + node: SocialAccount } -"""Audit log entry for a repository_visibility_change.disable event.""" -type RepositoryVisibilityChangeDisableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & 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 +"""Software or company that hosts social media accounts.""" +enum SocialAccountProvider { + """ + Catch-all for social media providers that do not yet have specific handling. + """ + GENERIC - """The time the action was initiated""" - createdAt: PreciseDateTime! + """Social media and networking website.""" + FACEBOOK - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI + """Fork of Mastodon with a greater focus on local posting.""" + HOMETOWN - """The slug of the enterprise.""" - enterpriseSlug: String + """Social media website with a focus on photo and video sharing.""" + INSTAGRAM - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI - id: ID! + """Professional networking website.""" + LINKEDIN - """The corresponding operation type for the action""" - operationType: OperationType + """Open-source federated microblogging service.""" + MASTODON - """The Organization associated with the Audit Entry.""" - organization: Organization + """Social news aggregation and discussion website.""" + REDDIT - """The name of the Organization.""" - organizationName: String + """Live-streaming service.""" + TWITCH - """The HTTP path for the organization""" - organizationResourcePath: URI + """Microblogging website.""" + TWITTER - """The HTTP URL for the organization""" - organizationUrl: URI + """Online video platform.""" + YOUTUBE +} - """The user affected by the action""" - user: User +"""Entities that can sponsor others via GitHub Sponsors""" +union Sponsor = Organization | User +"""Entities that can sponsor or be sponsored through GitHub Sponsors.""" +interface Sponsorable { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). """ - userLogin: String - - """The HTTP path for the user.""" - userResourcePath: URI - - """The HTTP URL for the user.""" - userUrl: URI -} - -"""Audit log entry for a repository_visibility_change.enable event.""" -type RepositoryVisibilityChangeEnableAuditEntry implements Node & AuditEntry & EnterpriseAuditEntryData & 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 + estimatedNextSponsorsPayoutInCents: Int! - """The HTTP URL for the actor.""" - actorUrl: URI + """True if this user/organization has a GitHub Sponsors listing.""" + hasSponsorsListing: Boolean! - """The time the action was initiated""" - createdAt: PreciseDateTime! + """Whether the given account is sponsoring this user/organization.""" + isSponsoredBy( + """The target account's login.""" + accountLogin: String! + ): Boolean! - """The HTTP path for this enterprise.""" - enterpriseResourcePath: URI + """True if the viewer is sponsored by this user/organization.""" + isSponsoringViewer: Boolean! - """The slug of the enterprise.""" - enterpriseSlug: String + """ + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). + """ + monthlyEstimatedSponsorsIncomeInCents: Int! - """The HTTP URL for this enterprise.""" - enterpriseUrl: URI - id: ID! + """List of users and organizations this entity is sponsoring.""" + sponsoring( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The corresponding operation type for the action""" - operationType: OperationType + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The Organization associated with the Audit Entry.""" - organization: Organization + """Returns the first _n_ elements from the list.""" + first: Int - """The name of the Organization.""" - organizationName: String + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP path for the organization""" - organizationResourcePath: URI + """ + Ordering options for the users and organizations returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! - """The HTTP URL for the organization""" - organizationUrl: URI + """List of sponsors for this user or organization.""" + sponsors( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The user affected by the action""" - user: User + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP path for the user.""" - userResourcePath: URI + """Returns the last _n_ elements from the list.""" + last: Int - """The HTTP URL for the user.""" - userUrl: URI -} + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. + """ + tierId: ID -"""A alert for a repository with an affected vulnerability.""" -type RepositoryVulnerabilityAlert implements Node & RepositoryNode { - """When was the alert created?""" - createdAt: DateTime! + """Ordering options for sponsors returned from the connection.""" + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! - """The reason the alert was dismissed""" - dismissReason: String + """Events involving this sponsorable, such as new sponsorships.""" + sponsorsActivities( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """When was the alert dimissed?""" - dismissedAt: DateTime + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The user who dismissed the alert""" - dismisser: User - id: ID! + """Returns the first _n_ elements from the list.""" + first: Int - """The associated repository""" - repository: Repository! + """Returns the last _n_ elements from the list.""" + last: Int - """The associated security advisory""" - securityAdvisory: SecurityAdvisory + """ + 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 - """The associated security vulnerablity""" - securityVulnerability: SecurityVulnerability + """Filter activities to those that occurred on or after this time.""" + since: DateTime - """The vulnerable manifest filename""" - vulnerableManifestFilename: String! + """Filter activities to those that occurred before this time.""" + until: DateTime - """The vulnerable manifest path""" - vulnerableManifestPath: String! + """Ordering options for activity returned from the connection.""" + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} - """The vulnerable requirements""" - vulnerableRequirements: String -} + """Filter activities to only the specified actions.""" + actions: [SponsorsActivityAction!] = [] -"""The connection type for RepositoryVulnerabilityAlert.""" -type RepositoryVulnerabilityAlertConnection { - """A list of edges.""" - edges: [RepositoryVulnerabilityAlertEdge] + """ + 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 + ): SponsorsActivityConnection! - """A list of nodes.""" - nodes: [RepositoryVulnerabilityAlert] + """The GitHub Sponsors listing for this user or organization.""" + sponsorsListing: SponsorsListing - """Information to aid in pagination.""" - pageInfo: PageInfo! + """ + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. + """ + sponsorshipForViewerAsSponsor( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """ + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. + """ + 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 -"""An edge in a connection.""" -type RepositoryVulnerabilityAlertEdge { - """A cursor for use in pagination.""" - cursor: String! + """List of sponsorship updates sent from this sponsorable to sponsors.""" + sponsorshipNewsletters( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The item at the end of the edge.""" - node: RepositoryVulnerabilityAlert -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -"""The possible states that can be requested when creating a check run.""" -enum RequestableCheckStatusState { - """The check suite or run has been queued.""" - QUEUED + """Returns the first _n_ elements from the list.""" + first: Int - """The check suite or run is in progress.""" - IN_PROGRESS + """Returns the last _n_ elements from the list.""" + last: Int - """The check suite or run has been completed.""" - COMPLETED -} + """Ordering options for sponsorship updates returned from the connection.""" + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! -"""Types that can be requested reviewers.""" -union RequestedReviewer = Mannequin | Team | User + """ + The sponsorships where this user or organization is the maintainer receiving the funds. + """ + sponsorshipsAsMaintainer( + """Returns the elements in the list that come after the specified cursor.""" + after: String -"""Autogenerated input type of RequestReviews""" -input RequestReviewsInput { - """The Node ID of the pull request to modify.""" - pullRequestId: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The Node IDs of the user to request.""" - userIds: [ID!] + """Returns the first _n_ elements from the list.""" + first: Int - """The Node IDs of the team to request.""" - teamIds: [ID!] + """Returns the last _n_ elements from the list.""" + last: Int - """Add users to the set rather than replace.""" - union: Boolean + """Whether or not to include private sponsorships in the result set""" + includePrivate: Boolean = false - """A unique identifier for the client performing the mutation.""" - clientMutationId: 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 -"""Autogenerated return type of RequestReviews""" -type RequestReviewsPayload { - """Identifies the actor who performed the event.""" - actor: Actor + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true + ): SponsorshipConnection! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """The sponsorships where this user or organization is the funder.""" + sponsorshipsAsSponsor( + """Returns the elements in the list that come after the specified cursor.""" + after: String - """The pull request that is getting requests.""" - pullRequest: PullRequest + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """The edge from the pull request to the requested reviewers.""" - requestedReviewersEdge: UserEdge -} + """Returns the first _n_ elements from the list.""" + first: Int -"""Autogenerated input type of RerequestCheckSuite""" -input RerequestCheckSuiteInput { - """The Node ID of the repository.""" - repositoryId: ID! + """Returns the last _n_ elements from the list.""" + last: Int - """The Node ID of the check suite.""" - checkSuiteId: ID! + """ + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. + """ + orderBy: SponsorshipOrder - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """ + 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!] -"""Autogenerated return type of RerequestCheckSuite""" -type RerequestCheckSuitePayload { - """The requested check suite.""" - checkSuite: CheckSuite + """ + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. + """ + activeOnly: Boolean = true + ): SponsorshipConnection! - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """ + 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 -"""Autogenerated input type of ResolveReviewThread""" -input ResolveReviewThreadInput { - """The ID of the thread to resolve""" - threadId: ID! + """Filter payments to those that occurred before this time.""" + until: DateTime - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] + ): Int -"""Autogenerated return type of ResolveReviewThread""" -type ResolveReviewThreadPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Whether or not the viewer is able to sponsor this user/organization.""" + viewerCanSponsor: Boolean! - """The thread to resolve.""" - thread: PullRequestReviewThread + """True if the viewer is sponsoring this user/organization.""" + viewerIsSponsoring: Boolean! } -"""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. - - """ - isRestricted: Boolean! +"""Entities that can be sponsored via GitHub Sponsors""" +union SponsorableItem = Organization | User - """When this contribution was made.""" - occurredAt: DateTime! +"""The connection type for SponsorableItem.""" +type SponsorableItemConnection { + """A list of edges.""" + edges: [SponsorableItemEdge] - """The HTTP path for this contribution.""" - resourcePath: URI! + """A list of nodes.""" + nodes: [SponsorableItem] + + """Information to aid in pagination.""" + pageInfo: PageInfo! - """The HTTP URL for this contribution.""" - url: URI! + """Identifies the total count of items in the connection.""" + totalCount: Int! +} - """ - The user who made this contribution. - - """ - user: User! +"""An edge in a connection.""" +type SponsorableItemEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: SponsorableItem } """ -A team or user who has the ability to dismiss a review on a protected branch. +Ordering options for connections to get sponsorable entities for GitHub Sponsors. """ -type ReviewDismissalAllowance implements Node { - """The actor that can dismiss.""" - actor: ReviewDismissalAllowanceActor +input SponsorableOrder { + """The field to order sponsorable entities by.""" + field: SponsorableOrderField! - """ - Identifies the branch protection rule associated with the allowed user or team. - """ - branchProtectionRule: BranchProtectionRule - id: ID! + """The ordering direction.""" + direction: OrderDirection! } -"""Types that can be an actor.""" -union ReviewDismissalAllowanceActor = Team | User +"""Properties by which sponsorable connections can be ordered.""" +enum SponsorableOrderField { + """Order sponsorable entities by login (username).""" + LOGIN +} -"""The connection type for ReviewDismissalAllowance.""" -type ReviewDismissalAllowanceConnection { +"""The connection type for Sponsor.""" +type SponsorConnection { """A list of edges.""" - edges: [ReviewDismissalAllowanceEdge] + edges: [SponsorEdge] """A list of nodes.""" - nodes: [ReviewDismissalAllowance] + nodes: [Sponsor] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -19545,83 +30012,98 @@ type ReviewDismissalAllowanceConnection { totalCount: Int! } -"""An edge in a connection.""" -type ReviewDismissalAllowanceEdge { +""" +Represents a user or organization who is sponsoring someone in GitHub Sponsors. +""" +type SponsorEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: ReviewDismissalAllowance + node: Sponsor } """ -Represents a 'review_dismissed' event on a given issue or pull request. +Ordering options for connections to get sponsor entities for GitHub Sponsors. """ -type ReviewDismissedEvent implements Node & UniformResourceLocatable { - """Identifies the actor who performed the event.""" - actor: Actor +input SponsorOrder { + """The field to order sponsor entities by.""" + field: SponsorOrderField! - """Identifies the date and time when the object was created.""" - createdAt: DateTime! + """The ordering direction.""" + direction: OrderDirection! +} - """Identifies the primary key from the database.""" - databaseId: Int +"""Properties by which sponsor connections can be ordered.""" +enum SponsorOrderField { + """Order sponsorable entities by login (username).""" + LOGIN - """ - Identifies the optional message associated with the 'review_dismissed' event. - """ - dismissalMessage: String + """Order sponsors by their relevance to the viewer.""" + RELEVANCE +} - """ - Identifies the optional message associated with the event, rendered to HTML. - """ - dismissalMessageHTML: String +"""An event related to sponsorship activity.""" +type SponsorsActivity implements Node { + """What action this activity indicates took place.""" + action: SponsorsActivityAction! id: ID! + """The tier that the sponsorship used to use, for tier change events.""" + previousSponsorsTier: SponsorsTier + """ - Identifies the previous state of the review with the 'review_dismissed' event. + The user or organization who triggered this activity and was/is sponsoring the sponsorable. """ - previousReviewState: PullRequestReviewState! + sponsor: Sponsor - """PullRequest referenced by event.""" - pullRequest: PullRequest! - - """Identifies the commit which caused the review to become stale.""" - pullRequestCommit: PullRequestCommit + """The user or organization that is being sponsored, the maintainer.""" + sponsorable: Sponsorable! - """The HTTP path for this review dismissed event.""" - resourcePath: URI! + """The associated sponsorship tier.""" + sponsorsTier: SponsorsTier - """Identifies the review associated with the 'review_dismissed' event.""" - review: PullRequestReview + """The timestamp of this event.""" + timestamp: DateTime - """The HTTP URL for this review dismissed event.""" - url: URI! + """ + Was this sponsorship made alongside other sponsorships at the same time from the same sponsor? + """ + viaBulkSponsorship: Boolean! } -"""A request for a user to review a pull request.""" -type ReviewRequest implements Node { - """Whether this request was created for a code owner""" - asCodeOwner: Boolean! +"""The possible actions that GitHub Sponsors activities can represent.""" +enum SponsorsActivityAction { + """The activity was starting a sponsorship.""" + NEW_SPONSORSHIP - """Identifies the primary key from the database.""" - databaseId: Int - id: ID! + """The activity was cancelling a sponsorship.""" + CANCELLED_SPONSORSHIP - """Identifies the pull request associated with this review request.""" - pullRequest: PullRequest! + """ + The activity was changing the sponsorship tier, either directly by the sponsor or by a scheduled/pending change. + """ + TIER_CHANGE - """The reviewer that is requested.""" - requestedReviewer: RequestedReviewer + """The activity was funds being refunded to the sponsor or GitHub.""" + REFUND + + """The activity was scheduling a downgrade or cancellation.""" + PENDING_CHANGE + + """ + The activity was disabling matching for a previously matched sponsorship. + """ + SPONSOR_MATCH_DISABLED } -"""The connection type for ReviewRequest.""" -type ReviewRequestConnection { +"""The connection type for SponsorsActivity.""" +type SponsorsActivityConnection { """A list of edges.""" - edges: [ReviewRequestEdge] + edges: [SponsorsActivityEdge] """A list of nodes.""" - nodes: [ReviewRequest] + nodes: [SponsorsActivity] """Information to aid in pagination.""" pageInfo: PageInfo! @@ -19630,681 +30112,824 @@ type ReviewRequestConnection { totalCount: Int! } -"""Represents an 'review_requested' event on a given pull request.""" -type ReviewRequestedEvent 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! - - """Identifies the reviewer whose review was requested.""" - requestedReviewer: RequestedReviewer -} - """An edge in a connection.""" -type ReviewRequestEdge { +type SponsorsActivityEdge { """A cursor for use in pagination.""" cursor: String! """The item at the end of the edge.""" - node: ReviewRequest + node: SponsorsActivity } -"""Represents an 'review_request_removed' event on a given pull request.""" -type ReviewRequestRemovedEvent 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! +"""Ordering options for GitHub Sponsors activity connections.""" +input SponsorsActivityOrder { + """The field to order activity by.""" + field: SponsorsActivityOrderField! - """Identifies the reviewer whose review request was removed.""" - requestedReviewer: RequestedReviewer + """The ordering direction.""" + direction: OrderDirection! } """ -A hovercard context with a message describing the current code review state of the pull -request. - +Properties by which GitHub Sponsors activity connections can be ordered. """ -type ReviewStatusHovercardContext implements HovercardContext { - """A string describing this context""" - message: String! - - """An octicon to accompany this context""" - octicon: String! - - """The current status of the pull request with respect to code review.""" - reviewDecision: PullRequestReviewDecision +enum SponsorsActivityOrderField { + """Order activities by when they happened.""" + TIMESTAMP } """ -The possible digest algorithms used to sign SAML requests for an identity provider. +The possible time periods for which Sponsors activities can be requested. """ -enum SamlDigestAlgorithm { - """SHA1""" - SHA1 +enum SponsorsActivityPeriod { + """The previous calendar day.""" + DAY - """SHA256""" - SHA256 + """The previous seven days.""" + WEEK - """SHA384""" - SHA384 + """The previous thirty days.""" + MONTH - """SHA512""" - SHA512 + """Don't restrict the activity to any date range, include all activity.""" + ALL } """ -The possible signature algorithms used to sign SAML requests for a Identity Provider. +Represents countries or regions for billing and residence for a GitHub Sponsors profile. """ -enum SamlSignatureAlgorithm { - """RSA-SHA1""" - RSA_SHA1 +enum SponsorsCountryOrRegionCode { + """Afghanistan""" + AF + + """Åland""" + AX + + """Albania""" + AL + + """Algeria""" + DZ + + """American Samoa""" + AS + + """Andorra""" + AD + + """Angola""" + AO + + """Anguilla""" + AI + + """Antarctica""" + AQ + + """Antigua and Barbuda""" + AG + + """Argentina""" + AR + + """Armenia""" + AM + + """Aruba""" + AW + + """Australia""" + AU + + """Austria""" + AT + + """Azerbaijan""" + AZ + + """Bahamas""" + BS + + """Bahrain""" + BH + + """Bangladesh""" + BD + + """Barbados""" + BB + + """Belarus""" + BY + + """Belgium""" + BE + + """Belize""" + BZ + + """Benin""" + BJ + + """Bermuda""" + BM + + """Bhutan""" + BT + + """Bolivia""" + BO + + """Bonaire, Sint Eustatius and Saba""" + BQ + + """Bosnia and Herzegovina""" + BA + + """Botswana""" + BW + + """Bouvet Island""" + BV + + """Brazil""" + BR + + """British Indian Ocean Territory""" + IO + + """Brunei Darussalam""" + BN + + """Bulgaria""" + BG + + """Burkina Faso""" + BF + + """Burundi""" + BI + + """Cambodia""" + KH + + """Cameroon""" + CM + + """Canada""" + CA + + """Cape Verde""" + CV + + """Cayman Islands""" + KY + + """Central African Republic""" + CF + + """Chad""" + TD + + """Chile""" + CL + + """China""" + CN + + """Christmas Island""" + CX + + """Cocos (Keeling) Islands""" + CC + + """Colombia""" + CO + + """Comoros""" + KM + + """Congo (Brazzaville)""" + CG + + """Congo (Kinshasa)""" + CD + + """Cook Islands""" + CK + + """Costa Rica""" + CR + + """Côte d'Ivoire""" + CI + + """Croatia""" + HR + + """Curaçao""" + CW + + """Cyprus""" + CY + + """Czech Republic""" + CZ + + """Denmark""" + DK + + """Djibouti""" + DJ + + """Dominica""" + DM + + """Dominican Republic""" + DO + + """Ecuador""" + EC + + """Egypt""" + EG + + """El Salvador""" + SV + + """Equatorial Guinea""" + GQ + + """Eritrea""" + ER + + """Estonia""" + EE + + """Ethiopia""" + ET + + """Falkland Islands""" + FK + + """Faroe Islands""" + FO + + """Fiji""" + FJ + + """Finland""" + FI + + """France""" + FR + + """French Guiana""" + GF + + """French Polynesia""" + PF + + """French Southern Lands""" + TF + + """Gabon""" + GA + + """Gambia""" + GM + + """Georgia""" + GE + + """Germany""" + DE + + """Ghana""" + GH + + """Gibraltar""" + GI + + """Greece""" + GR + + """Greenland""" + GL + + """Grenada""" + GD + + """Guadeloupe""" + GP + + """Guam""" + GU + + """Guatemala""" + GT + + """Guernsey""" + GG + + """Guinea""" + GN + + """Guinea-Bissau""" + GW + + """Guyana""" + GY + + """Haiti""" + HT + + """Heard and McDonald Islands""" + HM + + """Honduras""" + HN + + """Hong Kong""" + HK + + """Hungary""" + HU + + """Iceland""" + IS + + """India""" + IN + + """Indonesia""" + ID - """RSA-SHA256""" - RSA_SHA256 + """Iran""" + IR - """RSA-SHA384""" - RSA_SHA384 + """Iraq""" + IQ - """RSA-SHA512""" - RSA_SHA512 -} + """Ireland""" + IE -"""A Saved Reply is text a user can use to reply quickly.""" -type SavedReply implements Node { - """The body of the saved reply.""" - body: String! + """Isle of Man""" + IM - """The saved reply body rendered to HTML.""" - bodyHTML: HTML! + """Israel""" + IL - """Identifies the primary key from the database.""" - databaseId: Int - id: ID! + """Italy""" + IT - """The title of the saved reply.""" - title: String! + """Jamaica""" + JM - """The user that saved this reply.""" - user: Actor -} + """Japan""" + JP -"""The connection type for SavedReply.""" -type SavedReplyConnection { - """A list of edges.""" - edges: [SavedReplyEdge] + """Jersey""" + JE - """A list of nodes.""" - nodes: [SavedReply] + """Jordan""" + JO - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Kazakhstan""" + KZ - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Kenya""" + KE -"""An edge in a connection.""" -type SavedReplyEdge { - """A cursor for use in pagination.""" - cursor: String! + """Kiribati""" + KI - """The item at the end of the edge.""" - node: SavedReply -} + """Korea, South""" + KR -"""Ordering options for saved reply connections.""" -input SavedReplyOrder { - """The field to order saved replies by.""" - field: SavedReplyOrderField! + """Kuwait""" + KW - """The ordering direction.""" - direction: OrderDirection! -} + """Kyrgyzstan""" + KG -"""Properties by which saved reply connections can be ordered.""" -enum SavedReplyOrderField { - """Order saved reply by when they were updated.""" - UPDATED_AT -} + """Laos""" + LA -"""The results of a search.""" -union SearchResultItem = App | Issue | MarketplaceListing | Organization | PullRequest | Repository | User + """Latvia""" + LV -"""A list of results that matched against a search query.""" -type SearchResultItemConnection { - """The number of pieces of code that matched the search query.""" - codeCount: Int! + """Lebanon""" + LB - """A list of edges.""" - edges: [SearchResultItemEdge] + """Lesotho""" + LS - """The number of issues that matched the search query.""" - issueCount: Int! + """Liberia""" + LR - """A list of nodes.""" - nodes: [SearchResultItem] + """Libya""" + LY - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Liechtenstein""" + LI - """The number of repositories that matched the search query.""" - repositoryCount: Int! + """Lithuania""" + LT - """The number of users that matched the search query.""" - userCount: Int! + """Luxembourg""" + LU - """The number of wiki pages that matched the search query.""" - wikiCount: Int! -} + """Macau""" + MO -"""An edge in a connection.""" -type SearchResultItemEdge { - """A cursor for use in pagination.""" - cursor: String! + """Macedonia""" + MK - """The item at the end of the edge.""" - node: SearchResultItem + """Madagascar""" + MG - """Text matches on the result found.""" - textMatches: [TextMatch] -} + """Malawi""" + MW -"""Represents the individual results of a search.""" -enum SearchType { - """Returns results matching issues in repositories.""" - ISSUE + """Malaysia""" + MY - """Returns results matching repositories.""" - REPOSITORY + """Maldives""" + MV - """Returns results matching users and organizations on GitHub.""" - USER -} + """Mali""" + ML -"""A GitHub Security Advisory""" -type SecurityAdvisory implements Node { - """Identifies the primary key from the database.""" - databaseId: Int + """Malta""" + MT - """This is a long plaintext description of the advisory""" - description: String! + """Marshall Islands""" + MH - """The GitHub Security Advisory ID""" - ghsaId: String! - id: ID! + """Martinique""" + MQ - """A list of identifiers for this advisory""" - identifiers: [SecurityAdvisoryIdentifier!]! + """Mauritania""" + MR - """The organization that originated the advisory""" - origin: String! + """Mauritius""" + MU - """The permalink for the advisory""" - permalink: URI + """Mayotte""" + YT - """When the advisory was published""" - publishedAt: DateTime! + """Mexico""" + MX - """A list of references for this advisory""" - references: [SecurityAdvisoryReference!]! + """Micronesia""" + FM - """The severity of the advisory""" - severity: SecurityAdvisorySeverity! + """Moldova""" + MD - """A short plaintext summary of the advisory""" - summary: String! + """Monaco""" + MC - """When the advisory was last updated""" - updatedAt: DateTime! + """Mongolia""" + MN - """Vulnerabilities associated with this Advisory""" - vulnerabilities( - """Ordering options for the returned topics.""" - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + """Montenegro""" + ME - """An ecosystem to filter vulnerabilities by.""" - ecosystem: SecurityAdvisoryEcosystem + """Montserrat""" + MS - """A package name to filter vulnerabilities by.""" - package: String + """Morocco""" + MA - """A list of severities to filter vulnerabilities by.""" - severities: [SecurityAdvisorySeverity!] + """Mozambique""" + MZ - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Myanmar""" + MM - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Namibia""" + NA - """Returns the first _n_ elements from the list.""" - first: Int + """Nauru""" + NR - """Returns the last _n_ elements from the list.""" - last: Int - ): SecurityVulnerabilityConnection! + """Nepal""" + NP - """When the advisory was withdrawn, if it has been withdrawn""" - withdrawnAt: DateTime -} + """Netherlands""" + NL -"""The connection type for SecurityAdvisory.""" -type SecurityAdvisoryConnection { - """A list of edges.""" - edges: [SecurityAdvisoryEdge] + """New Caledonia""" + NC - """A list of nodes.""" - nodes: [SecurityAdvisory] + """New Zealand""" + NZ - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Nicaragua""" + NI - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Niger""" + NE -"""The possible ecosystems of a security vulnerability's package.""" -enum SecurityAdvisoryEcosystem { - """Ruby gems hosted at RubyGems.org""" - RUBYGEMS + """Nigeria""" + NG - """JavaScript packages hosted at npmjs.com""" - NPM + """Niue""" + NU - """Python packages hosted at PyPI.org""" - PIP + """Norfolk Island""" + NF - """Java artifacts hosted at the Maven central repository""" - MAVEN + """Northern Mariana Islands""" + MP - """.NET packages hosted at the NuGet Gallery""" - NUGET + """Norway""" + NO - """PHP packages hosted at packagist.org""" - COMPOSER -} + """Oman""" + OM -"""An edge in a connection.""" -type SecurityAdvisoryEdge { - """A cursor for use in pagination.""" - cursor: String! + """Pakistan""" + PK - """The item at the end of the edge.""" - node: SecurityAdvisory -} + """Palau""" + PW -"""A GitHub Security Advisory Identifier""" -type SecurityAdvisoryIdentifier { - """The identifier type, e.g. GHSA, CVE""" - type: String! + """Palestine""" + PS - """The identifier""" - value: String! -} + """Panama""" + PA -"""An advisory identifier to filter results on.""" -input SecurityAdvisoryIdentifierFilter { - """The identifier type.""" - type: SecurityAdvisoryIdentifierType! + """Papua New Guinea""" + PG - """The identifier string. Supports exact or partial matching.""" - value: String! -} + """Paraguay""" + PY -"""Identifier formats available for advisories.""" -enum SecurityAdvisoryIdentifierType { - """Common Vulnerabilities and Exposures Identifier.""" - CVE + """Peru""" + PE - """GitHub Security Advisory ID.""" - GHSA -} + """Philippines""" + PH -"""Ordering options for security advisory connections""" -input SecurityAdvisoryOrder { - """The field to order security advisories by.""" - field: SecurityAdvisoryOrderField! + """Pitcairn""" + PN - """The ordering direction.""" - direction: OrderDirection! -} + """Poland""" + PL -"""Properties by which security advisory connections can be ordered.""" -enum SecurityAdvisoryOrderField { - """Order advisories by publication time""" - PUBLISHED_AT + """Portugal""" + PT - """Order advisories by update time""" - UPDATED_AT -} + """Puerto Rico""" + PR -"""An individual package""" -type SecurityAdvisoryPackage { - """The ecosystem the package belongs to, e.g. RUBYGEMS, NPM""" - ecosystem: SecurityAdvisoryEcosystem! + """Qatar""" + QA - """The package name""" - name: String! -} + """Reunion""" + RE -"""An individual package version""" -type SecurityAdvisoryPackageVersion { - """The package name or version""" - identifier: String! -} + """Romania""" + RO -"""A GitHub Security Advisory Reference""" -type SecurityAdvisoryReference { - """A publicly accessible reference""" - url: URI! -} + """Russian Federation""" + RU -"""Severity of the vulnerability.""" -enum SecurityAdvisorySeverity { - """Low.""" - LOW + """Rwanda""" + RW - """Moderate.""" - MODERATE + """Saint Barthélemy""" + BL - """High.""" - HIGH + """Saint Helena""" + SH - """Critical.""" - CRITICAL -} + """Saint Kitts and Nevis""" + KN -"""An individual vulnerability within an Advisory""" -type SecurityVulnerability { - """The Advisory associated with this Vulnerability""" - advisory: SecurityAdvisory! + """Saint Lucia""" + LC - """The first version containing a fix for the vulnerability""" - firstPatchedVersion: SecurityAdvisoryPackageVersion + """Saint Martin (French part)""" + MF - """A description of the vulnerable package""" - package: SecurityAdvisoryPackage! + """Saint Pierre and Miquelon""" + PM - """The severity of the vulnerability within this package""" - severity: SecurityAdvisorySeverity! + """Saint Vincent and the Grenadines""" + VC - """When the vulnerability was last updated""" - updatedAt: DateTime! + """Samoa""" + WS - """ - 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! -} + """San Marino""" + SM -"""The connection type for SecurityVulnerability.""" -type SecurityVulnerabilityConnection { - """A list of edges.""" - edges: [SecurityVulnerabilityEdge] + """Sao Tome and Principe""" + ST - """A list of nodes.""" - nodes: [SecurityVulnerability] + """Saudi Arabia""" + SA - """Information to aid in pagination.""" - pageInfo: PageInfo! + """Senegal""" + SN - """Identifies the total count of items in the connection.""" - totalCount: Int! -} + """Serbia""" + RS -"""An edge in a connection.""" -type SecurityVulnerabilityEdge { - """A cursor for use in pagination.""" - cursor: String! + """Seychelles""" + SC - """The item at the end of the edge.""" - node: SecurityVulnerability -} + """Sierra Leone""" + SL -"""Ordering options for security vulnerability connections""" -input SecurityVulnerabilityOrder { - """The field to order security vulnerabilities by.""" - field: SecurityVulnerabilityOrderField! + """Singapore""" + SG - """The ordering direction.""" - direction: OrderDirection! -} + """Sint Maarten (Dutch part)""" + SX -"""Properties by which security vulnerability connections can be ordered.""" -enum SecurityVulnerabilityOrderField { - """Order vulnerability by update time""" - UPDATED_AT -} + """Slovakia""" + SK -"""Autogenerated input type of SetEnterpriseIdentityProvider""" -input SetEnterpriseIdentityProviderInput { - """The ID of the enterprise on which to set an identity provider.""" - enterpriseId: ID! + """Slovenia""" + SI - """The URL endpoint for the identity provider's SAML SSO.""" - ssoUrl: URI! + """Solomon Islands""" + SB - """The Issuer Entity ID for the SAML identity provider""" - issuer: String + """Somalia""" + SO - """ - The x509 certificate used by the identity provider to sign assertions and responses. - """ - idpCertificate: String! + """South Africa""" + ZA - """ - The signature algorithm used to sign SAML requests for the identity provider. - """ - signatureMethod: SamlSignatureAlgorithm! + """South Georgia and South Sandwich Islands""" + GS - """ - The digest algorithm used to sign SAML requests for the identity provider. - """ - digestMethod: SamlDigestAlgorithm! + """South Sudan""" + SS - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Spain""" + ES -"""Autogenerated return type of SetEnterpriseIdentityProvider""" -type SetEnterpriseIdentityProviderPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Sri Lanka""" + LK - """The identity provider for the enterprise.""" - identityProvider: EnterpriseIdentityProvider -} + """Sudan""" + SD -"""Autogenerated input type of SetOrganizationInteractionLimit""" -input SetOrganizationInteractionLimitInput { - """The ID of the organization to set a limit for.""" - organizationId: ID! + """Suriname""" + SR - """The limit to set.""" - limit: RepositoryInteractionLimit! + """Svalbard and Jan Mayen Islands""" + SJ - """When this limit should expire.""" - expiry: RepositoryInteractionLimitExpiry + """Swaziland""" + SZ - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Sweden""" + SE -"""Autogenerated return type of SetOrganizationInteractionLimit""" -type SetOrganizationInteractionLimitPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Switzerland""" + CH - """The organization that the interaction limit was set for.""" - organization: Organization -} + """Taiwan""" + TW -"""Autogenerated input type of SetRepositoryInteractionLimit""" -input SetRepositoryInteractionLimitInput { - """The ID of the repository to set a limit for.""" - repositoryId: ID! + """Tajikistan""" + TJ - """The limit to set.""" - limit: RepositoryInteractionLimit! + """Tanzania""" + TZ - """When this limit should expire.""" - expiry: RepositoryInteractionLimitExpiry + """Thailand""" + TH - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Timor-Leste""" + TL -"""Autogenerated return type of SetRepositoryInteractionLimit""" -type SetRepositoryInteractionLimitPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Togo""" + TG - """The repository that the interaction limit was set for.""" - repository: Repository -} + """Tokelau""" + TK -"""Autogenerated input type of SetUserInteractionLimit""" -input SetUserInteractionLimitInput { - """The ID of the user to set a limit for.""" - userId: ID! + """Tonga""" + TO - """The limit to set.""" - limit: RepositoryInteractionLimit! + """Trinidad and Tobago""" + TT - """When this limit should expire.""" - expiry: RepositoryInteractionLimitExpiry + """Tunisia""" + TN - """A unique identifier for the client performing the mutation.""" - clientMutationId: String -} + """Turkey""" + TR -"""Autogenerated return type of SetUserInteractionLimit""" -type SetUserInteractionLimitPayload { - """A unique identifier for the client performing the mutation.""" - clientMutationId: String + """Turkmenistan""" + TM - """The user that the interaction limit was set for.""" - user: User -} + """Turks and Caicos Islands""" + TC -"""Represents an S/MIME signature on a Commit or Tag.""" -type SmimeSignature implements GitSignature { - """Email used to sign this object.""" - email: String! + """Tuvalu""" + TV - """True if the signature is valid and verified by GitHub.""" - isValid: Boolean! + """Uganda""" + UG - """ - Payload for GPG signing object. Raw ODB object without the signature header. - """ - payload: String! + """Ukraine""" + UA - """ASCII-armored signature header from object.""" - signature: String! + """United Arab Emirates""" + AE - """GitHub user corresponding to the email signing this commit.""" - signer: User + """United Kingdom""" + GB - """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. - """ - state: GitSignatureState! + """United States Minor Outlying Islands""" + UM - """True if the signature was made with GitHub's signing key.""" - wasSignedByGitHub: Boolean! -} + """United States of America""" + US -"""Entites that can sponsor others via GitHub Sponsors""" -union Sponsor = Organization | User + """Uruguay""" + UY -"""Entities that can be sponsored through GitHub Sponsors""" -interface Sponsorable { - """True if this user/organization has a GitHub Sponsors listing.""" - hasSponsorsListing: Boolean! + """Uzbekistan""" + UZ - """True if the viewer is sponsored by this user/organization.""" - isSponsoringViewer: Boolean! + """Vanuatu""" + VU - """The GitHub Sponsors listing for this user or organization.""" - sponsorsListing: SponsorsListing + """Vatican City""" + VA - """This object's sponsorships as the maintainer.""" - sponsorshipsAsMaintainer( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Venezuela""" + VE - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Vietnam""" + VN - """Returns the first _n_ elements from the list.""" - first: Int + """Virgin Islands, British""" + VG - """Returns the last _n_ elements from the list.""" - last: Int + """Virgin Islands, U.S.""" + VI - """Whether or not to include private sponsorships in the result set""" - includePrivate: Boolean = false + """Wallis and Futuna Islands""" + WF - """ - 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! + """Western Sahara""" + EH - """This object's sponsorships as the sponsor.""" - sponsorshipsAsSponsor( - """Returns the elements in the list that come after the specified cursor.""" - after: String + """Yemen""" + YE - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """Zambia""" + ZM - """Returns the first _n_ elements from the list.""" - first: Int + """Zimbabwe""" + ZW +} - """Returns the last _n_ elements from the list.""" - last: Int +""" +A goal associated with a GitHub Sponsors listing, representing a target the sponsored maintainer would like to attain. +""" +type SponsorsGoal { + """A description of the goal from the maintainer.""" + description: 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! + """What the objective of this goal is.""" + kind: SponsorsGoalKind! - """Whether or not the viewer is able to sponsor this user/organization.""" - viewerCanSponsor: Boolean! + """The percentage representing how complete this goal is, between 0-100.""" + percentComplete: Int! - """True if the viewer is sponsoring this user/organization.""" - viewerIsSponsoring: Boolean! + """ + 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. + """ + targetValue: Int! + + """A brief summary of the kind and target value of this goal.""" + title: String! +} + +"""The different kinds of goals a GitHub Sponsors member can have.""" +enum SponsorsGoalKind { + """The goal is about reaching a certain number of sponsors.""" + TOTAL_SPONSORS_COUNT + + """ + The goal is about getting a certain amount in USD from sponsorships each month. + """ + MONTHLY_SPONSORSHIP_AMOUNT } """A sponsorship relationship between a sponsor and a maintainer""" @@ -20313,6 +30938,23 @@ 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 privacy level for this sponsorship.""" privacyLevel: SponsorshipPrivacy! @@ -20326,6 +30968,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 } """The connection type for Sponsorship.""" @@ -20341,6 +30988,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! } """An edge in a connection.""" @@ -20348,8 +31007,76 @@ type SponsorshipEdge { """A cursor for use in pagination.""" cursor: String! - """The item at the end of the edge.""" - node: Sponsorship + """The item at the end of the edge.""" + 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 field to order sponsorship newsletters by.""" + field: SponsorshipNewsletterOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""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.""" @@ -20378,9 +31105,53 @@ enum SponsorshipPrivacy { """A GitHub Sponsors listing.""" type SponsorsListing implements Node { + """ + The current goal the maintainer is trying to reach with GitHub Sponsors, if any. + """ + activeGoal: SponsorsGoal + + """ + 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. + """ + activeStripeConnectAccount: StripeConnectAccount + + """ + 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 + + """ + 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. + """ + contactEmailAddress: String + """Identifies the date and time when the object was created.""" createdAt: DateTime! + """The HTTP path for the Sponsors dashboard for this Sponsors listing.""" + dashboardResourcePath: URI! + + """The HTTP URL for the Sponsors dashboard for this Sponsors listing.""" + dashboardUrl: URI! + + """The records featured on the GitHub Sponsors profile.""" + featuredItems( + """The types of featured items to return.""" + featureableTypes: [SponsorsListingFeaturedItemFeatureableType!] = [REPOSITORY, USER] + ): [SponsorsListingFeaturedItem!]! + + """ + 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. + """ + fiscalHost: Organization + """The full description of the listing.""" fullDescription: String! @@ -20388,16 +31159,37 @@ 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.""" shortDescription: String! """The short name of the listing.""" 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( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -20415,7 +31207,66 @@ type SponsorsListing implements Node { """Ordering options for Sponsors tiers returned from the connection.""" orderBy: SponsorsTierOrder = {field: MONTHLY_PRICE_IN_CENTS, direction: ASC} + + """ + 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 ): 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 } """A GitHub Sponsors tier associated with a GitHub Sponsors listing.""" @@ -20425,6 +31276,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.""" createdAt: DateTime! @@ -20435,10 +31293,19 @@ 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! """The name of the tier.""" @@ -20455,7 +31322,32 @@ type SponsorsTier implements Node { SponsorsTier information only visible to users that can administer the associated Sponsors listing. """ 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( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -20471,7 +31363,10 @@ type SponsorsTierAdminInfo { """Returns the last _n_ elements from the list.""" last: 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 """ @@ -20524,6 +31419,61 @@ enum SponsorsTierOrderField { MONTHLY_PRICE_IN_CENTS } +"""The possible default commit messages for squash merges.""" +enum SquashMergeCommitMessage { + """Default to the pull request's body.""" + PR_BODY + + """Default to the branch's commit messages.""" + COMMIT_MESSAGES + + """Default to a blank commit message.""" + BLANK +} + +"""The possible default commit titles for squash merges.""" +enum SquashMergeCommitTitle { + """Default to the pull request's title.""" + PR_TITLE + + """ + 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 +} + +"""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! +} + """The connection type for User.""" type StargazerConnection { """A list of edges.""" @@ -20630,6 +31580,86 @@ type StarredRepositoryEdge { starredAt: DateTime! } +"""Autogenerated input type of StartOrganizationMigration""" +input StartOrganizationMigrationInput { + """The URL of the organization to migrate.""" + sourceOrgUrl: URI! + + """The name of the target organization.""" + targetOrgName: String! + + """The ID of the enterprise the target organization belongs to.""" + targetEnterpriseId: ID! + + """The migration source access token.""" + sourceAccessToken: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 ID of the migration source.""" + sourceId: ID! + + """The ID of the organization that will own the imported repository.""" + ownerId: ID! + + """The URL of the source repository.""" + sourceRepositoryUrl: URI + + """The name of the imported repository.""" + repositoryName: String! + + """Whether to continue the migration on error. Defaults to `false`.""" + continueOnError: Boolean + + """The signed URL to access the user-uploaded git archive.""" + gitArchiveUrl: String + + """The signed URL to access the user-uploaded metadata archive.""" + metadataArchiveUrl: String + + """The migration source access token.""" + accessToken: String + + """ + The GitHub personal access token of the user importing to the target repository. + """ + githubPat: String + + """Whether to skip migrating releases for the repository.""" + skipReleases: Boolean + + """The visibility of the imported repository.""" + targetRepoVisibility: String + + """Whether to lock the source repository.""" + lockSource: Boolean + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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.""" @@ -20666,6 +31696,28 @@ 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.""" type StatusCheckRollup implements Node { """The commit the status and check runs are attached to.""" @@ -20698,6 +31750,12 @@ union StatusCheckRollupContext = CheckRun | StatusContext """The connection type for StatusCheckRollupContext.""" type StatusCheckRollupContextConnection { + """The number of check runs in this rollup.""" + checkRunCount: Int! + + """Counts of check runs by state.""" + checkRunCountsByState: [CheckRunStateCount!] + """A list of edges.""" edges: [StatusCheckRollupContextEdge] @@ -20707,6 +31765,12 @@ type StatusCheckRollupContextConnection { """Information to aid in pagination.""" pageInfo: PageInfo! + """The number of status contexts in this rollup.""" + statusContextCount: Int! + + """Counts of status contexts by state.""" + statusContextCountsByState: [StatusContextStateCount!] + """Identifies the total count of items in the connection.""" totalCount: Int! } @@ -20721,7 +31785,7 @@ type StatusCheckRollupContextEdge { } """Represents an individual commit status context""" -type StatusContext implements Node { +type StatusContext implements RequirableByPullRequest & Node { """ The avatar of the OAuth application or the user that created the status """ @@ -20746,6 +31810,17 @@ 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.""" state: StatusState! @@ -20753,6 +31828,15 @@ 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.""" enum StatusState { """Status is expected.""" @@ -20771,6 +31855,42 @@ 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""" input SubmitPullRequestReviewInput { """The Pull Request ID to submit any pending reviews.""" @@ -20811,9 +31931,17 @@ type Submodule { """The name of the submodule in .gitmodules""" name: String! + """The name of the submodule in .gitmodules (Base64-encoded)""" + nameRaw: Base64String! + """The path in the superproject that this submodule is located in""" path: String! + """ + The path in the superproject that this submodule is located in (Base64-encoded) + """ + pathRaw: Base64String! + """ The commit revision of the subproject repository being tracked by the submodule """ @@ -20929,6 +32057,36 @@ type Tag implements Node & GitObject { 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.""" type Team implements Node & Subscribable & MemberStatusable { """A list of teams that are ancestors of this team.""" @@ -21113,20 +32271,57 @@ type Team implements Node & Subscribable & MemberStatusable { """The name of the team.""" name: String! - """The HTTP path creating a new team""" - newTeamResourcePath: URI! + """The HTTP path creating a new team""" + newTeamResourcePath: URI! + + """The HTTP URL creating a new team""" + newTeamUrl: URI! + + """The notification setting that the team has set.""" + notificationSetting: TeamNotificationSetting! + + """The organization that owns this team.""" + organization: Organization! + + """The parent team of the team.""" + parentTeam: Team + + """The level of privacy the team has.""" + 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 + + """Returns the first _n_ elements from the list.""" + first: Int - """The HTTP URL creating a new team""" - newTeamUrl: URI! + """Returns the last _n_ elements from the list.""" + last: Int - """The organization that owns this team.""" - organization: Organization! + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} - """The parent team of the team.""" - parentTeam: Team + """Filtering options for projects returned from this connection""" + filterBy: ProjectV2Filters = {} - """The level of privacy the team has.""" - privacy: TeamPrivacy! + """The query to search projects by.""" + query: String = "" + ): ProjectV2Connection! """A list of repositories this team has access to.""" repositories( @@ -21144,7 +32339,9 @@ type Team implements Node & Subscribable & MemberStatusable { """Returns the last _n_ elements from the list.""" last: Int - """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 """Order for the connection.""" @@ -21925,6 +33122,15 @@ enum TeamMembershipType { ALL } +"""The possible team notification values.""" +enum TeamNotificationSetting { + """Everyone will receive notifications when the team is @mentioned.""" + NOTIFICATIONS_ENABLED + + """No one will receive notifications.""" + NOTIFICATIONS_DISABLED +} + """Ways in which team connections can be ordered.""" input TeamOrder { """The field in which to order nodes by.""" @@ -22212,6 +33418,53 @@ type Topic implements Node & Starrable { first: Int = 3 ): [Topic!]! + """A list of repositories.""" + repositories( + """If non-null, filters repositories according to privacy""" + privacy: RepositoryPrivacy + + """Ordering options for repositories returned from the connection""" + orderBy: RepositoryOrder + + """ + 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] + + """ + 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 whether they have been locked + """ + isLocked: Boolean + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + If true, 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 @@ -22270,6 +33523,36 @@ enum TopicSuggestionDeclineReason { TOO_GENERAL } +"""The possible states of a tracked issue.""" +enum TrackedIssueStates { + """The tracked issue is open""" + OPEN + + """The tracked issue is closed""" + CLOSED +} + +"""Autogenerated input type of TransferEnterpriseOrganization""" +input TransferEnterpriseOrganizationInput { + """The ID of the organization to transfer.""" + organizationId: ID! + + """The ID of the enterprise where the organization should be transferred.""" + destinationEnterpriseId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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""" input TransferIssueInput { """The Node ID of the issue to be transferred""" @@ -22278,6 +33561,11 @@ input TransferIssueInput { """The Node ID of the repository the issue should be transferred to""" repositoryId: ID! + """ + Whether to create labels if they don't exist in the target repository (matched by name) + """ + createLabelsIfMissing: Boolean = false + """A unique identifier for the client performing the mutation.""" clientMutationId: String } @@ -22337,12 +33625,21 @@ type TreeEntry { """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.""" mode: Int! """Entry file name.""" name: String! + """Entry file name. (Base64-encoded)""" + nameRaw: Base64String! + """Entry file object.""" object: GitObject @@ -22352,9 +33649,15 @@ type TreeEntry { """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 """ @@ -22364,6 +33667,27 @@ type TreeEntry { type: String! } +"""Autogenerated input type of UnarchiveProjectV2Item""" +input UnarchiveProjectV2ItemInput { + """The ID of the Project to archive the item from.""" + projectId: ID! + + """The ID of the ProjectV2Item to unarchive.""" + itemId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UnarchiveProjectV2Item""" +type UnarchiveProjectV2ItemPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The item unarchived from the project.""" + item: ProjectV2Item +} + """Autogenerated input type of UnarchiveRepository""" input UnarchiveRepositoryInput { """The ID of the repository to unarchive.""" @@ -22398,6 +33722,24 @@ type UnassignedEvent implements Node { id: ID! } +"""Autogenerated input type of UnfollowOrganization""" +input UnfollowOrganizationInput { + """ID of the organization to unfollow.""" + organizationId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UnfollowOrganization""" +type UnfollowOrganizationPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The organization that was unfollowed.""" + organization: Organization +} + """Autogenerated input type of UnfollowUser""" input UnfollowUserInput { """ID of the user to unfollow.""" @@ -22470,6 +33812,48 @@ type UnlabeledEvent implements Node { labelable: Labelable! } +"""Autogenerated input type of UnlinkProjectV2FromRepository""" +input UnlinkProjectV2FromRepositoryInput { + """The ID of the project to unlink from the repository.""" + projectId: ID! + + """The ID of the repository to unlink from the project.""" + repositoryId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The ID of the project to unlink from the team.""" + projectId: ID! + + """The ID of the team to unlink from the project.""" + teamId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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""" input UnlinkRepositoryFromProjectInput { """The ID of the Project linked to the Repository.""" @@ -22528,6 +33912,24 @@ type UnlockLockablePayload { unlockedRecord: Lockable } +"""Autogenerated input type of UnmarkDiscussionCommentAsAnswer""" +input UnmarkDiscussionCommentAsAnswerInput { + """The Node ID of the discussion comment to unmark as an answer.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + """ Represents an 'unmarked_as_duplicate' event on a given issue or pull request. """ @@ -22615,6 +34017,24 @@ type UnminimizeCommentPayload { unminimizedComment: Minimizable } +"""Autogenerated input type of UnpinIssue""" +input UnpinIssueInput { + """The ID of the issue to be unpinned""" + issueId: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UnpinIssue""" +type UnpinIssuePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The issue that was unpinned""" + issue: Issue +} + """Represents an 'unpinned' event on a given issue or pull request.""" type UnpinnedEvent implements Node { """Identifies the actor who performed the event.""" @@ -22691,6 +34111,9 @@ input UpdateBranchProtectionRuleInput { """Are merge commits prohibited from being pushed to this branch.""" requiresLinearHistory: Boolean + """Is branch creation a protected operation.""" + blocksCreations: Boolean + """Are force pushes allowed on this branch.""" allowsForcePushes: Boolean @@ -22718,14 +34141,24 @@ 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!] + """ + A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. + """ + bypassPullRequestActorIds: [ID!] + + """ + A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. + """ + bypassForcePushActorIds: [ID!] + """Is pushing to matching branches restricted.""" restrictsPushes: Boolean - """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!] """ @@ -22733,6 +34166,34 @@ input UpdateBranchProtectionRuleInput { """ requiredStatusCheckContexts: [String!] + """The list of required status checks""" + requiredStatusChecks: [RequiredStatusCheckInput!] + + """Are successful deployments required before merging.""" + requiresDeployments: Boolean + + """The list of required deployment environments""" + requiredDeploymentEnvironments: [String!] + + """Are conversations required to be resolved before merging.""" + requiresConversationResolution: Boolean + + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: 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 + + """ + 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 + """A unique identifier for the client performing the mutation.""" clientMutationId: String } @@ -22819,6 +34280,56 @@ type UpdateCheckSuitePreferencesPayload { repository: Repository } +"""Autogenerated input type of UpdateDiscussionComment""" +input UpdateDiscussionCommentInput { + """The Node ID of the discussion comment to update.""" + commentId: ID! + + """The new contents of the comment body.""" + body: String! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdateDiscussionComment""" +type UpdateDiscussionCommentPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The modified discussion comment.""" + comment: DiscussionComment +} + +"""Autogenerated input type of UpdateDiscussion""" +input UpdateDiscussionInput { + """The Node ID of the discussion to update.""" + discussionId: ID! + + """The new discussion title.""" + title: String + + """The new contents of the discussion body.""" + body: String + + """ + The Node ID of a discussion category within the same repository to change this discussion to. + """ + categoryId: ID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdateDiscussion""" +type UpdateDiscussionPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The modified discussion.""" + discussion: Discussion +} + """Autogenerated input type of UpdateEnterpriseAdministratorRole""" input UpdateEnterpriseAdministratorRoleInput { """The ID of the Enterprise which the admin belongs to.""" @@ -22857,6 +34368,11 @@ input UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput { """ settingValue: EnterpriseEnabledDisabledSettingValue! + """ + The value for the allow private repository forking policy on the enterprise. + """ + policyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue + """A unique identifier for the client performing the mutation.""" clientMutationId: String } @@ -22884,12 +34400,12 @@ Autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting """ input UpdateEnterpriseDefaultRepositoryPermissionSettingInput { """ - 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! """ - The value for the default repository permission setting on the enterprise. + The value for the base repository permission setting on the enterprise. """ settingValue: EnterpriseDefaultRepositoryPermissionSettingValue! @@ -22904,11 +34420,11 @@ type UpdateEnterpriseDefaultRepositoryPermissionSettingPayload { """A unique identifier for the client performing the mutation.""" 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 } @@ -23248,6 +34764,32 @@ type UpdateEnterpriseOrganizationProjectsSettingPayload { message: String } +"""Autogenerated input type of UpdateEnterpriseOwnerOrganizationRole""" +input UpdateEnterpriseOwnerOrganizationRoleInput { + """The ID of the Enterprise which the owner belongs to.""" + enterpriseId: ID! + + """The ID of the organization for membership change.""" + organizationId: ID! + + """The role to assume in the organization.""" + organizationRole: RoleInOrganization! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdateEnterpriseOwnerOrganizationRole""" +type UpdateEnterpriseOwnerOrganizationRolePayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """ + A message confirming the result of changing the owner's organization role. + """ + message: String +} + """Autogenerated input type of UpdateEnterpriseProfile""" input UpdateEnterpriseProfileInput { """The Enterprise ID to update.""" @@ -23362,10 +34904,36 @@ type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload { """ enterprise: Enterprise - """ - A message confirming the result of updating the two factor authentication required setting. - """ - message: String + """ + A message confirming the result of updating the two factor authentication required setting. + """ + message: String +} + +"""Autogenerated input type of UpdateEnvironment""" +input UpdateEnvironmentInput { + """The node ID of the environment.""" + environmentId: ID! + + """The wait timer in minutes.""" + waitTimer: Int + + """ + The ids of users or teams that can approve deployments to this environment + """ + reviewers: [ID!] + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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""" @@ -23418,6 +34986,33 @@ type UpdateIpAllowListEntryPayload { ipAllowListEntry: IpAllowListEntry } +""" +Autogenerated input type of UpdateIpAllowListForInstalledAppsEnabledSetting +""" +input UpdateIpAllowListForInstalledAppsEnabledSettingInput { + """The ID of the owner.""" + ownerId: ID! + + """ + The value for the IP allow list configuration for installed GitHub Apps setting. + """ + settingValue: IpAllowListForInstalledAppsEnabledSettingValue! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +""" +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""" input UpdateIssueCommentInput { """The ID of the IssueComment to modify.""" @@ -23481,6 +35076,105 @@ type UpdateIssuePayload { issue: Issue } +"""Autogenerated input type of UpdateNotificationRestrictionSetting""" +input UpdateNotificationRestrictionSettingInput { + """ + The ID of the owner on which to set the restrict notifications setting. + """ + ownerId: ID! + + """The value for the restrict notifications setting.""" + settingValue: NotificationRestrictionSettingValue! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """ + The ID of the organization on which to set the allow private repository forking setting. + """ + organizationId: ID! + + """Enable forking of private repositories in the organization?""" + forkingEnabled: Boolean! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +""" +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 { + """ + The ID of the organization on which to set the web commit signoff setting. + """ + organizationId: ID! + + """ + Enable signoff on web-based commits for repositories in the organization? + """ + webCommitSignoffRequired: Boolean! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 +} + +"""Parameters to be used for the update rule""" +type UpdateParameters { + """Branch can pull changes from its upstream repository""" + updateAllowsFetchAndMerge: Boolean! +} + +"""Parameters to be used for the update rule""" +input UpdateParametersInput { + """Branch can pull changes from its upstream repository""" + updateAllowsFetchAndMerge: Boolean! +} + """Autogenerated input type of UpdateProjectCard""" input UpdateProjectCardInput { """The ProjectCard ID to update.""" @@ -23556,6 +35250,154 @@ type UpdateProjectPayload { project: Project } +"""Autogenerated input type of UpdateProjectV2DraftIssue""" +input UpdateProjectV2DraftIssueInput { + """The ID of the draft issue to update.""" + draftIssueId: ID! + + """The title of the draft issue.""" + title: String + + """The body of the draft issue.""" + body: String + + """The IDs of the assignees of the draft issue.""" + assigneeIds: [ID!] + + """A unique identifier for the client performing the mutation.""" + clientMutationId: 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 { + """The ID of the Project to update.""" + projectId: ID! + + """Set the title of the project.""" + title: String + + """Set the short description of the project.""" + shortDescription: String + + """Set the readme description of the project.""" + readme: String + + """Set the project to closed or open.""" + closed: Boolean + + """Set the project to public or private.""" + public: Boolean + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated input type of UpdateProjectV2ItemFieldValue""" +input UpdateProjectV2ItemFieldValueInput { + """The ID of the Project.""" + projectId: ID! + + """The ID of the item to be updated.""" + itemId: ID! + + """The ID of the field to be updated.""" + fieldId: ID! + + """The value which will be set on the field.""" + value: ProjectV2FieldValue! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 Project.""" + projectId: ID! + + """The ID of the item to be moved.""" + itemId: ID! + + """ + 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 + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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 { + """The Node ID of the pull request.""" + pullRequestId: ID! + + """The head ref oid for the upstream branch.""" + expectedHeadOid: GitObjectID + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdatePullRequestBranch""" +type UpdatePullRequestBranchPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The updated pull request.""" + pullRequest: PullRequest +} + """Autogenerated input type of UpdatePullRequest""" input UpdatePullRequestInput { """The Node ID of the pull request.""" @@ -23665,61 +35507,179 @@ input UpdateRefInput { clientMutationId: String } -"""Autogenerated return type of UpdateRef""" -type UpdateRefPayload { +"""Autogenerated return type of UpdateRef""" +type UpdateRefPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The updated Ref.""" + ref: Ref +} + +"""Autogenerated input type of UpdateRepository""" +input UpdateRepositoryInput { + """The ID of the repository to update.""" + repositoryId: ID! + + """The new name of the repository.""" + name: String + + """ + A new description for the repository. Pass an empty string to erase the existing description. + """ + description: String + + """ + Whether this repository should be marked as a template such that anyone who + can access it can create new repositories with the same files and directory structure. + """ + template: Boolean + + """ + The URL for a web page about this repository. Pass an empty string to erase the existing URL. + """ + homepageUrl: URI + + """Indicates if the repository should have the wiki feature enabled.""" + hasWikiEnabled: Boolean + + """Indicates if the repository should have the issues feature enabled.""" + hasIssuesEnabled: Boolean + + """ + Indicates if the repository should have the project boards feature enabled. + """ + hasProjectsEnabled: Boolean + + """ + Indicates if the repository should have the discussions feature enabled. + """ + hasDiscussionsEnabled: Boolean + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdateRepository""" +type UpdateRepositoryPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String + + """The updated repository.""" + repository: Repository +} + +"""Autogenerated input type of UpdateRepositoryRuleset""" +input UpdateRepositoryRulesetInput { + """The global relay id of the repository ruleset to be updated.""" + repositoryRulesetId: ID! + + """The name of the ruleset.""" + name: String + + """The target of the ruleset.""" + target: RepositoryRulesetTarget + + """The list of rules for this ruleset""" + rules: [RepositoryRuleInput!] + + """The list of conditions for this ruleset""" + conditions: RepositoryRuleConditionsInput + + """The enforcement level for this ruleset""" + enforcement: RuleEnforcement + + """The bypass mode for this ruleset""" + bypassMode: RuleBypassMode + + """A list of Team or App IDs allowed to bypass rules in this ruleset.""" + bypassActorIds: [ID!] + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdateRepositoryRuleset""" +type UpdateRepositoryRulesetPayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String - """The updated Ref.""" - ref: Ref + """The newly created Ruleset.""" + ruleset: RepositoryRuleset } -"""Autogenerated input type of UpdateRepository""" -input UpdateRepositoryInput { +"""Autogenerated input type of UpdateRepositoryWebCommitSignoffSetting""" +input UpdateRepositoryWebCommitSignoffSettingInput { """The ID of the repository to update.""" repositoryId: ID! - """The new name of the repository.""" - name: String + """ + Indicates if the repository should require signoff on web-based commits. + """ + webCommitSignoffRequired: Boolean! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""Autogenerated return type of UpdateRepositoryWebCommitSignoffSetting""" +type UpdateRepositoryWebCommitSignoffSettingPayload { + """A unique identifier for the client performing the mutation.""" + clientMutationId: String """ - A new description for the repository. Pass an empty string to erase the existing description. + A message confirming the result of updating the web commit signoff setting. """ - description: String + message: String + + """The updated repository.""" + repository: Repository +} +"""Autogenerated input type of UpdateSponsorshipPreferences""" +input UpdateSponsorshipPreferencesInput { """ - Whether this repository should be marked as a template such that anyone who - can access it can create new repositories with the same files and directory structure. + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. """ - template: Boolean + sponsorId: ID """ - The URL for a web page about this repository. Pass an empty string to erase the existing URL. + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. """ - homepageUrl: URI + sponsorLogin: String - """Indicates if the repository should have the wiki feature enabled.""" - hasWikiEnabled: Boolean + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID - """Indicates if the repository should have the issues feature enabled.""" - hasIssuesEnabled: Boolean + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String + + """Whether the sponsor should receive email updates from the sponsorable.""" + receiveEmails: Boolean = true """ - Indicates if the repository should have the project boards feature enabled. + 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. """ - hasProjectsEnabled: Boolean + privacyLevel: SponsorshipPrivacy = PUBLIC """A unique identifier for the client performing the mutation.""" clientMutationId: String } -"""Autogenerated return type of UpdateRepository""" -type UpdateRepositoryPayload { +"""Autogenerated return type of UpdateSponsorshipPreferences""" +type UpdateSponsorshipPreferencesPayload { """A unique identifier for the client performing the mutation.""" clientMutationId: String - """The updated repository.""" - repository: Repository + """The sponsorship that was updated.""" + sponsorship: Sponsorship } """Autogenerated input type of UpdateSubscription""" @@ -23800,6 +35760,33 @@ type UpdateTeamDiscussionPayload { teamDiscussion: TeamDiscussion } +"""Autogenerated input type of UpdateTeamsRepository""" +input UpdateTeamsRepositoryInput { + """Repository ID being granted access to.""" + repositoryId: ID! + + """A list of teams being granted access. Limit: 10""" + teamIds: [ID!]! + + """Permission that should be granted to the teams.""" + permission: RepositoryPermission! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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""" input UpdateTopicsInput { """The Node ID of the repository.""" @@ -23830,7 +35817,7 @@ scalar URI """ A user is an individual's account on GitHub that owns repositories and can make new content. """ -type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwner & UniformResourceLocatable & ProfileOwner & Sponsorable { +type User implements Node & Actor & PackageOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & UniformResourceLocatable & ProfileOwner & Sponsorable { """ Determine if this repository owner has any items that can be pinned to their profile. """ @@ -23851,6 +35838,14 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """The user's public profile bio as HTML.""" 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.""" commitComments( """Returns the elements in the list that come after the specified cursor.""" @@ -23887,8 +35882,9 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne from: DateTime """ - 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! @@ -23902,6 +35898,11 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """The user's publicly visible profile email.""" email: String! + """ + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). + """ + estimatedNextSponsorsPayoutInCents: Int! + """A list of users the given user is followed by.""" followers( """Returns the elements in the list that come after the specified cursor.""" @@ -24011,12 +36012,26 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """Whether or not this user is a GitHub employee.""" isEmployee: Boolean! + """ + Whether or not this user is following the viewer. Inverse of viewer_is_following + """ + isFollowingViewer: Boolean! + + """Whether or not this user is a member of the GitHub Stars Program.""" + isGitHubStar: Boolean! + """Whether or not the user has marked themselves as for hire.""" isHireable: Boolean! """Whether or not this user is a site administrator.""" 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! @@ -24084,6 +36099,11 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """The username used to login.""" login: String! + """ + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). + """ + monthlyEstimatedSponsorsIncomeInCents: Int! + """The user's public profile name.""" name: String @@ -24103,6 +36123,9 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """A list of organizations the user belongs to.""" organizations( + """Ordering options for the User's organizations.""" + orderBy: OrganizationOrder = null + """Returns the elements in the list that come after the specified cursor.""" after: String @@ -24202,6 +36225,12 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne number: Int! ): Project + """Find a project by number.""" + projectV2( + """The project number.""" + number: Int! + ): ProjectV2 + """A list of projects under the owner.""" projects( """Ordering options for projects returned from the connection""" @@ -24234,6 +36263,32 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """The HTTP URL listing user's projects""" projectsUrl: URI! + """A list of projects under the owner.""" + projectsV2( + """A project to search for under the the owner.""" + query: String + + """How to order the returned projects.""" + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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 user's profile pronouns""" + pronouns: String + """A list of public keys associated with this user.""" publicKeys( """Returns the elements in the list that come after the specified cursor.""" @@ -24283,6 +36338,25 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne last: Int ): 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.""" repositories( """If non-null, filters repositories according to privacy""" @@ -24347,11 +36421,186 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne includeUserRepositories: Boolean """ - If non-null, include only the specified types of contributions. The - GitHub.com UI uses [COMMIT, ISSUE, PULL_REQUEST, REPOSITORY] + If non-null, include only the specified types of contributions. The + GitHub.com UI uses [COMMIT, ISSUE, PULL_REQUEST, REPOSITORY] + """ + contributionTypes: [RepositoryContributionType] + + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): RepositoryConnection! + + """Find Repository.""" + repository( + """Name of Repository to find.""" + name: String! + + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + ): 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 in a specific repository.""" + repositoryId: ID + + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + ): DiscussionCommentConnection! + + """Discussions this user has started.""" + repositoryDiscussions( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the 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 + + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null + + """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.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. """ - contributionTypes: [RepositoryContributionType] + tierId: ID + + """Ordering options for sponsors returned from the connection.""" + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! + """Events involving this sponsorable, such as new sponsorships.""" + sponsorsActivities( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -24365,19 +36614,61 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """Returns the last _n_ elements from the list.""" last: Int - ): RepositoryConnection! - """Find Repository.""" - repository( - """Name of Repository to find.""" - name: String! - ): Repository + """ + 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 - """The HTTP path for this user""" - resourcePath: URI! + """Filter activities to those that occurred on or after this time.""" + since: DateTime - """Replies this user has saved""" - savedReplies( + """Filter activities to those that occurred before this time.""" + until: DateTime + + """Ordering options for activity returned from the connection.""" + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} + + """Filter activities to only the specified actions.""" + actions: [SponsorsActivityAction!] = [] + + """ + 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 + ): SponsorsActivityConnection! + + """The GitHub Sponsors listing for this user or organization.""" + sponsorsListing: SponsorsListing + + """ + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. + """ + sponsorshipForViewerAsSponsor( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship + + """ + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. + """ + 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 + + """List of sponsorship updates sent from this sponsorable to sponsors.""" + sponsorshipNewsletters( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -24392,14 +36683,13 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """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 GitHub Sponsors listing for this user or organization.""" - sponsorsListing: SponsorsListing + """Ordering options for sponsorship updates returned from the connection.""" + 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( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -24423,9 +36713,15 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne blank, the sponsorships will be ordered based on relevancy to the viewer. """ orderBy: SponsorshipOrder + + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true ): SponsorshipConnection! - """This object's sponsorships as the sponsor.""" + """The sponsorships where this user or organization is the funder.""" sponsorshipsAsSponsor( """Returns the elements in the list that come after the specified cursor.""" after: String @@ -24446,6 +36742,18 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne blank, the sponsorships will be ordered based on relevancy to the viewer. """ orderBy: SponsorshipOrder + + """ + 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!] + + """ + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. + """ + activeOnly: Boolean = true ): SponsorshipConnection! """Repositories the user has starred.""" @@ -24502,6 +36810,24 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne 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 that occurred before this time.""" + until: DateTime + + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] + ): Int + """The user's Twitter username.""" twitterUsername: String @@ -24523,7 +36849,9 @@ type User implements Node & Actor & PackageOwner & ProjectOwner & RepositoryOwne """Whether or not the viewer is able to sponsor this user/organization.""" viewerCanSponsor: Boolean! - """Whether or not this user is followed by the viewer.""" + """ + Whether or not this user is followed by the viewer. Inverse of is_following_viewer. + """ viewerIsFollowing: Boolean! """True if the viewer is sponsoring this user/organization.""" @@ -24707,8 +37035,6 @@ type UserStatus implements Node { """If set, the status will not be shown after this date.""" expiresAt: DateTime - - """ID of the object.""" id: ID! """ @@ -24770,6 +37096,123 @@ 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 field to order verifiable domains by.""" + field: VerifiableDomainOrderField! + + """The ordering direction.""" + direction: OrderDirection! +} + +"""Properties by which verifiable domain connections can be ordered.""" +enum VerifiableDomainOrderField { + """Order verifiable domains by the domain name.""" + DOMAIN + + """Order verifiable domains by their creation date.""" + CREATED_AT +} + +"""Types that can own a verifiable domain.""" +union VerifiableDomainOwner = Enterprise | Organization + +"""Autogenerated input type of VerifyVerifiableDomain""" +input VerifyVerifiableDomainInput { + """The ID of the verifiable domain to verify.""" + id: ID! + + """A unique identifier for the client performing the mutation.""" + clientMutationId: String +} + +"""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. """ @@ -24784,5 +37227,188 @@ 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! + id: ID! + + """The pending deployment requests of all check runs in this workflow run""" + pendingDeploymentRequests( + """Returns the elements in the list that come after the specified cursor.""" + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """Returns the first _n_ elements from the list.""" + first: Int + + """Returns the last _n_ elements from the list.""" + last: Int + ): DeploymentRequestConnection! + + """The HTTP path for this workflow run""" + resourcePath: URI! + + """ + A number that uniquely identifies this workflow run in its parent workflow. + """ + runNumber: Int! + + """Identifies the date and time when the object was last updated.""" + updatedAt: DateTime! + + """The HTTP URL for this workflow run""" + url: URI! + + """The workflow executed in this workflow run.""" + workflow: Workflow! +} + +"""The connection type for WorkflowRun.""" +type WorkflowRunConnection { + """A list of edges.""" + edges: [WorkflowRunEdge] + + """A list of nodes.""" + nodes: [WorkflowRun] + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """Identifies the total count of items in the connection.""" + totalCount: Int! +} + +"""An edge in a connection.""" +type WorkflowRunEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of the edge.""" + node: WorkflowRun +} + +"""Ways in which lists of workflow runs can be ordered upon return.""" +input WorkflowRunOrder { + """The field by which to order workflows.""" + field: WorkflowRunOrderField! + + """The direction in which to order workflow runs by the specified field.""" + direction: OrderDirection! +} + +"""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